{
  "contractName": "MultiPartyInsurableFees",
  "abi": [
    {
      "constant": true,
      "inputs": [],
      "name": "arbitratorExtraData",
      "outputs": [
        {
          "name": "",
          "type": "bytes"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "name": "paidFees",
      "outputs": [
        {
          "name": "firstContributionTime",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_disputeID",
          "type": "uint256"
        },
        {
          "name": "_ruling",
          "type": "uint256"
        }
      ],
      "name": "rule",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "stake",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "feeGovernor",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "arbitrator",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "fundDisputeCache",
      "outputs": [
        {
          "name": "cost",
          "type": "uint256"
        },
        {
          "name": "appealing",
          "type": "bool"
        },
        {
          "name": "appealPeriodStart",
          "type": "uint256"
        },
        {
          "name": "appealPeriodEnd",
          "type": "uint256"
        },
        {
          "name": "appealPeriodSupported",
          "type": "bool"
        },
        {
          "name": "requiredValueForSide",
          "type": "uint256"
        },
        {
          "name": "expectedValue",
          "type": "uint256"
        },
        {
          "name": "stillRequiredValueForSide",
          "type": "uint256"
        },
        {
          "name": "keptValue",
          "type": "uint256"
        },
        {
          "name": "refundedValue",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "name": "agreements",
      "outputs": [
        {
          "name": "creator",
          "type": "address"
        },
        {
          "name": "numberOfChoices",
          "type": "uint256"
        },
        {
          "name": "extraData",
          "type": "bytes"
        },
        {
          "name": "arbitrationFeesWaitingTime",
          "type": "uint256"
        },
        {
          "name": "arbitrator",
          "type": "address"
        },
        {
          "name": "disputeID",
          "type": "uint256"
        },
        {
          "name": "disputed",
          "type": "bool"
        },
        {
          "name": "appealed",
          "type": "bool"
        },
        {
          "name": "ruling",
          "type": "uint256"
        },
        {
          "name": "executed",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "address"
        },
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "name": "arbitratorAndDisputeIDToAgreementID",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_agreementID",
          "type": "bytes32"
        }
      ],
      "name": "getAgreementInfo",
      "outputs": [
        {
          "name": "creator",
          "type": "address"
        },
        {
          "name": "parties",
          "type": "address[]"
        },
        {
          "name": "numberOfChoices",
          "type": "uint256"
        },
        {
          "name": "extraData",
          "type": "bytes"
        },
        {
          "name": "arbitrationFeesWaitingTime",
          "type": "uint256"
        },
        {
          "name": "arbitrator",
          "type": "address"
        },
        {
          "name": "disputeID",
          "type": "uint256"
        },
        {
          "name": "disputed",
          "type": "bool"
        },
        {
          "name": "appealed",
          "type": "bool"
        },
        {
          "name": "ruling",
          "type": "uint256"
        },
        {
          "name": "executed",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "name": "_feeGovernor",
          "type": "address"
        },
        {
          "name": "_stake",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "_agreementID",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "name": "_round",
          "type": "uint256"
        },
        {
          "indexed": true,
          "name": "_contributor",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "_value",
          "type": "uint256"
        }
      ],
      "name": "Contribution",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "_agreementID",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "name": "_round",
          "type": "uint256"
        },
        {
          "indexed": true,
          "name": "_contributor",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "_value",
          "type": "uint256"
        }
      ],
      "name": "RewardWithdrawal",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "_metaEvidenceID",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "_evidence",
          "type": "string"
        }
      ],
      "name": "MetaEvidence",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "_arbitrator",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "_disputeID",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "_metaEvidenceID",
          "type": "uint256"
        }
      ],
      "name": "Dispute",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "_arbitrator",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "_disputeID",
          "type": "uint256"
        },
        {
          "indexed": true,
          "name": "_party",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "_evidence",
          "type": "string"
        }
      ],
      "name": "Evidence",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "_arbitrator",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "_disputeID",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "_ruling",
          "type": "uint256"
        }
      ],
      "name": "Ruling",
      "type": "event"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_feeGovernor",
          "type": "address"
        }
      ],
      "name": "changeFeeGovernor",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_stake",
          "type": "uint256"
        }
      ],
      "name": "changeStake",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_agreementID",
          "type": "bytes32"
        },
        {
          "name": "_side",
          "type": "uint256"
        }
      ],
      "name": "fundDispute",
      "outputs": [],
      "payable": true,
      "stateMutability": "payable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_agreementID",
          "type": "bytes32"
        },
        {
          "name": "_round",
          "type": "uint256"
        }
      ],
      "name": "withdrawReward",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_agreementID",
          "type": "bytes32"
        }
      ],
      "name": "getFeesInfo",
      "outputs": [
        {
          "name": "ruling",
          "type": "uint256[]"
        },
        {
          "name": "_stake",
          "type": "uint256[]"
        },
        {
          "name": "totalValue",
          "type": "uint256[]"
        },
        {
          "name": "totalContributedPerSide",
          "type": "uint256[2][]"
        },
        {
          "name": "loserFullyFunded",
          "type": "bool[]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_agreementID",
          "type": "bytes32"
        },
        {
          "name": "_round",
          "type": "uint256"
        },
        {
          "name": "_contributor",
          "type": "address"
        }
      ],
      "name": "getContributions",
      "outputs": [
        {
          "name": "contributions",
          "type": "uint256[2]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "bytecode": "0x",
  "deployedBytecode": "0x",
  "sourceMap": "",
  "deployedSourceMap": "",
  "source": "pragma solidity ^0.4.24;\n\nimport \"../agreement/MultiPartyAgreements.sol\";\n\n/**\n *  @title MultiPartyInsurableFees\n *  @author Enrique Piqueras - <epiquerass@gmail.com>\n *  @dev Fee part of a composed arbitrable contract. Handles crowdinsured arbitration and appeal fees.\n */\ncontract MultiPartyInsurableFees is MultiPartyAgreements {\n    /* Structs */\n\n    struct PaidFees {\n        uint firstContributionTime; // The time the first contribution was made at.\n        uint[] ruling; // The ruling for each round.\n        uint[] stake; // The stake required for each round.\n        uint[] totalValue; // The current held value for each round.\n        uint[2][] totalContributedPerSide; // The total amount contributed per side for each round.\n        bool[] loserFullyFunded; // Wether the loser fully funded the appeal for each round.\n        mapping(address => uint[2])[] contributions; // The contributions for each round.\n    }\n    struct FundDisputeCache { // Needed to avoid stack depth error in `fundDispute()`.\n        uint cost;\n        bool appealing;\n        uint appealPeriodStart;\n        uint appealPeriodEnd;\n        bool appealPeriodSupported;\n        uint requiredValueForSide;\n        uint expectedValue;\n        uint stillRequiredValueForSide;\n        uint keptValue;\n        uint refundedValue;\n    }\n\n    /* Events */\n\n    /** @dev Emitted when a contribution is made.\n     *  @param _agreementID The ID of the agreement that the contribution was made to.\n     *  @param _round The round of the agreement that the contribution was made to.\n     *  @param _contributor The address that sent the contribution.\n     *  @param _value The value of the contribution.\n     */\n    event Contribution(bytes32 indexed _agreementID, uint indexed _round, address indexed _contributor, uint _value);\n\n    /** @dev Emitted when a contribution reward is withdrawn.\n     *  @param _agreementID The ID of the agreement that the contribution was made to.\n     *  @param _round The round of the agreement that the contribution was made to.\n     *  @param _contributor The address that sent the contribution.\n     *  @param _value The value of the reward.\n     */\n    event RewardWithdrawal(bytes32 indexed _agreementID, uint indexed _round, address indexed _contributor, uint _value);\n\n    /* Storage */\n\n    address public feeGovernor;\n    uint public stake;\n    mapping(bytes32 => PaidFees) public paidFees;\n    FundDisputeCache public fundDisputeCache;\n\n    /* Constructor */\n\n    /** @dev Constructs the `MultiPartyInsurableFees` contract.\n     *  @param _feeGovernor The governor of this contract.\n     *  @param _stake The stake parameter for sharing fees.\n     */\n    constructor(address _feeGovernor, uint _stake) public {\n        feeGovernor = _feeGovernor;\n        stake = _stake;\n    }\n\n    /* Public */\n\n    /** @dev Changes the `feeGovernor` storage variable.\n     *  @param _feeGovernor The new `feeGovernor` storage variable.\n     */\n    function changeFeeGovernor(address _feeGovernor) public {\n        require(msg.sender == feeGovernor, \"The caller is not the fee governor.\");\n        feeGovernor = _feeGovernor;\n    }\n\n    /** @dev Changes the `stake` storage variable.\n     *  @param _stake The new `stake` storage variable.\n     */\n    function changeStake(uint _stake) public {\n        require(msg.sender == feeGovernor, \"The caller is not the fee governor.\");\n        stake = _stake;\n    }\n\n    /** @dev Funds the specified side of a dispute for the specified agreement or times out the dispute if it is taking too long to fund.\n     *  @param _agreementID The ID of the agreement.\n     *  @param _side The side. 0 for the side that lost the previous round, if any, and 1 for the one that won.\n     */\n    function fundDispute(bytes32 _agreementID, uint _side) public payable {\n        Agreement storage agreement = agreements[_agreementID];\n        PaidFees storage _paidFees = paidFees[_agreementID];\n        require(agreement.creator != address(0), \"The specified agreement does not exist.\");\n        require(!agreement.executed, \"You cannot fund disputes for executed agreements.\");\n        require(\n            !agreement.disputed || agreement.arbitrator.disputeStatus(agreement.disputeID) == Arbitrator.DisputeStatus.Appealable,\n            \"The agreement is already disputed and is not appealable.\"\n        );\n        require(_side <= 1, \"There are only two sides.\");\n        require(msg.value > 0, \"The value of the contribution cannot be zero.\");\n\n        // Prepare storage for first call.\n        if (_paidFees.firstContributionTime == 0) {\n            _paidFees.firstContributionTime = now;\n            _paidFees.ruling.push(0);\n            _paidFees.stake.push(stake);\n            _paidFees.totalValue.push(0);\n            _paidFees.totalContributedPerSide.push([0, 0]);\n            _paidFees.loserFullyFunded.push(false);\n            _paidFees.contributions.length++;\n        } else { // Reset cache\n            fundDisputeCache.cost = 0;\n            fundDisputeCache.appealing = false;\n            (fundDisputeCache.appealPeriodStart, fundDisputeCache.appealPeriodEnd) = (0, 0);\n            fundDisputeCache.appealPeriodSupported = false;\n            fundDisputeCache.requiredValueForSide = 0;\n            fundDisputeCache.expectedValue = 0;\n            fundDisputeCache.stillRequiredValueForSide = 0;\n            fundDisputeCache.keptValue = 0;\n            fundDisputeCache.refundedValue = 0;\n        }\n\n        // Check time outs and requirements.\n        if (_paidFees.stake.length == 1) { // First round.\n            fundDisputeCache.cost = agreement.arbitrator.arbitrationCost(agreement.extraData);\n\n            // Arbitration fees time out.\n            if (now - _paidFees.firstContributionTime > agreement.arbitrationFeesWaitingTime) {\n                executeAgreementRuling(_agreementID, 0);\n                return;\n            }\n        } else { // Appeal.\n            fundDisputeCache.cost = agreement.arbitrator.appealCost(agreement.disputeID, agreement.extraData);\n\n            fundDisputeCache.appealing = true;\n            (fundDisputeCache.appealPeriodStart, fundDisputeCache.appealPeriodEnd) = agreement.arbitrator.appealPeriod(agreement.disputeID);\n            fundDisputeCache.appealPeriodSupported = fundDisputeCache.appealPeriodStart != 0 && fundDisputeCache.appealPeriodEnd != 0;\n            if (fundDisputeCache.appealPeriodSupported) {\n                if (now < fundDisputeCache.appealPeriodStart + ((fundDisputeCache.appealPeriodEnd - fundDisputeCache.appealPeriodStart) / 2)) // In the first half of the appeal period.\n                    require(_side == 0, \"It is the losing side's turn to fund the appeal.\");\n                else // In the second half of the appeal period.\n                    require(\n                        _side == 1 && _paidFees.loserFullyFunded[_paidFees.loserFullyFunded.length - 1],\n                        \"It is the winning side's turn to fund the appeal, only if the losing side already fully funded it.\"\n                    );\n            } else require(msg.value >= fundDisputeCache.cost, \"Fees must be paid in full if the arbitrator does not support `appealPeriod`.\");\n        }\n\n        // Compute required value.\n        if (!fundDisputeCache.appealing) // First round.\n            fundDisputeCache.requiredValueForSide = fundDisputeCache.cost / 2;\n        else { // Appeal.\n            if (!fundDisputeCache.appealPeriodSupported)\n                fundDisputeCache.requiredValueForSide = fundDisputeCache.cost;\n            else if (_side == 0) // Losing side.\n                fundDisputeCache.requiredValueForSide = fundDisputeCache.cost + (2 * _paidFees.stake[_paidFees.stake.length - 1]);\n            else { // Winning side.\n                fundDisputeCache.expectedValue = _paidFees.totalContributedPerSide[_paidFees.totalContributedPerSide.length - 1][0] - _paidFees.stake[_paidFees.stake.length - 1];\n                fundDisputeCache.requiredValueForSide = fundDisputeCache.cost > _paidFees.totalContributedPerSide[_paidFees.totalContributedPerSide.length - 1][0] + fundDisputeCache.expectedValue ? fundDisputeCache.cost - _paidFees.totalContributedPerSide[_paidFees.totalContributedPerSide.length - 1][0] : fundDisputeCache.expectedValue;\n            }\n        }\n\n        // Take contribution.\n        if (_paidFees.totalContributedPerSide[_paidFees.totalContributedPerSide.length - 1][_side] >= fundDisputeCache.requiredValueForSide)\n            fundDisputeCache.stillRequiredValueForSide = 0;\n        else \n            fundDisputeCache.stillRequiredValueForSide = fundDisputeCache.requiredValueForSide - _paidFees.totalContributedPerSide[_paidFees.totalContributedPerSide.length - 1][_side];\n        fundDisputeCache.keptValue = fundDisputeCache.stillRequiredValueForSide >= msg.value ?\n            msg.value : fundDisputeCache.stillRequiredValueForSide;\n        fundDisputeCache.refundedValue = msg.value - fundDisputeCache.keptValue;\n        if (fundDisputeCache.keptValue > 0) {\n            _paidFees.totalValue[_paidFees.totalValue.length - 1] += fundDisputeCache.keptValue;\n            _paidFees.totalContributedPerSide[_paidFees.totalContributedPerSide.length - 1][_side] += fundDisputeCache.keptValue;\n            _paidFees.contributions[_paidFees.contributions.length - 1][msg.sender][_side] += fundDisputeCache.keptValue;\n        }\n        if (fundDisputeCache.refundedValue > 0) msg.sender.transfer(fundDisputeCache.refundedValue);\n        emit Contribution(_agreementID, _paidFees.stake.length - 1, msg.sender, fundDisputeCache.keptValue);\n\n        // Check if enough funds have been gathered and act accordingly.\n        if (\n            _paidFees.totalContributedPerSide[_paidFees.totalContributedPerSide.length - 1][_side] >= fundDisputeCache.requiredValueForSide ||\n            (fundDisputeCache.appealing && !fundDisputeCache.appealPeriodSupported)\n        ) {\n            if (_side == 0 && (fundDisputeCache.appealing ? fundDisputeCache.appealPeriodSupported : _paidFees.totalContributedPerSide[_paidFees.totalContributedPerSide.length - 1][1] < fundDisputeCache.requiredValueForSide)) { // Losing side and not direct appeal or dispute raise.\n                if (!_paidFees.loserFullyFunded[_paidFees.loserFullyFunded.length - 1])\n                    _paidFees.loserFullyFunded[_paidFees.loserFullyFunded.length - 1] = true;\n            } else { // Winning side or direct appeal.\n                if (!fundDisputeCache.appealing) { // First round.\n                    if (_paidFees.totalContributedPerSide[_paidFees.totalContributedPerSide.length - 1][_side == 0 ? 1 : 0] < fundDisputeCache.requiredValueForSide) return;\n                    agreement.disputeID = agreement.arbitrator.createDispute.value(fundDisputeCache.cost)(agreement.numberOfChoices, agreement.extraData);\n                    agreement.disputed = true;\n                    arbitratorAndDisputeIDToAgreementID[agreement.arbitrator][agreement.disputeID] = _agreementID;\n                    emit Dispute(agreement.arbitrator, agreement.disputeID, uint(_agreementID));\n                } else { // Appeal.\n                    _paidFees.ruling[_paidFees.ruling.length - 1] = agreement.arbitrator.currentRuling(agreement.disputeID);\n                    agreement.arbitrator.appeal.value(fundDisputeCache.cost)(agreement.disputeID, agreement.extraData);\n                    if (!agreement.appealed) agreement.appealed = true;\n                }\n\n                // Update the total value.\n                _paidFees.totalValue[_paidFees.totalValue.length - 1] -= fundDisputeCache.cost;\n\n                // Prepare for the next round.\n                _paidFees.ruling.push(0);\n                _paidFees.stake.push(stake);\n                _paidFees.totalValue.push(0);\n                _paidFees.totalContributedPerSide.push([0, 0]);\n                _paidFees.loserFullyFunded.push(false);\n                _paidFees.contributions.length++;\n            }\n        }\n    }\n\n    /** @dev Withdraws the caller's reward for funding the specified round of the specified agreement.\n     *  @param _agreementID The ID of the agreement.\n     *  @param _round The round.\n     */\n    function withdrawReward(bytes32 _agreementID, uint _round) public {\n        Agreement storage agreement = agreements[_agreementID];\n        PaidFees storage _paidFees = paidFees[_agreementID];\n        require(agreement.creator != address(0), \"The specified agreement does not exist.\");\n        require(\n            !agreement.disputed || agreement.arbitrator.disputeStatus(agreement.disputeID) == Arbitrator.DisputeStatus.Solved,\n            \"The agreement is still disputed.\"\n        );\n        require(_round < _paidFees.stake.length, \"The specified round of the specified agreement does not exist.\");\n\n        uint _reward;\n        if (_round == 0 || _round == _paidFees.stake.length - 1) { // First or last round.\n            require(_round != 0 || !agreement.disputed, \"There is nothing to withdraw from the first round if the dispute was raised.\");\n            _reward = _paidFees.contributions[_round][msg.sender][0] + _paidFees.contributions[_round][msg.sender][1];\n        } else { // Appeal.\n            uint _winningSide = _paidFees.ruling[_round] != agreement.ruling ? 0 : 1;\n            _reward = _paidFees.totalContributedPerSide[_round][_winningSide] == 0 ? 0 : ((_paidFees.totalValue[_round] * _paidFees.contributions[_round][msg.sender][_winningSide]) / _paidFees.totalContributedPerSide[_round][_winningSide]);\n        }\n\n        _paidFees.contributions[_round][msg.sender] = [0, 0];\n        msg.sender.transfer(_reward);\n        emit RewardWithdrawal(_agreementID, _round, msg.sender, _reward);\n    }\n\n    /* External Views */\n\n    /** @dev Gets the info on fees paid for the specified agreement.\n     *  @param _agreementID The ID of the agreement.\n     *  @return The info.\n     */\n    function getFeesInfo(\n        bytes32 _agreementID\n    ) external view returns(\n        uint[] ruling,\n        uint[] _stake,\n        uint[] totalValue,\n        uint[2][] totalContributedPerSide,\n        bool[] loserFullyFunded\n    ) {\n        PaidFees storage _paidFees = paidFees[_agreementID];\n        ruling = _paidFees.ruling;\n        _stake = _paidFees.stake;\n        totalValue = _paidFees.totalValue;\n        totalContributedPerSide = _paidFees.totalContributedPerSide;\n        loserFullyFunded = _paidFees.loserFullyFunded;\n    }\n\n    /** @dev Gets the contributions by the specified contributor in the specified round of the specified agreement.\n     *  @param _agreementID The ID of the agreement.\n     *  @param _round The round.\n     *  @param _contributor The address of the contributor.\n     *  @return The contributions.\n     */\n    function getContributions(bytes32 _agreementID, uint _round, address _contributor) external view returns(uint[2] contributions) {\n        contributions = paidFees[_agreementID].contributions[_round][_contributor];\n    }\n}\n",
  "sourcePath": "/private/tmp/kleros-interaction/contracts/standard/arbitration/composed-arbitrable/fee/MultiPartyInsurableFees.sol",
  "ast": {
    "absolutePath": "/private/tmp/kleros-interaction/contracts/standard/arbitration/composed-arbitrable/fee/MultiPartyInsurableFees.sol",
    "exportedSymbols": {
      "MultiPartyInsurableFees": [
        13089
      ]
    },
    "id": 13090,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 11871,
        "literals": [
          "solidity",
          "^",
          "0.4",
          ".24"
        ],
        "nodeType": "PragmaDirective",
        "src": "0:24:39"
      },
      {
        "absolutePath": "/private/tmp/kleros-interaction/contracts/standard/arbitration/composed-arbitrable/agreement/MultiPartyAgreements.sol",
        "file": "../agreement/MultiPartyAgreements.sol",
        "id": 11872,
        "nodeType": "ImportDirective",
        "scope": 13090,
        "sourceUnit": 11023,
        "src": "26:47:39",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 11873,
              "name": "MultiPartyAgreements",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 11022,
              "src": "311:20:39",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_MultiPartyAgreements_$11022",
                "typeString": "contract MultiPartyAgreements"
              }
            },
            "id": 11874,
            "nodeType": "InheritanceSpecifier",
            "src": "311:20:39"
          }
        ],
        "contractDependencies": [
          595,
          11022
        ],
        "contractKind": "contract",
        "documentation": " @title MultiPartyInsurableFees\n @author Enrique Piqueras - <epiquerass@gmail.com>\n @dev Fee part of a composed arbitrable contract. Handles crowdinsured arbitration and appeal fees.",
        "fullyImplemented": false,
        "id": 13089,
        "linearizedBaseContracts": [
          13089,
          11022,
          595
        ],
        "name": "MultiPartyInsurableFees",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "canonicalName": "MultiPartyInsurableFees.PaidFees",
            "id": 11901,
            "members": [
              {
                "constant": false,
                "id": 11876,
                "name": "firstContributionTime",
                "nodeType": "VariableDeclaration",
                "scope": 11901,
                "src": "383:26:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11875,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "383:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11879,
                "name": "ruling",
                "nodeType": "VariableDeclaration",
                "scope": 11901,
                "src": "467:13:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                  "typeString": "uint256[]"
                },
                "typeName": {
                  "baseType": {
                    "id": 11877,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "467:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11878,
                  "length": null,
                  "nodeType": "ArrayTypeName",
                  "src": "467:6:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                    "typeString": "uint256[]"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11882,
                "name": "stake",
                "nodeType": "VariableDeclaration",
                "scope": 11901,
                "src": "520:12:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                  "typeString": "uint256[]"
                },
                "typeName": {
                  "baseType": {
                    "id": 11880,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "520:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11881,
                  "length": null,
                  "nodeType": "ArrayTypeName",
                  "src": "520:6:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                    "typeString": "uint256[]"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11885,
                "name": "totalValue",
                "nodeType": "VariableDeclaration",
                "scope": 11901,
                "src": "580:17:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                  "typeString": "uint256[]"
                },
                "typeName": {
                  "baseType": {
                    "id": 11883,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "580:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11884,
                  "length": null,
                  "nodeType": "ArrayTypeName",
                  "src": "580:6:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                    "typeString": "uint256[]"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11890,
                "name": "totalContributedPerSide",
                "nodeType": "VariableDeclaration",
                "scope": 11901,
                "src": "649:33:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage_ptr",
                  "typeString": "uint256[2][]"
                },
                "typeName": {
                  "baseType": {
                    "baseType": {
                      "id": 11886,
                      "name": "uint",
                      "nodeType": "ElementaryTypeName",
                      "src": "649:4:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 11888,
                    "length": {
                      "argumentTypes": null,
                      "hexValue": "32",
                      "id": 11887,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "654:1:39",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": null,
                        "typeString": null
                      },
                      "value": "2"
                    },
                    "nodeType": "ArrayTypeName",
                    "src": "649:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$2_storage_ptr",
                      "typeString": "uint256[2]"
                    }
                  },
                  "id": 11889,
                  "length": null,
                  "nodeType": "ArrayTypeName",
                  "src": "649:9:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage_ptr",
                    "typeString": "uint256[2][]"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11893,
                "name": "loserFullyFunded",
                "nodeType": "VariableDeclaration",
                "scope": 11901,
                "src": "749:23:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_array$_t_bool_$dyn_storage_ptr",
                  "typeString": "bool[]"
                },
                "typeName": {
                  "baseType": {
                    "id": 11891,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "749:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11892,
                  "length": null,
                  "nodeType": "ArrayTypeName",
                  "src": "749:6:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bool_$dyn_storage_ptr",
                    "typeString": "bool[]"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11900,
                "name": "contributions",
                "nodeType": "VariableDeclaration",
                "scope": 11901,
                "src": "842:43:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage_ptr",
                  "typeString": "mapping(address => uint256[2])[]"
                },
                "typeName": {
                  "baseType": {
                    "id": 11898,
                    "keyType": {
                      "id": 11894,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "850:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "Mapping",
                    "src": "842:27:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$",
                      "typeString": "mapping(address => uint256[2])"
                    },
                    "valueType": {
                      "baseType": {
                        "id": 11895,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "861:4:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "id": 11897,
                      "length": {
                        "argumentTypes": null,
                        "hexValue": "32",
                        "id": 11896,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "866:1:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": null,
                          "typeString": null
                        },
                        "value": "2"
                      },
                      "nodeType": "ArrayTypeName",
                      "src": "861:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$2_storage_ptr",
                        "typeString": "uint256[2]"
                      }
                    }
                  },
                  "id": 11899,
                  "length": null,
                  "nodeType": "ArrayTypeName",
                  "src": "842:29:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage_ptr",
                    "typeString": "mapping(address => uint256[2])[]"
                  }
                },
                "value": null,
                "visibility": "internal"
              }
            ],
            "name": "PaidFees",
            "nodeType": "StructDefinition",
            "scope": 13089,
            "src": "357:572:39",
            "visibility": "public"
          },
          {
            "canonicalName": "MultiPartyInsurableFees.FundDisputeCache",
            "id": 11922,
            "members": [
              {
                "constant": false,
                "id": 11903,
                "name": "cost",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1025:9:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11902,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "1025:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11905,
                "name": "appealing",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1044:14:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                },
                "typeName": {
                  "id": 11904,
                  "name": "bool",
                  "nodeType": "ElementaryTypeName",
                  "src": "1044:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11907,
                "name": "appealPeriodStart",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1068:22:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11906,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "1068:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11909,
                "name": "appealPeriodEnd",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1100:20:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11908,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "1100:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11911,
                "name": "appealPeriodSupported",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1130:26:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                },
                "typeName": {
                  "id": 11910,
                  "name": "bool",
                  "nodeType": "ElementaryTypeName",
                  "src": "1130:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11913,
                "name": "requiredValueForSide",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1166:25:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11912,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "1166:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11915,
                "name": "expectedValue",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1201:18:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11914,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "1201:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11917,
                "name": "stillRequiredValueForSide",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1229:30:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11916,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "1229:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11919,
                "name": "keptValue",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1269:14:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11918,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "1269:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11921,
                "name": "refundedValue",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1293:18:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11920,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "1293:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              }
            ],
            "name": "FundDisputeCache",
            "nodeType": "StructDefinition",
            "scope": 13089,
            "src": "934:384:39",
            "visibility": "public"
          },
          {
            "anonymous": false,
            "documentation": "@dev Emitted when a contribution is made.\n @param _agreementID The ID of the agreement that the contribution was made to.\n @param _round The round of the agreement that the contribution was made to.\n @param _contributor The address that sent the contribution.\n @param _value The value of the contribution.",
            "id": 11932,
            "name": "Contribution",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 11931,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11924,
                  "indexed": true,
                  "name": "_agreementID",
                  "nodeType": "VariableDeclaration",
                  "scope": 11932,
                  "src": "1711:28:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 11923,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1711:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11926,
                  "indexed": true,
                  "name": "_round",
                  "nodeType": "VariableDeclaration",
                  "scope": 11932,
                  "src": "1741:19:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11925,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "1741:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11928,
                  "indexed": true,
                  "name": "_contributor",
                  "nodeType": "VariableDeclaration",
                  "scope": 11932,
                  "src": "1762:28:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 11927,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1762:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11930,
                  "indexed": false,
                  "name": "_value",
                  "nodeType": "VariableDeclaration",
                  "scope": 11932,
                  "src": "1792:11:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11929,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "1792:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1710:94:39"
            },
            "src": "1692:113:39"
          },
          {
            "anonymous": false,
            "documentation": "@dev Emitted when a contribution reward is withdrawn.\n @param _agreementID The ID of the agreement that the contribution was made to.\n @param _round The round of the agreement that the contribution was made to.\n @param _contributor The address that sent the contribution.\n @param _value The value of the reward.",
            "id": 11942,
            "name": "RewardWithdrawal",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 11941,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11934,
                  "indexed": true,
                  "name": "_agreementID",
                  "nodeType": "VariableDeclaration",
                  "scope": 11942,
                  "src": "2190:28:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 11933,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2190:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11936,
                  "indexed": true,
                  "name": "_round",
                  "nodeType": "VariableDeclaration",
                  "scope": 11942,
                  "src": "2220:19:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11935,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "2220:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11938,
                  "indexed": true,
                  "name": "_contributor",
                  "nodeType": "VariableDeclaration",
                  "scope": 11942,
                  "src": "2241:28:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 11937,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2241:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11940,
                  "indexed": false,
                  "name": "_value",
                  "nodeType": "VariableDeclaration",
                  "scope": 11942,
                  "src": "2271:11:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11939,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "2271:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2189:94:39"
            },
            "src": "2167:117:39"
          },
          {
            "constant": false,
            "id": 11944,
            "name": "feeGovernor",
            "nodeType": "VariableDeclaration",
            "scope": 13089,
            "src": "2309:26:39",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_address",
              "typeString": "address"
            },
            "typeName": {
              "id": 11943,
              "name": "address",
              "nodeType": "ElementaryTypeName",
              "src": "2309:7:39",
              "typeDescriptions": {
                "typeIdentifier": "t_address",
                "typeString": "address"
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 11946,
            "name": "stake",
            "nodeType": "VariableDeclaration",
            "scope": 13089,
            "src": "2341:17:39",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint256",
              "typeString": "uint256"
            },
            "typeName": {
              "id": 11945,
              "name": "uint",
              "nodeType": "ElementaryTypeName",
              "src": "2341:4:39",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 11950,
            "name": "paidFees",
            "nodeType": "VariableDeclaration",
            "scope": 13089,
            "src": "2364:44:39",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PaidFees_$11901_storage_$",
              "typeString": "mapping(bytes32 => struct MultiPartyInsurableFees.PaidFees)"
            },
            "typeName": {
              "id": 11949,
              "keyType": {
                "id": 11947,
                "name": "bytes32",
                "nodeType": "ElementaryTypeName",
                "src": "2372:7:39",
                "typeDescriptions": {
                  "typeIdentifier": "t_bytes32",
                  "typeString": "bytes32"
                }
              },
              "nodeType": "Mapping",
              "src": "2364:28:39",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PaidFees_$11901_storage_$",
                "typeString": "mapping(bytes32 => struct MultiPartyInsurableFees.PaidFees)"
              },
              "valueType": {
                "contractScope": null,
                "id": 11948,
                "name": "PaidFees",
                "nodeType": "UserDefinedTypeName",
                "referencedDeclaration": 11901,
                "src": "2383:8:39",
                "typeDescriptions": {
                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                  "typeString": "struct MultiPartyInsurableFees.PaidFees"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 11952,
            "name": "fundDisputeCache",
            "nodeType": "VariableDeclaration",
            "scope": 13089,
            "src": "2414:40:39",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
              "typeString": "struct MultiPartyInsurableFees.FundDisputeCache"
            },
            "typeName": {
              "contractScope": null,
              "id": 11951,
              "name": "FundDisputeCache",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 11922,
              "src": "2414:16:39",
              "typeDescriptions": {
                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage_ptr",
                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache"
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 11967,
              "nodeType": "Block",
              "src": "2729:67:39",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11961,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 11959,
                      "name": "feeGovernor",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11944,
                      "src": "2739:11:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11960,
                      "name": "_feeGovernor",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11954,
                      "src": "2753:12:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "src": "2739:26:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "id": 11962,
                  "nodeType": "ExpressionStatement",
                  "src": "2739:26:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11965,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 11963,
                      "name": "stake",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11946,
                      "src": "2775:5:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11964,
                      "name": "_stake",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11956,
                      "src": "2783:6:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "2775:14:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11966,
                  "nodeType": "ExpressionStatement",
                  "src": "2775:14:39"
                }
              ]
            },
            "documentation": "@dev Constructs the `MultiPartyInsurableFees` contract.\n @param _feeGovernor The governor of this contract.\n @param _stake The stake parameter for sharing fees.",
            "id": 11968,
            "implemented": true,
            "isConstructor": true,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 11957,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11954,
                  "name": "_feeGovernor",
                  "nodeType": "VariableDeclaration",
                  "scope": 11968,
                  "src": "2687:20:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 11953,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2687:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11956,
                  "name": "_stake",
                  "nodeType": "VariableDeclaration",
                  "scope": 11968,
                  "src": "2709:11:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11955,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "2709:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2686:35:39"
            },
            "payable": false,
            "returnParameters": {
              "id": 11958,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2729:0:39"
            },
            "scope": 13089,
            "src": "2675:121:39",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 11985,
              "nodeType": "Block",
              "src": "3009:126:39",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "id": 11977,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 11974,
                            "name": "msg",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20639,
                            "src": "3027:3:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_magic_message",
                              "typeString": "msg"
                            }
                          },
                          "id": 11975,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "sender",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "3027:10:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "==",
                        "rightExpression": {
                          "argumentTypes": null,
                          "id": 11976,
                          "name": "feeGovernor",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11944,
                          "src": "3041:11:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "src": "3027:25:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "5468652063616c6c6572206973206e6f74207468652066656520676f7665726e6f722e",
                        "id": 11978,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "3054:37:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_80f1089eb69c2976f4fc7ddb2ebf81298992b6564246473983f1f1beaa9dc730",
                          "typeString": "literal_string \"The caller is not the fee governor.\""
                        },
                        "value": "The caller is not the fee governor."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_80f1089eb69c2976f4fc7ddb2ebf81298992b6564246473983f1f1beaa9dc730",
                          "typeString": "literal_string \"The caller is not the fee governor.\""
                        }
                      ],
                      "id": 11973,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "3019:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 11979,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3019:73:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 11980,
                  "nodeType": "ExpressionStatement",
                  "src": "3019:73:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11983,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 11981,
                      "name": "feeGovernor",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11944,
                      "src": "3102:11:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11982,
                      "name": "_feeGovernor",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11970,
                      "src": "3116:12:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "src": "3102:26:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "id": 11984,
                  "nodeType": "ExpressionStatement",
                  "src": "3102:26:39"
                }
              ]
            },
            "documentation": "@dev Changes the `feeGovernor` storage variable.\n @param _feeGovernor The new `feeGovernor` storage variable.",
            "id": 11986,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "changeFeeGovernor",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 11971,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11970,
                  "name": "_feeGovernor",
                  "nodeType": "VariableDeclaration",
                  "scope": 11986,
                  "src": "2980:20:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 11969,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2980:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2979:22:39"
            },
            "payable": false,
            "returnParameters": {
              "id": 11972,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3009:0:39"
            },
            "scope": 13089,
            "src": "2953:182:39",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 12003,
              "nodeType": "Block",
              "src": "3297:114:39",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "id": 11995,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 11992,
                            "name": "msg",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20639,
                            "src": "3315:3:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_magic_message",
                              "typeString": "msg"
                            }
                          },
                          "id": 11993,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "sender",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "3315:10:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "==",
                        "rightExpression": {
                          "argumentTypes": null,
                          "id": 11994,
                          "name": "feeGovernor",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11944,
                          "src": "3329:11:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "src": "3315:25:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "5468652063616c6c6572206973206e6f74207468652066656520676f7665726e6f722e",
                        "id": 11996,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "3342:37:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_80f1089eb69c2976f4fc7ddb2ebf81298992b6564246473983f1f1beaa9dc730",
                          "typeString": "literal_string \"The caller is not the fee governor.\""
                        },
                        "value": "The caller is not the fee governor."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_80f1089eb69c2976f4fc7ddb2ebf81298992b6564246473983f1f1beaa9dc730",
                          "typeString": "literal_string \"The caller is not the fee governor.\""
                        }
                      ],
                      "id": 11991,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "3307:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 11997,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3307:73:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 11998,
                  "nodeType": "ExpressionStatement",
                  "src": "3307:73:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 12001,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 11999,
                      "name": "stake",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11946,
                      "src": "3390:5:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 12000,
                      "name": "_stake",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11988,
                      "src": "3398:6:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "3390:14:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 12002,
                  "nodeType": "ExpressionStatement",
                  "src": "3390:14:39"
                }
              ]
            },
            "documentation": "@dev Changes the `stake` storage variable.\n @param _stake The new `stake` storage variable.",
            "id": 12004,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "changeStake",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 11989,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11988,
                  "name": "_stake",
                  "nodeType": "VariableDeclaration",
                  "scope": 12004,
                  "src": "3277:11:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11987,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "3277:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3276:13:39"
            },
            "payable": false,
            "returnParameters": {
              "id": 11990,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3297:0:39"
            },
            "scope": 13089,
            "src": "3256:155:39",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 12823,
              "nodeType": "Block",
              "src": "3798:8150:39",
              "statements": [
                {
                  "assignments": [
                    12012
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 12012,
                      "name": "agreement",
                      "nodeType": "VariableDeclaration",
                      "scope": 12824,
                      "src": "3808:27:39",
                      "stateVariable": false,
                      "storageLocation": "storage",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                        "typeString": "struct MultiPartyAgreements.Agreement"
                      },
                      "typeName": {
                        "contractScope": null,
                        "id": 12011,
                        "name": "Agreement",
                        "nodeType": "UserDefinedTypeName",
                        "referencedDeclaration": 10727,
                        "src": "3808:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                          "typeString": "struct MultiPartyAgreements.Agreement"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 12016,
                  "initialValue": {
                    "argumentTypes": null,
                    "baseExpression": {
                      "argumentTypes": null,
                      "id": 12013,
                      "name": "agreements",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 10731,
                      "src": "3838:10:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Agreement_$10727_storage_$",
                        "typeString": "mapping(bytes32 => struct MultiPartyAgreements.Agreement storage ref)"
                      }
                    },
                    "id": 12015,
                    "indexExpression": {
                      "argumentTypes": null,
                      "id": 12014,
                      "name": "_agreementID",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 12006,
                      "src": "3849:12:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "IndexAccess",
                    "src": "3838:24:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Agreement_$10727_storage",
                      "typeString": "struct MultiPartyAgreements.Agreement storage ref"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "3808:54:39"
                },
                {
                  "assignments": [
                    12018
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 12018,
                      "name": "_paidFees",
                      "nodeType": "VariableDeclaration",
                      "scope": 12824,
                      "src": "3872:26:39",
                      "stateVariable": false,
                      "storageLocation": "storage",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                        "typeString": "struct MultiPartyInsurableFees.PaidFees"
                      },
                      "typeName": {
                        "contractScope": null,
                        "id": 12017,
                        "name": "PaidFees",
                        "nodeType": "UserDefinedTypeName",
                        "referencedDeclaration": 11901,
                        "src": "3872:8:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 12022,
                  "initialValue": {
                    "argumentTypes": null,
                    "baseExpression": {
                      "argumentTypes": null,
                      "id": 12019,
                      "name": "paidFees",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11950,
                      "src": "3901:8:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PaidFees_$11901_storage_$",
                        "typeString": "mapping(bytes32 => struct MultiPartyInsurableFees.PaidFees storage ref)"
                      }
                    },
                    "id": 12021,
                    "indexExpression": {
                      "argumentTypes": null,
                      "id": 12020,
                      "name": "_agreementID",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 12006,
                      "src": "3910:12:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "IndexAccess",
                    "src": "3901:22:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_PaidFees_$11901_storage",
                      "typeString": "struct MultiPartyInsurableFees.PaidFees storage ref"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "3872:51:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "id": 12029,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12024,
                            "name": "agreement",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 12012,
                            "src": "3941:9:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                            }
                          },
                          "id": 12025,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "creator",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 10705,
                          "src": "3941:17:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "!=",
                        "rightExpression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "hexValue": "30",
                              "id": 12027,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "3970:1:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              }
                            ],
                            "id": 12026,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "ElementaryTypeNameExpression",
                            "src": "3962:7:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_address_$",
                              "typeString": "type(address)"
                            },
                            "typeName": "address"
                          },
                          "id": 12028,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "3962:10:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "src": "3941:31:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "546865207370656369666965642061677265656d656e7420646f6573206e6f742065786973742e",
                        "id": 12030,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "3974:41:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_5f7ab9090a26ebe6241e7e236dc49b3b57b72be347775aac1a2b38b1207e8eb2",
                          "typeString": "literal_string \"The specified agreement does not exist.\""
                        },
                        "value": "The specified agreement does not exist."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_5f7ab9090a26ebe6241e7e236dc49b3b57b72be347775aac1a2b38b1207e8eb2",
                          "typeString": "literal_string \"The specified agreement does not exist.\""
                        }
                      ],
                      "id": 12023,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "3933:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 12031,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3933:83:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12032,
                  "nodeType": "ExpressionStatement",
                  "src": "3933:83:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 12036,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "UnaryOperation",
                        "operator": "!",
                        "prefix": true,
                        "src": "4034:19:39",
                        "subExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12034,
                            "name": "agreement",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 12012,
                            "src": "4035:9:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                            }
                          },
                          "id": 12035,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "executed",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 10726,
                          "src": "4035:18:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "596f752063616e6e6f742066756e6420646973707574657320666f722065786563757465642061677265656d656e74732e",
                        "id": 12037,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "4055:51:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_3f33585d398d76b24f130f9a587596413fea1e40984521d2812b733fc5cc3e32",
                          "typeString": "literal_string \"You cannot fund disputes for executed agreements.\""
                        },
                        "value": "You cannot fund disputes for executed agreements."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_3f33585d398d76b24f130f9a587596413fea1e40984521d2812b733fc5cc3e32",
                          "typeString": "literal_string \"You cannot fund disputes for executed agreements.\""
                        }
                      ],
                      "id": 12033,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "4026:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 12038,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4026:81:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12039,
                  "nodeType": "ExpressionStatement",
                  "src": "4026:81:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        "id": 12054,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "id": 12043,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "UnaryOperation",
                          "operator": "!",
                          "prefix": true,
                          "src": "4138:19:39",
                          "subExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12041,
                              "name": "agreement",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12012,
                              "src": "4139:9:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                              }
                            },
                            "id": 12042,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "disputed",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 10720,
                            "src": "4139:18:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "||",
                        "rightExpression": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_enum$_DisputeStatus_$3894",
                            "typeString": "enum Arbitrator.DisputeStatus"
                          },
                          "id": 12053,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12047,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "4196:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12048,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "disputeID",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10718,
                                "src": "4196:19:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12044,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "4161:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12045,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "arbitrator",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10716,
                                "src": "4161:20:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                  "typeString": "contract Arbitrator"
                                }
                              },
                              "id": 12046,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "disputeStatus",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 4013,
                              "src": "4161:34:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_enum$_DisputeStatus_$3894_$",
                                "typeString": "function (uint256) view external returns (enum Arbitrator.DisputeStatus)"
                              }
                            },
                            "id": 12049,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "4161:55:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_DisputeStatus_$3894",
                              "typeString": "enum Arbitrator.DisputeStatus"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "==",
                          "rightExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12050,
                                "name": "Arbitrator",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 4021,
                                "src": "4220:10:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_Arbitrator_$4021_$",
                                  "typeString": "type(contract Arbitrator)"
                                }
                              },
                              "id": 12051,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "DisputeStatus",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 3894,
                              "src": "4220:24:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_enum$_DisputeStatus_$3894_$",
                                "typeString": "type(enum Arbitrator.DisputeStatus)"
                              }
                            },
                            "id": 12052,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "memberName": "Appealable",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "4220:35:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_DisputeStatus_$3894",
                              "typeString": "enum Arbitrator.DisputeStatus"
                            }
                          },
                          "src": "4161:94:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "src": "4138:117:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "5468652061677265656d656e7420697320616c726561647920646973707574656420616e64206973206e6f742061707065616c61626c652e",
                        "id": 12055,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "4269:58:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_a9988305a42711d8b7bb2acc1977509089fd57364c13cfe0e62681f6537f6336",
                          "typeString": "literal_string \"The agreement is already disputed and is not appealable.\""
                        },
                        "value": "The agreement is already disputed and is not appealable."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_a9988305a42711d8b7bb2acc1977509089fd57364c13cfe0e62681f6537f6336",
                          "typeString": "literal_string \"The agreement is already disputed and is not appealable.\""
                        }
                      ],
                      "id": 12040,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "4117:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 12056,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4117:220:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12057,
                  "nodeType": "ExpressionStatement",
                  "src": "4117:220:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 12061,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "id": 12059,
                          "name": "_side",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 12008,
                          "src": "4355:5:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "<=",
                        "rightExpression": {
                          "argumentTypes": null,
                          "hexValue": "31",
                          "id": 12060,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "4364:1:39",
                          "subdenomination": null,
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_1_by_1",
                            "typeString": "int_const 1"
                          },
                          "value": "1"
                        },
                        "src": "4355:10:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "546865726520617265206f6e6c792074776f2073696465732e",
                        "id": 12062,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "4367:27:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_cd7081307adad97e60945c0dd2576f7c13c5e996dd9230302cd36a3067d24fd6",
                          "typeString": "literal_string \"There are only two sides.\""
                        },
                        "value": "There are only two sides."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_cd7081307adad97e60945c0dd2576f7c13c5e996dd9230302cd36a3067d24fd6",
                          "typeString": "literal_string \"There are only two sides.\""
                        }
                      ],
                      "id": 12058,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "4347:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 12063,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4347:48:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12064,
                  "nodeType": "ExpressionStatement",
                  "src": "4347:48:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 12069,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12066,
                            "name": "msg",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20639,
                            "src": "4413:3:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_magic_message",
                              "typeString": "msg"
                            }
                          },
                          "id": 12067,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "value",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "4413:9:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": ">",
                        "rightExpression": {
                          "argumentTypes": null,
                          "hexValue": "30",
                          "id": 12068,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "4425:1:39",
                          "subdenomination": null,
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_0_by_1",
                            "typeString": "int_const 0"
                          },
                          "value": "0"
                        },
                        "src": "4413:13:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "5468652076616c7565206f662074686520636f6e747269627574696f6e2063616e6e6f74206265207a65726f2e",
                        "id": 12070,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "4428:47:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_29e613d702e4a9247a55c1813287b04f2c861eeb6fa407ac4450649148a6cccc",
                          "typeString": "literal_string \"The value of the contribution cannot be zero.\""
                        },
                        "value": "The value of the contribution cannot be zero."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_29e613d702e4a9247a55c1813287b04f2c861eeb6fa407ac4450649148a6cccc",
                          "typeString": "literal_string \"The value of the contribution cannot be zero.\""
                        }
                      ],
                      "id": 12065,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "4405:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 12071,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4405:71:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12072,
                  "nodeType": "ExpressionStatement",
                  "src": "4405:71:39"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 12076,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 12073,
                        "name": "_paidFees",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12018,
                        "src": "4534:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                        }
                      },
                      "id": 12074,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "firstContributionTime",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11876,
                      "src": "4534:31:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "==",
                    "rightExpression": {
                      "argumentTypes": null,
                      "hexValue": "30",
                      "id": 12075,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "4569:1:39",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "4534:36:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "id": 12192,
                    "nodeType": "Block",
                    "src": "4919:521:39",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12137,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12133,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "4948:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12135,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "cost",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11903,
                            "src": "4948:21:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "30",
                            "id": 12136,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "4972:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "src": "4948:25:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12138,
                        "nodeType": "ExpressionStatement",
                        "src": "4948:25:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12143,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12139,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "4987:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12141,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "appealing",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11905,
                            "src": "4987:26:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "66616c7365",
                            "id": 12142,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "bool",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5016:5:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            },
                            "value": "false"
                          },
                          "src": "4987:34:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 12144,
                        "nodeType": "ExpressionStatement",
                        "src": "4987:34:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12154,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "components": [
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12145,
                                  "name": "fundDisputeCache",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 11952,
                                  "src": "5036:16:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                  }
                                },
                                "id": 12147,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": true,
                                "memberName": "appealPeriodStart",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11907,
                                "src": "5036:34:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12148,
                                  "name": "fundDisputeCache",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 11952,
                                  "src": "5072:16:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                  }
                                },
                                "id": 12149,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": true,
                                "memberName": "appealPeriodEnd",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11909,
                                "src": "5072:32:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "id": 12150,
                            "isConstant": false,
                            "isInlineArray": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "TupleExpression",
                            "src": "5035:70:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$",
                              "typeString": "tuple(uint256,uint256)"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "components": [
                              {
                                "argumentTypes": null,
                                "hexValue": "30",
                                "id": 12151,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "5109:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_0_by_1",
                                  "typeString": "int_const 0"
                                },
                                "value": "0"
                              },
                              {
                                "argumentTypes": null,
                                "hexValue": "30",
                                "id": 12152,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "5112:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_0_by_1",
                                  "typeString": "int_const 0"
                                },
                                "value": "0"
                              }
                            ],
                            "id": 12153,
                            "isConstant": false,
                            "isInlineArray": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "TupleExpression",
                            "src": "5108:6:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$_t_rational_0_by_1_$_t_rational_0_by_1_$",
                              "typeString": "tuple(int_const 0,int_const 0)"
                            }
                          },
                          "src": "5035:79:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 12155,
                        "nodeType": "ExpressionStatement",
                        "src": "5035:79:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12160,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12156,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "5128:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12158,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "appealPeriodSupported",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11911,
                            "src": "5128:38:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "66616c7365",
                            "id": 12159,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "bool",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5169:5:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            },
                            "value": "false"
                          },
                          "src": "5128:46:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 12161,
                        "nodeType": "ExpressionStatement",
                        "src": "5128:46:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12166,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12162,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "5188:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12164,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "requiredValueForSide",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11913,
                            "src": "5188:37:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "30",
                            "id": 12165,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5228:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "src": "5188:41:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12167,
                        "nodeType": "ExpressionStatement",
                        "src": "5188:41:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12172,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12168,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "5243:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12170,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "expectedValue",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11915,
                            "src": "5243:30:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "30",
                            "id": 12171,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5276:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "src": "5243:34:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12173,
                        "nodeType": "ExpressionStatement",
                        "src": "5243:34:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12178,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12174,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "5291:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12176,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "stillRequiredValueForSide",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11917,
                            "src": "5291:42:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "30",
                            "id": 12177,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5336:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "src": "5291:46:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12179,
                        "nodeType": "ExpressionStatement",
                        "src": "5291:46:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12184,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12180,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "5351:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12182,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "keptValue",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11919,
                            "src": "5351:26:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "30",
                            "id": 12183,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5380:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "src": "5351:30:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12185,
                        "nodeType": "ExpressionStatement",
                        "src": "5351:30:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12190,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12186,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "5395:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12188,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "refundedValue",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11921,
                            "src": "5395:30:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "30",
                            "id": 12189,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5428:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "src": "5395:34:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12191,
                        "nodeType": "ExpressionStatement",
                        "src": "5395:34:39"
                      }
                    ]
                  },
                  "id": 12193,
                  "nodeType": "IfStatement",
                  "src": "4530:910:39",
                  "trueBody": {
                    "id": 12132,
                    "nodeType": "Block",
                    "src": "4572:341:39",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12081,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12077,
                              "name": "_paidFees",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12018,
                              "src": "4586:9:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                              }
                            },
                            "id": 12079,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "firstContributionTime",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11876,
                            "src": "4586:31:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "id": 12080,
                            "name": "now",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20641,
                            "src": "4620:3:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "4586:37:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12082,
                        "nodeType": "ExpressionStatement",
                        "src": "4586:37:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "hexValue": "30",
                              "id": 12088,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "4659:1:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12083,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "4637:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12086,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "ruling",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11879,
                              "src": "4637:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                "typeString": "uint256[] storage ref"
                              }
                            },
                            "id": 12087,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "push",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "4637:21:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
                              "typeString": "function (uint256) returns (uint256)"
                            }
                          },
                          "id": 12089,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "4637:24:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12090,
                        "nodeType": "ExpressionStatement",
                        "src": "4637:24:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 12096,
                              "name": "stake",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11946,
                              "src": "4696:5:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12091,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "4675:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12094,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "stake",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11882,
                              "src": "4675:15:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                "typeString": "uint256[] storage ref"
                              }
                            },
                            "id": 12095,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "push",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "4675:20:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
                              "typeString": "function (uint256) returns (uint256)"
                            }
                          },
                          "id": 12097,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "4675:27:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12098,
                        "nodeType": "ExpressionStatement",
                        "src": "4675:27:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "hexValue": "30",
                              "id": 12104,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "4742:1:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12099,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "4716:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12102,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "totalValue",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11885,
                              "src": "4716:20:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                "typeString": "uint256[] storage ref"
                              }
                            },
                            "id": 12103,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "push",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "4716:25:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
                              "typeString": "function (uint256) returns (uint256)"
                            }
                          },
                          "id": 12105,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "4716:28:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12106,
                        "nodeType": "ExpressionStatement",
                        "src": "4716:28:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "components": [
                                {
                                  "argumentTypes": null,
                                  "hexValue": "30",
                                  "id": 12112,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "4798:1:39",
                                  "subdenomination": null,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_0_by_1",
                                    "typeString": "int_const 0"
                                  },
                                  "value": "0"
                                },
                                {
                                  "argumentTypes": null,
                                  "hexValue": "30",
                                  "id": 12113,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "4801:1:39",
                                  "subdenomination": null,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_0_by_1",
                                    "typeString": "int_const 0"
                                  },
                                  "value": "0"
                                }
                              ],
                              "id": 12114,
                              "isConstant": false,
                              "isInlineArray": true,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "TupleExpression",
                              "src": "4797:6:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_uint8_$2_memory_ptr",
                                "typeString": "uint8[2] memory"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_array$_t_uint8_$2_memory_ptr",
                                "typeString": "uint8[2] memory"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12107,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "4758:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12110,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "totalContributedPerSide",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11890,
                              "src": "4758:33:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                "typeString": "uint256[2] storage ref[] storage ref"
                              }
                            },
                            "id": 12111,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "push",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "4758:38:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_uint256_$2_storage_$returns$_t_uint256_$",
                              "typeString": "function (uint256[2] storage ref) returns (uint256)"
                            }
                          },
                          "id": 12115,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "4758:46:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12116,
                        "nodeType": "ExpressionStatement",
                        "src": "4758:46:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "hexValue": "66616c7365",
                              "id": 12122,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "bool",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "4850:5:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              "value": "false"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12117,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "4818:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12120,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "loserFullyFunded",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11893,
                              "src": "4818:26:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                                "typeString": "bool[] storage ref"
                              }
                            },
                            "id": 12121,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "push",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "4818:31:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_arraypush_nonpayable$_t_bool_$returns$_t_uint256_$",
                              "typeString": "function (bool) returns (uint256)"
                            }
                          },
                          "id": 12123,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "4818:38:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12124,
                        "nodeType": "ExpressionStatement",
                        "src": "4818:38:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12130,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "UnaryOperation",
                          "operator": "++",
                          "prefix": false,
                          "src": "4870:32:39",
                          "subExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12125,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "4870:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12128,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "contributions",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11900,
                              "src": "4870:23:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                                "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                              }
                            },
                            "id": 12129,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "length",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "4870:30:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12131,
                        "nodeType": "ExpressionStatement",
                        "src": "4870:32:39"
                      }
                    ]
                  }
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 12198,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12194,
                          "name": "_paidFees",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 12018,
                          "src": "5499:9:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                            "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                          }
                        },
                        "id": 12195,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "stake",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 11882,
                        "src": "5499:15:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                          "typeString": "uint256[] storage ref"
                        }
                      },
                      "id": 12196,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": null,
                      "src": "5499:22:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "==",
                    "rightExpression": {
                      "argumentTypes": null,
                      "hexValue": "31",
                      "id": 12197,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "5525:1:39",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_1_by_1",
                        "typeString": "int_const 1"
                      },
                      "value": "1"
                    },
                    "src": "5499:27:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "id": 12324,
                    "nodeType": "Block",
                    "src": "5890:1284:39",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12237,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12226,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "5915:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12228,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "cost",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11903,
                            "src": "5915:21:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12232,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "5971:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12233,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "disputeID",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10718,
                                "src": "5971:19:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12234,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "5992:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12235,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "extraData",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10712,
                                "src": "5992:19:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_storage",
                                  "typeString": "bytes storage ref"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                {
                                  "typeIdentifier": "t_bytes_storage",
                                  "typeString": "bytes storage ref"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12229,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "5939:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12230,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "arbitrator",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10716,
                                "src": "5939:20:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                  "typeString": "contract Arbitrator"
                                }
                              },
                              "id": 12231,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "appealCost",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 3996,
                              "src": "5939:31:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_view$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$",
                                "typeString": "function (uint256,bytes memory) view external returns (uint256)"
                              }
                            },
                            "id": 12236,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "5939:73:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "5915:97:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12238,
                        "nodeType": "ExpressionStatement",
                        "src": "5915:97:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12243,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12239,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "6027:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12241,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "appealing",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11905,
                            "src": "6027:26:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "74727565",
                            "id": 12242,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "bool",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "6056:4:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            },
                            "value": "true"
                          },
                          "src": "6027:33:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 12244,
                        "nodeType": "ExpressionStatement",
                        "src": "6027:33:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12257,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "components": [
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12245,
                                  "name": "fundDisputeCache",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 11952,
                                  "src": "6075:16:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                  }
                                },
                                "id": 12247,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": true,
                                "memberName": "appealPeriodStart",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11907,
                                "src": "6075:34:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12248,
                                  "name": "fundDisputeCache",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 11952,
                                  "src": "6111:16:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                  }
                                },
                                "id": 12249,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": true,
                                "memberName": "appealPeriodEnd",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11909,
                                "src": "6111:32:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "id": 12250,
                            "isConstant": false,
                            "isInlineArray": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "TupleExpression",
                            "src": "6074:70:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$",
                              "typeString": "tuple(uint256,uint256)"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12254,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "6181:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12255,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "disputeID",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10718,
                                "src": "6181:19:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12251,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "6147:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12252,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "arbitrator",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10716,
                                "src": "6147:20:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                  "typeString": "contract Arbitrator"
                                }
                              },
                              "id": 12253,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "appealPeriod",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 4006,
                              "src": "6147:33:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$_t_uint256_$",
                                "typeString": "function (uint256) view external returns (uint256,uint256)"
                              }
                            },
                            "id": 12256,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "6147:54:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$",
                              "typeString": "tuple(uint256,uint256)"
                            }
                          },
                          "src": "6074:127:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 12258,
                        "nodeType": "ExpressionStatement",
                        "src": "6074:127:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12271,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12259,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "6215:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12261,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "appealPeriodSupported",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11911,
                            "src": "6215:38:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "commonType": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            },
                            "id": 12270,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "id": 12265,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12262,
                                  "name": "fundDisputeCache",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 11952,
                                  "src": "6256:16:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                  }
                                },
                                "id": 12263,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "appealPeriodStart",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11907,
                                "src": "6256:34:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "!=",
                              "rightExpression": {
                                "argumentTypes": null,
                                "hexValue": "30",
                                "id": 12264,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "6294:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_0_by_1",
                                  "typeString": "int_const 0"
                                },
                                "value": "0"
                              },
                              "src": "6256:39:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "&&",
                            "rightExpression": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "id": 12269,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12266,
                                  "name": "fundDisputeCache",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 11952,
                                  "src": "6299:16:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                  }
                                },
                                "id": 12267,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "appealPeriodEnd",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11909,
                                "src": "6299:32:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "!=",
                              "rightExpression": {
                                "argumentTypes": null,
                                "hexValue": "30",
                                "id": 12268,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "6335:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_0_by_1",
                                  "typeString": "int_const 0"
                                },
                                "value": "0"
                              },
                              "src": "6299:37:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            "src": "6256:80:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "src": "6215:121:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 12272,
                        "nodeType": "ExpressionStatement",
                        "src": "6215:121:39"
                      },
                      {
                        "condition": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12273,
                            "name": "fundDisputeCache",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11952,
                            "src": "6354:16:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                              "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                            }
                          },
                          "id": 12274,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "appealPeriodSupported",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 11911,
                          "src": "6354:38:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "falseBody": {
                          "expression": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "commonType": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                "id": 12319,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12315,
                                    "name": "msg",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 20639,
                                    "src": "7048:3:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_magic_message",
                                      "typeString": "msg"
                                    }
                                  },
                                  "id": 12316,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "value",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "7048:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": ">=",
                                "rightExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12317,
                                    "name": "fundDisputeCache",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11952,
                                    "src": "7061:16:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                      "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                    }
                                  },
                                  "id": 12318,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "cost",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11903,
                                  "src": "7061:21:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "src": "7048:34:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "hexValue": "46656573206d757374206265207061696420696e2066756c6c206966207468652061726269747261746f7220646f6573206e6f7420737570706f7274206061707065616c506572696f64602e",
                                "id": 12320,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "string",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "7084:78:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_stringliteral_f030ccf3af9ce9851b85d6297abb834f301840092c45eb9cc1a955f5a58d04b7",
                                  "typeString": "literal_string \"Fees must be paid in full if the arbitrator does not support `appealPeriod`.\""
                                },
                                "value": "Fees must be paid in full if the arbitrator does not support `appealPeriod`."
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                },
                                {
                                  "typeIdentifier": "t_stringliteral_f030ccf3af9ce9851b85d6297abb834f301840092c45eb9cc1a955f5a58d04b7",
                                  "typeString": "literal_string \"Fees must be paid in full if the arbitrator does not support `appealPeriod`.\""
                                }
                              ],
                              "id": 12314,
                              "name": "require",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [
                                20642,
                                20643
                              ],
                              "referencedDeclaration": 20643,
                              "src": "7040:7:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                                "typeString": "function (bool,string memory) pure"
                              }
                            },
                            "id": 12321,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "7040:123:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$__$",
                              "typeString": "tuple()"
                            }
                          },
                          "id": 12322,
                          "nodeType": "ExpressionStatement",
                          "src": "7040:123:39"
                        },
                        "id": 12323,
                        "nodeType": "IfStatement",
                        "src": "6350:813:39",
                        "trueBody": {
                          "id": 12313,
                          "nodeType": "Block",
                          "src": "6394:640:39",
                          "statements": [
                            {
                              "condition": {
                                "argumentTypes": null,
                                "commonType": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                "id": 12288,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "argumentTypes": null,
                                  "id": 12275,
                                  "name": "now",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20641,
                                  "src": "6416:3:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": "<",
                                "rightExpression": {
                                  "argumentTypes": null,
                                  "commonType": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  },
                                  "id": 12287,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12276,
                                      "name": "fundDisputeCache",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11952,
                                      "src": "6422:16:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                        "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                      }
                                    },
                                    "id": 12277,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "appealPeriodStart",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11907,
                                    "src": "6422:34:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": "+",
                                  "rightExpression": {
                                    "argumentTypes": null,
                                    "components": [
                                      {
                                        "argumentTypes": null,
                                        "commonType": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        },
                                        "id": 12285,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftExpression": {
                                          "argumentTypes": null,
                                          "components": [
                                            {
                                              "argumentTypes": null,
                                              "commonType": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              },
                                              "id": 12282,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "leftExpression": {
                                                "argumentTypes": null,
                                                "expression": {
                                                  "argumentTypes": null,
                                                  "id": 12278,
                                                  "name": "fundDisputeCache",
                                                  "nodeType": "Identifier",
                                                  "overloadedDeclarations": [],
                                                  "referencedDeclaration": 11952,
                                                  "src": "6461:16:39",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                                  }
                                                },
                                                "id": 12279,
                                                "isConstant": false,
                                                "isLValue": true,
                                                "isPure": false,
                                                "lValueRequested": false,
                                                "memberName": "appealPeriodEnd",
                                                "nodeType": "MemberAccess",
                                                "referencedDeclaration": 11909,
                                                "src": "6461:32:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_uint256",
                                                  "typeString": "uint256"
                                                }
                                              },
                                              "nodeType": "BinaryOperation",
                                              "operator": "-",
                                              "rightExpression": {
                                                "argumentTypes": null,
                                                "expression": {
                                                  "argumentTypes": null,
                                                  "id": 12280,
                                                  "name": "fundDisputeCache",
                                                  "nodeType": "Identifier",
                                                  "overloadedDeclarations": [],
                                                  "referencedDeclaration": 11952,
                                                  "src": "6496:16:39",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                                  }
                                                },
                                                "id": 12281,
                                                "isConstant": false,
                                                "isLValue": true,
                                                "isPure": false,
                                                "lValueRequested": false,
                                                "memberName": "appealPeriodStart",
                                                "nodeType": "MemberAccess",
                                                "referencedDeclaration": 11907,
                                                "src": "6496:34:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_uint256",
                                                  "typeString": "uint256"
                                                }
                                              },
                                              "src": "6461:69:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            }
                                          ],
                                          "id": 12283,
                                          "isConstant": false,
                                          "isInlineArray": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "TupleExpression",
                                          "src": "6460:71:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "nodeType": "BinaryOperation",
                                        "operator": "/",
                                        "rightExpression": {
                                          "argumentTypes": null,
                                          "hexValue": "32",
                                          "id": 12284,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "number",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "6534:1:39",
                                          "subdenomination": null,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_rational_2_by_1",
                                            "typeString": "int_const 2"
                                          },
                                          "value": "2"
                                        },
                                        "src": "6460:75:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      }
                                    ],
                                    "id": 12286,
                                    "isConstant": false,
                                    "isInlineArray": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "TupleExpression",
                                    "src": "6459:77:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "src": "6422:114:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "src": "6416:120:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "falseBody": {
                                "expression": {
                                  "argumentTypes": null,
                                  "arguments": [
                                    {
                                      "argumentTypes": null,
                                      "commonType": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      },
                                      "id": 12308,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "argumentTypes": null,
                                        "commonType": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        },
                                        "id": 12299,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftExpression": {
                                          "argumentTypes": null,
                                          "id": 12297,
                                          "name": "_side",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12008,
                                          "src": "6792:5:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "nodeType": "BinaryOperation",
                                        "operator": "==",
                                        "rightExpression": {
                                          "argumentTypes": null,
                                          "hexValue": "31",
                                          "id": 12298,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "number",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "6801:1:39",
                                          "subdenomination": null,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_rational_1_by_1",
                                            "typeString": "int_const 1"
                                          },
                                          "value": "1"
                                        },
                                        "src": "6792:10:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bool",
                                          "typeString": "bool"
                                        }
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": "&&",
                                      "rightExpression": {
                                        "argumentTypes": null,
                                        "baseExpression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12300,
                                            "name": "_paidFees",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12018,
                                            "src": "6806:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                              "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                            }
                                          },
                                          "id": 12301,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "loserFullyFunded",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 11893,
                                          "src": "6806:26:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                                            "typeString": "bool[] storage ref"
                                          }
                                        },
                                        "id": 12307,
                                        "indexExpression": {
                                          "argumentTypes": null,
                                          "commonType": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          },
                                          "id": 12306,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "leftExpression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "id": 12302,
                                                "name": "_paidFees",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 12018,
                                                "src": "6833:9:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                }
                                              },
                                              "id": 12303,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "loserFullyFunded",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 11893,
                                              "src": "6833:26:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                                                "typeString": "bool[] storage ref"
                                              }
                                            },
                                            "id": 12304,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "length",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": null,
                                            "src": "6833:33:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "nodeType": "BinaryOperation",
                                          "operator": "-",
                                          "rightExpression": {
                                            "argumentTypes": null,
                                            "hexValue": "31",
                                            "id": 12305,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "6869:1:39",
                                            "subdenomination": null,
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_1_by_1",
                                              "typeString": "int_const 1"
                                            },
                                            "value": "1"
                                          },
                                          "src": "6833:37:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "nodeType": "IndexAccess",
                                        "src": "6806:65:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bool",
                                          "typeString": "bool"
                                        }
                                      },
                                      "src": "6792:79:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    },
                                    {
                                      "argumentTypes": null,
                                      "hexValue": "4974206973207468652077696e6e696e6720736964652773207475726e20746f2066756e64207468652061707065616c2c206f6e6c7920696620746865206c6f73696e67207369646520616c72656164792066756c6c792066756e6465642069742e",
                                      "id": 12309,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "string",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "6897:100:39",
                                      "subdenomination": null,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_stringliteral_11e79bbb8394f494bd8c29e629dbf175534ba9a049c2acd22df8ee3a735660e2",
                                        "typeString": "literal_string \"It is the winning side's turn to fund the appeal, only if the losing side already fully funded it.\""
                                      },
                                      "value": "It is the winning side's turn to fund the appeal, only if the losing side already fully funded it."
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": [
                                      {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      },
                                      {
                                        "typeIdentifier": "t_stringliteral_11e79bbb8394f494bd8c29e629dbf175534ba9a049c2acd22df8ee3a735660e2",
                                        "typeString": "literal_string \"It is the winning side's turn to fund the appeal, only if the losing side already fully funded it.\""
                                      }
                                    ],
                                    "id": 12296,
                                    "name": "require",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [
                                      20642,
                                      20643
                                    ],
                                    "referencedDeclaration": 20643,
                                    "src": "6759:7:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                                      "typeString": "function (bool,string memory) pure"
                                    }
                                  },
                                  "id": 12310,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "functionCall",
                                  "lValueRequested": false,
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "6759:260:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_tuple$__$",
                                    "typeString": "tuple()"
                                  }
                                },
                                "id": 12311,
                                "nodeType": "ExpressionStatement",
                                "src": "6759:260:39"
                              },
                              "id": 12312,
                              "nodeType": "IfStatement",
                              "src": "6412:607:39",
                              "trueBody": {
                                "expression": {
                                  "argumentTypes": null,
                                  "arguments": [
                                    {
                                      "argumentTypes": null,
                                      "commonType": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      },
                                      "id": 12292,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "argumentTypes": null,
                                        "id": 12290,
                                        "name": "_side",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 12008,
                                        "src": "6609:5:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": "==",
                                      "rightExpression": {
                                        "argumentTypes": null,
                                        "hexValue": "30",
                                        "id": 12291,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "6618:1:39",
                                        "subdenomination": null,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_0_by_1",
                                          "typeString": "int_const 0"
                                        },
                                        "value": "0"
                                      },
                                      "src": "6609:10:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    },
                                    {
                                      "argumentTypes": null,
                                      "hexValue": "497420697320746865206c6f73696e6720736964652773207475726e20746f2066756e64207468652061707065616c2e",
                                      "id": 12293,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "string",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "6621:50:39",
                                      "subdenomination": null,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_stringliteral_fcb7d1ac3f62b5b6106b4cabdd544f8bdb61837072e9ac64e15fe575310a82e0",
                                        "typeString": "literal_string \"It is the losing side's turn to fund the appeal.\""
                                      },
                                      "value": "It is the losing side's turn to fund the appeal."
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": [
                                      {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      },
                                      {
                                        "typeIdentifier": "t_stringliteral_fcb7d1ac3f62b5b6106b4cabdd544f8bdb61837072e9ac64e15fe575310a82e0",
                                        "typeString": "literal_string \"It is the losing side's turn to fund the appeal.\""
                                      }
                                    ],
                                    "id": 12289,
                                    "name": "require",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [
                                      20642,
                                      20643
                                    ],
                                    "referencedDeclaration": 20643,
                                    "src": "6601:7:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                                      "typeString": "function (bool,string memory) pure"
                                    }
                                  },
                                  "id": 12294,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "functionCall",
                                  "lValueRequested": false,
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "6601:71:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_tuple$__$",
                                    "typeString": "tuple()"
                                  }
                                },
                                "id": 12295,
                                "nodeType": "ExpressionStatement",
                                "src": "6601:71:39"
                              }
                            }
                          ]
                        }
                      }
                    ]
                  },
                  "id": 12325,
                  "nodeType": "IfStatement",
                  "src": "5495:1679:39",
                  "trueBody": {
                    "id": 12225,
                    "nodeType": "Block",
                    "src": "5528:356:39",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12208,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12199,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "5558:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12201,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "cost",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11903,
                            "src": "5558:21:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12205,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "5619:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12206,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "extraData",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10712,
                                "src": "5619:19:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_storage",
                                  "typeString": "bytes storage ref"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bytes_storage",
                                  "typeString": "bytes storage ref"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12202,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "5582:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12203,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "arbitrator",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10716,
                                "src": "5582:20:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                  "typeString": "contract Arbitrator"
                                }
                              },
                              "id": 12204,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "arbitrationCost",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 3967,
                              "src": "5582:36:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_view$_t_bytes_memory_ptr_$returns$_t_uint256_$",
                                "typeString": "function (bytes memory) view external returns (uint256)"
                              }
                            },
                            "id": 12207,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "5582:57:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "5558:81:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12209,
                        "nodeType": "ExpressionStatement",
                        "src": "5558:81:39"
                      },
                      {
                        "condition": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "id": 12216,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "argumentTypes": null,
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 12213,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "argumentTypes": null,
                              "id": 12210,
                              "name": "now",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 20641,
                              "src": "5700:3:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "-",
                            "rightExpression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12211,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "5706:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12212,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "firstContributionTime",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11876,
                              "src": "5706:31:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "src": "5700:37:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": ">",
                          "rightExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12214,
                              "name": "agreement",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12012,
                              "src": "5740:9:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                              }
                            },
                            "id": 12215,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "arbitrationFeesWaitingTime",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 10714,
                            "src": "5740:36:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "5700:76:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "falseBody": null,
                        "id": 12224,
                        "nodeType": "IfStatement",
                        "src": "5696:178:39",
                        "trueBody": {
                          "id": 12223,
                          "nodeType": "Block",
                          "src": "5778:96:39",
                          "statements": [
                            {
                              "expression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "id": 12218,
                                    "name": "_agreementID",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 12006,
                                    "src": "5819:12:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  },
                                  {
                                    "argumentTypes": null,
                                    "hexValue": "30",
                                    "id": 12219,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "number",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "5833:1:39",
                                    "subdenomination": null,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_rational_0_by_1",
                                      "typeString": "int_const 0"
                                    },
                                    "value": "0"
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    },
                                    {
                                      "typeIdentifier": "t_rational_0_by_1",
                                      "typeString": "int_const 0"
                                    }
                                  ],
                                  "id": 12217,
                                  "name": "executeAgreementRuling",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 10897,
                                  "src": "5796:22:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_uint256_$returns$__$",
                                    "typeString": "function (bytes32,uint256)"
                                  }
                                },
                                "id": 12220,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "5796:39:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_tuple$__$",
                                  "typeString": "tuple()"
                                }
                              },
                              "id": 12221,
                              "nodeType": "ExpressionStatement",
                              "src": "5796:39:39"
                            },
                            {
                              "expression": null,
                              "functionReturnParameters": 12010,
                              "id": 12222,
                              "nodeType": "Return",
                              "src": "5853:7:39"
                            }
                          ]
                        }
                      }
                    ]
                  }
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "id": 12328,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "UnaryOperation",
                    "operator": "!",
                    "prefix": true,
                    "src": "7223:27:39",
                    "subExpression": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 12326,
                        "name": "fundDisputeCache",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11952,
                        "src": "7224:16:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                          "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                        }
                      },
                      "id": 12327,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "appealing",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11905,
                      "src": "7224:26:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "id": 12434,
                    "nodeType": "Block",
                    "src": "7360:906:39",
                    "statements": [
                      {
                        "condition": {
                          "argumentTypes": null,
                          "id": 12340,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "UnaryOperation",
                          "operator": "!",
                          "prefix": true,
                          "src": "7389:39:39",
                          "subExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12338,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "7390:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12339,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "appealPeriodSupported",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11911,
                            "src": "7390:38:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "falseBody": {
                          "condition": {
                            "argumentTypes": null,
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 12350,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "argumentTypes": null,
                              "id": 12348,
                              "name": "_side",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12008,
                              "src": "7530:5:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "==",
                            "rightExpression": {
                              "argumentTypes": null,
                              "hexValue": "30",
                              "id": 12349,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "7539:1:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            },
                            "src": "7530:10:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "falseBody": {
                            "id": 12431,
                            "nodeType": "Block",
                            "src": "7706:550:39",
                            "statements": [
                              {
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12392,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftHandSide": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12370,
                                      "name": "fundDisputeCache",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11952,
                                      "src": "7741:16:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                        "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                      }
                                    },
                                    "id": 12372,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": true,
                                    "memberName": "expectedValue",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11915,
                                    "src": "7741:30:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "nodeType": "Assignment",
                                  "operator": "=",
                                  "rightHandSide": {
                                    "argumentTypes": null,
                                    "commonType": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    },
                                    "id": 12391,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "leftExpression": {
                                      "argumentTypes": null,
                                      "baseExpression": {
                                        "argumentTypes": null,
                                        "baseExpression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12373,
                                            "name": "_paidFees",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12018,
                                            "src": "7774:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                              "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                            }
                                          },
                                          "id": 12374,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "totalContributedPerSide",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 11890,
                                          "src": "7774:33:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                            "typeString": "uint256[2] storage ref[] storage ref"
                                          }
                                        },
                                        "id": 12380,
                                        "indexExpression": {
                                          "argumentTypes": null,
                                          "commonType": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          },
                                          "id": 12379,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "leftExpression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "id": 12375,
                                                "name": "_paidFees",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 12018,
                                                "src": "7808:9:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                }
                                              },
                                              "id": 12376,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "totalContributedPerSide",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 11890,
                                              "src": "7808:33:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                                "typeString": "uint256[2] storage ref[] storage ref"
                                              }
                                            },
                                            "id": 12377,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "length",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": null,
                                            "src": "7808:40:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "nodeType": "BinaryOperation",
                                          "operator": "-",
                                          "rightExpression": {
                                            "argumentTypes": null,
                                            "hexValue": "31",
                                            "id": 12378,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "7851:1:39",
                                            "subdenomination": null,
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_1_by_1",
                                              "typeString": "int_const 1"
                                            },
                                            "value": "1"
                                          },
                                          "src": "7808:44:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "nodeType": "IndexAccess",
                                        "src": "7774:79:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                          "typeString": "uint256[2] storage ref"
                                        }
                                      },
                                      "id": 12382,
                                      "indexExpression": {
                                        "argumentTypes": null,
                                        "hexValue": "30",
                                        "id": 12381,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "7854:1:39",
                                        "subdenomination": null,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_0_by_1",
                                          "typeString": "int_const 0"
                                        },
                                        "value": "0"
                                      },
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "nodeType": "IndexAccess",
                                      "src": "7774:82:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "nodeType": "BinaryOperation",
                                    "operator": "-",
                                    "rightExpression": {
                                      "argumentTypes": null,
                                      "baseExpression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12383,
                                          "name": "_paidFees",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12018,
                                          "src": "7859:9:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                            "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                          }
                                        },
                                        "id": 12384,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "stake",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 11882,
                                        "src": "7859:15:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                          "typeString": "uint256[] storage ref"
                                        }
                                      },
                                      "id": 12390,
                                      "indexExpression": {
                                        "argumentTypes": null,
                                        "commonType": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        },
                                        "id": 12389,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftExpression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12385,
                                              "name": "_paidFees",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12018,
                                              "src": "7875:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                              }
                                            },
                                            "id": 12386,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "stake",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 11882,
                                            "src": "7875:15:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                              "typeString": "uint256[] storage ref"
                                            }
                                          },
                                          "id": 12387,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "length",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": null,
                                          "src": "7875:22:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "nodeType": "BinaryOperation",
                                        "operator": "-",
                                        "rightExpression": {
                                          "argumentTypes": null,
                                          "hexValue": "31",
                                          "id": 12388,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "number",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "7900:1:39",
                                          "subdenomination": null,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_rational_1_by_1",
                                            "typeString": "int_const 1"
                                          },
                                          "value": "1"
                                        },
                                        "src": "7875:26:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "nodeType": "IndexAccess",
                                      "src": "7859:43:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "src": "7774:128:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "src": "7741:161:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "id": 12393,
                                "nodeType": "ExpressionStatement",
                                "src": "7741:161:39"
                              },
                              {
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12429,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftHandSide": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12394,
                                      "name": "fundDisputeCache",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11952,
                                      "src": "7920:16:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                        "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                      }
                                    },
                                    "id": 12396,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": true,
                                    "memberName": "requiredValueForSide",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11913,
                                    "src": "7920:37:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "nodeType": "Assignment",
                                  "operator": "=",
                                  "rightHandSide": {
                                    "argumentTypes": null,
                                    "condition": {
                                      "argumentTypes": null,
                                      "commonType": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      },
                                      "id": 12412,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12397,
                                          "name": "fundDisputeCache",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 11952,
                                          "src": "7960:16:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                          }
                                        },
                                        "id": 12398,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "cost",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 11903,
                                        "src": "7960:21:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": ">",
                                      "rightExpression": {
                                        "argumentTypes": null,
                                        "commonType": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        },
                                        "id": 12411,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftExpression": {
                                          "argumentTypes": null,
                                          "baseExpression": {
                                            "argumentTypes": null,
                                            "baseExpression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "id": 12399,
                                                "name": "_paidFees",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 12018,
                                                "src": "7984:9:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                }
                                              },
                                              "id": 12400,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "totalContributedPerSide",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 11890,
                                              "src": "7984:33:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                                "typeString": "uint256[2] storage ref[] storage ref"
                                              }
                                            },
                                            "id": 12406,
                                            "indexExpression": {
                                              "argumentTypes": null,
                                              "commonType": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              },
                                              "id": 12405,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "leftExpression": {
                                                "argumentTypes": null,
                                                "expression": {
                                                  "argumentTypes": null,
                                                  "expression": {
                                                    "argumentTypes": null,
                                                    "id": 12401,
                                                    "name": "_paidFees",
                                                    "nodeType": "Identifier",
                                                    "overloadedDeclarations": [],
                                                    "referencedDeclaration": 12018,
                                                    "src": "8018:9:39",
                                                    "typeDescriptions": {
                                                      "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                      "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                    }
                                                  },
                                                  "id": 12402,
                                                  "isConstant": false,
                                                  "isLValue": true,
                                                  "isPure": false,
                                                  "lValueRequested": false,
                                                  "memberName": "totalContributedPerSide",
                                                  "nodeType": "MemberAccess",
                                                  "referencedDeclaration": 11890,
                                                  "src": "8018:33:39",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                                    "typeString": "uint256[2] storage ref[] storage ref"
                                                  }
                                                },
                                                "id": 12403,
                                                "isConstant": false,
                                                "isLValue": true,
                                                "isPure": false,
                                                "lValueRequested": false,
                                                "memberName": "length",
                                                "nodeType": "MemberAccess",
                                                "referencedDeclaration": null,
                                                "src": "8018:40:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_uint256",
                                                  "typeString": "uint256"
                                                }
                                              },
                                              "nodeType": "BinaryOperation",
                                              "operator": "-",
                                              "rightExpression": {
                                                "argumentTypes": null,
                                                "hexValue": "31",
                                                "id": 12404,
                                                "isConstant": false,
                                                "isLValue": false,
                                                "isPure": true,
                                                "kind": "number",
                                                "lValueRequested": false,
                                                "nodeType": "Literal",
                                                "src": "8061:1:39",
                                                "subdenomination": null,
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_rational_1_by_1",
                                                  "typeString": "int_const 1"
                                                },
                                                "value": "1"
                                              },
                                              "src": "8018:44:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            },
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "nodeType": "IndexAccess",
                                            "src": "7984:79:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                              "typeString": "uint256[2] storage ref"
                                            }
                                          },
                                          "id": 12408,
                                          "indexExpression": {
                                            "argumentTypes": null,
                                            "hexValue": "30",
                                            "id": 12407,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "8064:1:39",
                                            "subdenomination": null,
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_0_by_1",
                                              "typeString": "int_const 0"
                                            },
                                            "value": "0"
                                          },
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "IndexAccess",
                                          "src": "7984:82:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "nodeType": "BinaryOperation",
                                        "operator": "+",
                                        "rightExpression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12409,
                                            "name": "fundDisputeCache",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 11952,
                                            "src": "8069:16:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                              "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                            }
                                          },
                                          "id": 12410,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "expectedValue",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 11915,
                                          "src": "8069:30:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "src": "7984:115:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "src": "7960:139:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    },
                                    "falseExpression": {
                                      "argumentTypes": null,
                                      "expression": {
                                        "argumentTypes": null,
                                        "id": 12426,
                                        "name": "fundDisputeCache",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 11952,
                                        "src": "8211:16:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                          "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                        }
                                      },
                                      "id": 12427,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberName": "expectedValue",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": 11915,
                                      "src": "8211:30:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "id": 12428,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "Conditional",
                                    "src": "7960:281:39",
                                    "trueExpression": {
                                      "argumentTypes": null,
                                      "commonType": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      },
                                      "id": 12425,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12413,
                                          "name": "fundDisputeCache",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 11952,
                                          "src": "8102:16:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                          }
                                        },
                                        "id": 12414,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "cost",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 11903,
                                        "src": "8102:21:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": "-",
                                      "rightExpression": {
                                        "argumentTypes": null,
                                        "baseExpression": {
                                          "argumentTypes": null,
                                          "baseExpression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12415,
                                              "name": "_paidFees",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12018,
                                              "src": "8126:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                              }
                                            },
                                            "id": 12416,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "totalContributedPerSide",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 11890,
                                            "src": "8126:33:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                              "typeString": "uint256[2] storage ref[] storage ref"
                                            }
                                          },
                                          "id": 12422,
                                          "indexExpression": {
                                            "argumentTypes": null,
                                            "commonType": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            },
                                            "id": 12421,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "leftExpression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "expression": {
                                                  "argumentTypes": null,
                                                  "id": 12417,
                                                  "name": "_paidFees",
                                                  "nodeType": "Identifier",
                                                  "overloadedDeclarations": [],
                                                  "referencedDeclaration": 12018,
                                                  "src": "8160:9:39",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                    "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                  }
                                                },
                                                "id": 12418,
                                                "isConstant": false,
                                                "isLValue": true,
                                                "isPure": false,
                                                "lValueRequested": false,
                                                "memberName": "totalContributedPerSide",
                                                "nodeType": "MemberAccess",
                                                "referencedDeclaration": 11890,
                                                "src": "8160:33:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                                  "typeString": "uint256[2] storage ref[] storage ref"
                                                }
                                              },
                                              "id": 12419,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "length",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": null,
                                              "src": "8160:40:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            },
                                            "nodeType": "BinaryOperation",
                                            "operator": "-",
                                            "rightExpression": {
                                              "argumentTypes": null,
                                              "hexValue": "31",
                                              "id": 12420,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": true,
                                              "kind": "number",
                                              "lValueRequested": false,
                                              "nodeType": "Literal",
                                              "src": "8203:1:39",
                                              "subdenomination": null,
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_rational_1_by_1",
                                                "typeString": "int_const 1"
                                              },
                                              "value": "1"
                                            },
                                            "src": "8160:44:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "IndexAccess",
                                          "src": "8126:79:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                            "typeString": "uint256[2] storage ref"
                                          }
                                        },
                                        "id": 12424,
                                        "indexExpression": {
                                          "argumentTypes": null,
                                          "hexValue": "30",
                                          "id": 12423,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "number",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "8206:1:39",
                                          "subdenomination": null,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_rational_0_by_1",
                                            "typeString": "int_const 0"
                                          },
                                          "value": "0"
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "nodeType": "IndexAccess",
                                        "src": "8126:82:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "src": "8102:106:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "src": "7920:321:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "id": 12430,
                                "nodeType": "ExpressionStatement",
                                "src": "7920:321:39"
                              }
                            ]
                          },
                          "id": 12432,
                          "nodeType": "IfStatement",
                          "src": "7526:730:39",
                          "trueBody": {
                            "expression": {
                              "argumentTypes": null,
                              "id": 12368,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftHandSide": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12351,
                                  "name": "fundDisputeCache",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 11952,
                                  "src": "7574:16:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                  }
                                },
                                "id": 12353,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": true,
                                "memberName": "requiredValueForSide",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11913,
                                "src": "7574:37:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "Assignment",
                              "operator": "=",
                              "rightHandSide": {
                                "argumentTypes": null,
                                "commonType": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                "id": 12367,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12354,
                                    "name": "fundDisputeCache",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11952,
                                    "src": "7614:16:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                      "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                    }
                                  },
                                  "id": 12355,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "cost",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11903,
                                  "src": "7614:21:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": "+",
                                "rightExpression": {
                                  "argumentTypes": null,
                                  "components": [
                                    {
                                      "argumentTypes": null,
                                      "commonType": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      },
                                      "id": 12365,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "argumentTypes": null,
                                        "hexValue": "32",
                                        "id": 12356,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "7639:1:39",
                                        "subdenomination": null,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_2_by_1",
                                          "typeString": "int_const 2"
                                        },
                                        "value": "2"
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": "*",
                                      "rightExpression": {
                                        "argumentTypes": null,
                                        "baseExpression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12357,
                                            "name": "_paidFees",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12018,
                                            "src": "7643:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                              "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                            }
                                          },
                                          "id": 12358,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "stake",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 11882,
                                          "src": "7643:15:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                            "typeString": "uint256[] storage ref"
                                          }
                                        },
                                        "id": 12364,
                                        "indexExpression": {
                                          "argumentTypes": null,
                                          "commonType": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          },
                                          "id": 12363,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "leftExpression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "id": 12359,
                                                "name": "_paidFees",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 12018,
                                                "src": "7659:9:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                }
                                              },
                                              "id": 12360,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "stake",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 11882,
                                              "src": "7659:15:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                                "typeString": "uint256[] storage ref"
                                              }
                                            },
                                            "id": 12361,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "length",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": null,
                                            "src": "7659:22:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "nodeType": "BinaryOperation",
                                          "operator": "-",
                                          "rightExpression": {
                                            "argumentTypes": null,
                                            "hexValue": "31",
                                            "id": 12362,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "7684:1:39",
                                            "subdenomination": null,
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_1_by_1",
                                              "typeString": "int_const 1"
                                            },
                                            "value": "1"
                                          },
                                          "src": "7659:26:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "nodeType": "IndexAccess",
                                        "src": "7643:43:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "src": "7639:47:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    }
                                  ],
                                  "id": 12366,
                                  "isConstant": false,
                                  "isInlineArray": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "TupleExpression",
                                  "src": "7638:49:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "src": "7614:73:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "src": "7574:113:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "id": 12369,
                            "nodeType": "ExpressionStatement",
                            "src": "7574:113:39"
                          }
                        },
                        "id": 12433,
                        "nodeType": "IfStatement",
                        "src": "7385:871:39",
                        "trueBody": {
                          "expression": {
                            "argumentTypes": null,
                            "id": 12346,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftHandSide": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12341,
                                "name": "fundDisputeCache",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 11952,
                                "src": "7446:16:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                  "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                }
                              },
                              "id": 12343,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": true,
                              "memberName": "requiredValueForSide",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11913,
                              "src": "7446:37:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "Assignment",
                            "operator": "=",
                            "rightHandSide": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12344,
                                "name": "fundDisputeCache",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 11952,
                                "src": "7486:16:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                  "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                }
                              },
                              "id": 12345,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "cost",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11903,
                              "src": "7486:21:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "src": "7446:61:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "id": 12347,
                          "nodeType": "ExpressionStatement",
                          "src": "7446:61:39"
                        }
                      }
                    ]
                  },
                  "id": 12435,
                  "nodeType": "IfStatement",
                  "src": "7219:1047:39",
                  "trueBody": {
                    "expression": {
                      "argumentTypes": null,
                      "id": 12336,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftHandSide": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12329,
                          "name": "fundDisputeCache",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11952,
                          "src": "7280:16:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                          }
                        },
                        "id": 12331,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": true,
                        "memberName": "requiredValueForSide",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 11913,
                        "src": "7280:37:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "Assignment",
                      "operator": "=",
                      "rightHandSide": {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 12335,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12332,
                            "name": "fundDisputeCache",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11952,
                            "src": "7320:16:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                              "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                            }
                          },
                          "id": 12333,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "cost",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 11903,
                          "src": "7320:21:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "/",
                        "rightExpression": {
                          "argumentTypes": null,
                          "hexValue": "32",
                          "id": 12334,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "7344:1:39",
                          "subdenomination": null,
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_2_by_1",
                            "typeString": "int_const 2"
                          },
                          "value": "2"
                        },
                        "src": "7320:25:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "src": "7280:65:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 12337,
                    "nodeType": "ExpressionStatement",
                    "src": "7280:65:39"
                  }
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 12448,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "baseExpression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12436,
                            "name": "_paidFees",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 12018,
                            "src": "8310:9:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                              "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                            }
                          },
                          "id": 12437,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "totalContributedPerSide",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 11890,
                          "src": "8310:33:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                            "typeString": "uint256[2] storage ref[] storage ref"
                          }
                        },
                        "id": 12443,
                        "indexExpression": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "id": 12442,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12438,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "8344:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12439,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "totalContributedPerSide",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11890,
                              "src": "8344:33:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                "typeString": "uint256[2] storage ref[] storage ref"
                              }
                            },
                            "id": 12440,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "length",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "8344:40:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "-",
                          "rightExpression": {
                            "argumentTypes": null,
                            "hexValue": "31",
                            "id": 12441,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "8387:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_1_by_1",
                              "typeString": "int_const 1"
                            },
                            "value": "1"
                          },
                          "src": "8344:44:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "8310:79:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_uint256_$2_storage",
                          "typeString": "uint256[2] storage ref"
                        }
                      },
                      "id": 12445,
                      "indexExpression": {
                        "argumentTypes": null,
                        "id": 12444,
                        "name": "_side",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12008,
                        "src": "8390:5:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "IndexAccess",
                      "src": "8310:86:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">=",
                    "rightExpression": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 12446,
                        "name": "fundDisputeCache",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11952,
                        "src": "8400:16:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                          "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                        }
                      },
                      "id": 12447,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "requiredValueForSide",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11913,
                      "src": "8400:37:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "8310:127:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "expression": {
                      "argumentTypes": null,
                      "id": 12471,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftHandSide": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12455,
                          "name": "fundDisputeCache",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11952,
                          "src": "8525:16:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                          }
                        },
                        "id": 12457,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": true,
                        "memberName": "stillRequiredValueForSide",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 11917,
                        "src": "8525:42:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "Assignment",
                      "operator": "=",
                      "rightHandSide": {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 12470,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12458,
                            "name": "fundDisputeCache",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11952,
                            "src": "8570:16:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                              "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                            }
                          },
                          "id": 12459,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "requiredValueForSide",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 11913,
                          "src": "8570:37:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "-",
                        "rightExpression": {
                          "argumentTypes": null,
                          "baseExpression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12460,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "8610:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12461,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "totalContributedPerSide",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11890,
                              "src": "8610:33:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                "typeString": "uint256[2] storage ref[] storage ref"
                              }
                            },
                            "id": 12467,
                            "indexExpression": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "id": 12466,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12462,
                                    "name": "_paidFees",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 12018,
                                    "src": "8644:9:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                      "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                    }
                                  },
                                  "id": 12463,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "totalContributedPerSide",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11890,
                                  "src": "8644:33:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                    "typeString": "uint256[2] storage ref[] storage ref"
                                  }
                                },
                                "id": 12464,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": null,
                                "src": "8644:40:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "-",
                              "rightExpression": {
                                "argumentTypes": null,
                                "hexValue": "31",
                                "id": 12465,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "8687:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_1_by_1",
                                  "typeString": "int_const 1"
                                },
                                "value": "1"
                              },
                              "src": "8644:44:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "8610:79:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_uint256_$2_storage",
                              "typeString": "uint256[2] storage ref"
                            }
                          },
                          "id": 12469,
                          "indexExpression": {
                            "argumentTypes": null,
                            "id": 12468,
                            "name": "_side",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 12008,
                            "src": "8690:5:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "IndexAccess",
                          "src": "8610:86:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "src": "8570:126:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "src": "8525:171:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 12472,
                    "nodeType": "ExpressionStatement",
                    "src": "8525:171:39"
                  },
                  "id": 12473,
                  "nodeType": "IfStatement",
                  "src": "8306:390:39",
                  "trueBody": {
                    "expression": {
                      "argumentTypes": null,
                      "id": 12453,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftHandSide": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12449,
                          "name": "fundDisputeCache",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11952,
                          "src": "8451:16:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                          }
                        },
                        "id": 12451,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": true,
                        "memberName": "stillRequiredValueForSide",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 11917,
                        "src": "8451:42:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "Assignment",
                      "operator": "=",
                      "rightHandSide": {
                        "argumentTypes": null,
                        "hexValue": "30",
                        "id": 12452,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "8496:1:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_0_by_1",
                          "typeString": "int_const 0"
                        },
                        "value": "0"
                      },
                      "src": "8451:46:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 12454,
                    "nodeType": "ExpressionStatement",
                    "src": "8451:46:39"
                  }
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 12487,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 12474,
                        "name": "fundDisputeCache",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11952,
                        "src": "8706:16:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                          "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                        }
                      },
                      "id": 12476,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "keptValue",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11919,
                      "src": "8706:26:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "condition": {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 12481,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12477,
                            "name": "fundDisputeCache",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11952,
                            "src": "8735:16:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                              "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                            }
                          },
                          "id": 12478,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "stillRequiredValueForSide",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 11917,
                          "src": "8735:42:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": ">=",
                        "rightExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12479,
                            "name": "msg",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20639,
                            "src": "8781:3:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_magic_message",
                              "typeString": "msg"
                            }
                          },
                          "id": 12480,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "value",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "8781:9:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "src": "8735:55:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      "falseExpression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12484,
                          "name": "fundDisputeCache",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11952,
                          "src": "8817:16:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                          }
                        },
                        "id": 12485,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "stillRequiredValueForSide",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 11917,
                        "src": "8817:42:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "id": 12486,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "Conditional",
                      "src": "8735:124:39",
                      "trueExpression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12482,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20639,
                          "src": "8805:3:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 12483,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "value",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "8805:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "8706:153:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 12488,
                  "nodeType": "ExpressionStatement",
                  "src": "8706:153:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 12497,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 12489,
                        "name": "fundDisputeCache",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11952,
                        "src": "8869:16:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                          "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                        }
                      },
                      "id": 12491,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "refundedValue",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11921,
                      "src": "8869:30:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "commonType": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "id": 12496,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12492,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20639,
                          "src": "8902:3:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 12493,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "value",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "8902:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "-",
                      "rightExpression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12494,
                          "name": "fundDisputeCache",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11952,
                          "src": "8914:16:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                          }
                        },
                        "id": 12495,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "keptValue",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 11919,
                        "src": "8914:26:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "src": "8902:38:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "8869:71:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 12498,
                  "nodeType": "ExpressionStatement",
                  "src": "8869:71:39"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 12502,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 12499,
                        "name": "fundDisputeCache",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11952,
                        "src": "8954:16:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                          "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                        }
                      },
                      "id": 12500,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "keptValue",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11919,
                      "src": "8954:26:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">",
                    "rightExpression": {
                      "argumentTypes": null,
                      "hexValue": "30",
                      "id": 12501,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "8983:1:39",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "8954:30:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": null,
                  "id": 12550,
                  "nodeType": "IfStatement",
                  "src": "8950:396:39",
                  "trueBody": {
                    "id": 12549,
                    "nodeType": "Block",
                    "src": "8986:360:39",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12514,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12503,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "9000:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12510,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "totalValue",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11885,
                              "src": "9000:20:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                "typeString": "uint256[] storage ref"
                              }
                            },
                            "id": 12511,
                            "indexExpression": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "id": 12509,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12505,
                                    "name": "_paidFees",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 12018,
                                    "src": "9021:9:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                      "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                    }
                                  },
                                  "id": 12506,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "totalValue",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11885,
                                  "src": "9021:20:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                    "typeString": "uint256[] storage ref"
                                  }
                                },
                                "id": 12507,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": null,
                                "src": "9021:27:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "-",
                              "rightExpression": {
                                "argumentTypes": null,
                                "hexValue": "31",
                                "id": 12508,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "9051:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_1_by_1",
                                  "typeString": "int_const 1"
                                },
                                "value": "1"
                              },
                              "src": "9021:31:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "9000:53:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "+=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12512,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "9057:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12513,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "keptValue",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11919,
                            "src": "9057:26:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "9000:83:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12515,
                        "nodeType": "ExpressionStatement",
                        "src": "9000:83:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12529,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12516,
                                  "name": "_paidFees",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12018,
                                  "src": "9097:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                    "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                  }
                                },
                                "id": 12524,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "totalContributedPerSide",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11890,
                                "src": "9097:33:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                  "typeString": "uint256[2] storage ref[] storage ref"
                                }
                              },
                              "id": 12525,
                              "indexExpression": {
                                "argumentTypes": null,
                                "commonType": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                "id": 12522,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12518,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "9131:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12519,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "totalContributedPerSide",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11890,
                                    "src": "9131:33:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                      "typeString": "uint256[2] storage ref[] storage ref"
                                    }
                                  },
                                  "id": 12520,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "length",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "9131:40:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": "-",
                                "rightExpression": {
                                  "argumentTypes": null,
                                  "hexValue": "31",
                                  "id": 12521,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "9174:1:39",
                                  "subdenomination": null,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_1_by_1",
                                    "typeString": "int_const 1"
                                  },
                                  "value": "1"
                                },
                                "src": "9131:44:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "9097:79:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                "typeString": "uint256[2] storage ref"
                              }
                            },
                            "id": 12526,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 12523,
                              "name": "_side",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12008,
                              "src": "9177:5:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "9097:86:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "+=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12527,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "9187:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12528,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "keptValue",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11919,
                            "src": "9187:26:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "9097:116:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12530,
                        "nodeType": "ExpressionStatement",
                        "src": "9097:116:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12547,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "baseExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12531,
                                    "name": "_paidFees",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 12018,
                                    "src": "9227:9:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                      "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                    }
                                  },
                                  "id": 12541,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "contributions",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11900,
                                  "src": "9227:23:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                                    "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                                  }
                                },
                                "id": 12542,
                                "indexExpression": {
                                  "argumentTypes": null,
                                  "commonType": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  },
                                  "id": 12537,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "expression": {
                                        "argumentTypes": null,
                                        "id": 12533,
                                        "name": "_paidFees",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 12018,
                                        "src": "9251:9:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                          "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                        }
                                      },
                                      "id": 12534,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberName": "contributions",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": 11900,
                                      "src": "9251:23:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                                        "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                                      }
                                    },
                                    "id": 12535,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "length",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": null,
                                    "src": "9251:30:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": "-",
                                  "rightExpression": {
                                    "argumentTypes": null,
                                    "hexValue": "31",
                                    "id": 12536,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "number",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "9284:1:39",
                                    "subdenomination": null,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_rational_1_by_1",
                                      "typeString": "int_const 1"
                                    },
                                    "value": "1"
                                  },
                                  "src": "9251:34:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "9227:59:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$",
                                  "typeString": "mapping(address => uint256[2] storage ref)"
                                }
                              },
                              "id": 12543,
                              "indexExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12538,
                                  "name": "msg",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20639,
                                  "src": "9287:3:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_magic_message",
                                    "typeString": "msg"
                                  }
                                },
                                "id": 12539,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "sender",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": null,
                                "src": "9287:10:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "9227:71:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                "typeString": "uint256[2] storage ref"
                              }
                            },
                            "id": 12544,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 12540,
                              "name": "_side",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12008,
                              "src": "9299:5:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "9227:78:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "+=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12545,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "9309:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12546,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "keptValue",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11919,
                            "src": "9309:26:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "9227:108:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12548,
                        "nodeType": "ExpressionStatement",
                        "src": "9227:108:39"
                      }
                    ]
                  }
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 12554,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 12551,
                        "name": "fundDisputeCache",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11952,
                        "src": "9359:16:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                          "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                        }
                      },
                      "id": 12552,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "refundedValue",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11921,
                      "src": "9359:30:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">",
                    "rightExpression": {
                      "argumentTypes": null,
                      "hexValue": "30",
                      "id": 12553,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "9392:1:39",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "9359:34:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": null,
                  "id": 12564,
                  "nodeType": "IfStatement",
                  "src": "9355:91:39",
                  "trueBody": {
                    "expression": {
                      "argumentTypes": null,
                      "arguments": [
                        {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12560,
                            "name": "fundDisputeCache",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11952,
                            "src": "9415:16:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                              "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                            }
                          },
                          "id": 12561,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "refundedValue",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 11921,
                          "src": "9415:30:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        ],
                        "expression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12555,
                            "name": "msg",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20639,
                            "src": "9395:3:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_magic_message",
                              "typeString": "msg"
                            }
                          },
                          "id": 12558,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "sender",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "9395:10:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "id": 12559,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "transfer",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "9395:19:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$",
                          "typeString": "function (uint256)"
                        }
                      },
                      "id": 12562,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "9395:51:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_tuple$__$",
                        "typeString": "tuple()"
                      }
                    },
                    "id": 12563,
                    "nodeType": "ExpressionStatement",
                    "src": "9395:51:39"
                  }
                },
                {
                  "eventCall": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 12566,
                        "name": "_agreementID",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12006,
                        "src": "9474:12:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 12571,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12567,
                              "name": "_paidFees",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12018,
                              "src": "9488:9:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                              }
                            },
                            "id": 12568,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "stake",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11882,
                            "src": "9488:15:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                              "typeString": "uint256[] storage ref"
                            }
                          },
                          "id": 12569,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "length",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "9488:22:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "-",
                        "rightExpression": {
                          "argumentTypes": null,
                          "hexValue": "31",
                          "id": 12570,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "9513:1:39",
                          "subdenomination": null,
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_1_by_1",
                            "typeString": "int_const 1"
                          },
                          "value": "1"
                        },
                        "src": "9488:26:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12572,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20639,
                          "src": "9516:3:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 12573,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "9516:10:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12574,
                          "name": "fundDisputeCache",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11952,
                          "src": "9528:16:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                          }
                        },
                        "id": 12575,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "keptValue",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 11919,
                        "src": "9528:26:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 12565,
                      "name": "Contribution",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11932,
                      "src": "9461:12:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (bytes32,uint256,address,uint256)"
                      }
                    },
                    "id": 12576,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "9461:94:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12577,
                  "nodeType": "EmitStatement",
                  "src": "9456:99:39"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    },
                    "id": 12598,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "commonType": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "id": 12590,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "baseExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12578,
                              "name": "_paidFees",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12018,
                              "src": "9656:9:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                              }
                            },
                            "id": 12579,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "totalContributedPerSide",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11890,
                            "src": "9656:33:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                              "typeString": "uint256[2] storage ref[] storage ref"
                            }
                          },
                          "id": 12585,
                          "indexExpression": {
                            "argumentTypes": null,
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 12584,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12580,
                                  "name": "_paidFees",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12018,
                                  "src": "9690:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                    "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                  }
                                },
                                "id": 12581,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "totalContributedPerSide",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11890,
                                "src": "9690:33:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                  "typeString": "uint256[2] storage ref[] storage ref"
                                }
                              },
                              "id": 12582,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "length",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": null,
                              "src": "9690:40:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "-",
                            "rightExpression": {
                              "argumentTypes": null,
                              "hexValue": "31",
                              "id": 12583,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "9733:1:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_1_by_1",
                                "typeString": "int_const 1"
                              },
                              "value": "1"
                            },
                            "src": "9690:44:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "IndexAccess",
                          "src": "9656:79:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_uint256_$2_storage",
                            "typeString": "uint256[2] storage ref"
                          }
                        },
                        "id": 12587,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 12586,
                          "name": "_side",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 12008,
                          "src": "9736:5:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "9656:86:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": ">=",
                      "rightExpression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12588,
                          "name": "fundDisputeCache",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11952,
                          "src": "9746:16:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                          }
                        },
                        "id": 12589,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "requiredValueForSide",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 11913,
                        "src": "9746:37:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "src": "9656:127:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "||",
                    "rightExpression": {
                      "argumentTypes": null,
                      "components": [
                        {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          },
                          "id": 12596,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12591,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "9800:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12592,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "appealing",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11905,
                            "src": "9800:26:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "&&",
                          "rightExpression": {
                            "argumentTypes": null,
                            "id": 12595,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "UnaryOperation",
                            "operator": "!",
                            "prefix": true,
                            "src": "9830:39:39",
                            "subExpression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12593,
                                "name": "fundDisputeCache",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 11952,
                                "src": "9831:16:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                  "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                }
                              },
                              "id": 12594,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "appealPeriodSupported",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11911,
                              "src": "9831:38:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "src": "9800:69:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        }
                      ],
                      "id": 12597,
                      "isConstant": false,
                      "isInlineArray": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "TupleExpression",
                      "src": "9799:71:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "src": "9656:214:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": null,
                  "id": 12822,
                  "nodeType": "IfStatement",
                  "src": "9639:2303:39",
                  "trueBody": {
                    "id": 12821,
                    "nodeType": "Block",
                    "src": "9881:2061:39",
                    "statements": [
                      {
                        "condition": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          },
                          "id": 12621,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "argumentTypes": null,
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 12601,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "argumentTypes": null,
                              "id": 12599,
                              "name": "_side",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12008,
                              "src": "9899:5:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "==",
                            "rightExpression": {
                              "argumentTypes": null,
                              "hexValue": "30",
                              "id": 12600,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "9908:1:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            },
                            "src": "9899:10:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "&&",
                          "rightExpression": {
                            "argumentTypes": null,
                            "components": [
                              {
                                "argumentTypes": null,
                                "condition": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12602,
                                    "name": "fundDisputeCache",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11952,
                                    "src": "9914:16:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                      "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                    }
                                  },
                                  "id": 12603,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "appealing",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11905,
                                  "src": "9914:26:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "falseExpression": {
                                  "argumentTypes": null,
                                  "commonType": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  },
                                  "id": 12618,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "baseExpression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12606,
                                          "name": "_paidFees",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12018,
                                          "src": "9984:9:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                            "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                          }
                                        },
                                        "id": 12607,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "totalContributedPerSide",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 11890,
                                        "src": "9984:33:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                          "typeString": "uint256[2] storage ref[] storage ref"
                                        }
                                      },
                                      "id": 12613,
                                      "indexExpression": {
                                        "argumentTypes": null,
                                        "commonType": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        },
                                        "id": 12612,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftExpression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12608,
                                              "name": "_paidFees",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12018,
                                              "src": "10018:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                              }
                                            },
                                            "id": 12609,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "totalContributedPerSide",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 11890,
                                            "src": "10018:33:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                              "typeString": "uint256[2] storage ref[] storage ref"
                                            }
                                          },
                                          "id": 12610,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "length",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": null,
                                          "src": "10018:40:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "nodeType": "BinaryOperation",
                                        "operator": "-",
                                        "rightExpression": {
                                          "argumentTypes": null,
                                          "hexValue": "31",
                                          "id": 12611,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "number",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "10061:1:39",
                                          "subdenomination": null,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_rational_1_by_1",
                                            "typeString": "int_const 1"
                                          },
                                          "value": "1"
                                        },
                                        "src": "10018:44:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "nodeType": "IndexAccess",
                                      "src": "9984:79:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                        "typeString": "uint256[2] storage ref"
                                      }
                                    },
                                    "id": 12615,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "hexValue": "31",
                                      "id": 12614,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "number",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "10064:1:39",
                                      "subdenomination": null,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_rational_1_by_1",
                                        "typeString": "int_const 1"
                                      },
                                      "value": "1"
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "9984:82:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": "<",
                                  "rightExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12616,
                                      "name": "fundDisputeCache",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11952,
                                      "src": "10069:16:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                        "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                      }
                                    },
                                    "id": 12617,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "requiredValueForSide",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11913,
                                    "src": "10069:37:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "src": "9984:122:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "id": 12619,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "Conditional",
                                "src": "9914:192:39",
                                "trueExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12604,
                                    "name": "fundDisputeCache",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11952,
                                    "src": "9943:16:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                      "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                    }
                                  },
                                  "id": 12605,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "appealPeriodSupported",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11911,
                                  "src": "9943:38:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              }
                            ],
                            "id": 12620,
                            "isConstant": false,
                            "isInlineArray": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "TupleExpression",
                            "src": "9913:194:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "src": "9899:208:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "falseBody": {
                          "id": 12819,
                          "nodeType": "Block",
                          "src": "10367:1565:39",
                          "statements": [
                            {
                              "condition": {
                                "argumentTypes": null,
                                "id": 12647,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "UnaryOperation",
                                "operator": "!",
                                "prefix": true,
                                "src": "10423:27:39",
                                "subExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12645,
                                    "name": "fundDisputeCache",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11952,
                                    "src": "10424:16:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                      "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                    }
                                  },
                                  "id": 12646,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "appealing",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11905,
                                  "src": "10424:26:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "falseBody": {
                                "id": 12755,
                                "nodeType": "Block",
                                "src": "11080:347:39",
                                "statements": [
                                  {
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12727,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftHandSide": {
                                        "argumentTypes": null,
                                        "baseExpression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12712,
                                            "name": "_paidFees",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12018,
                                            "src": "11113:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                              "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                            }
                                          },
                                          "id": 12719,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "ruling",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 11879,
                                          "src": "11113:16:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                            "typeString": "uint256[] storage ref"
                                          }
                                        },
                                        "id": 12720,
                                        "indexExpression": {
                                          "argumentTypes": null,
                                          "commonType": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          },
                                          "id": 12718,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "leftExpression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "id": 12714,
                                                "name": "_paidFees",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 12018,
                                                "src": "11130:9:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                }
                                              },
                                              "id": 12715,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "ruling",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 11879,
                                              "src": "11130:16:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                                "typeString": "uint256[] storage ref"
                                              }
                                            },
                                            "id": 12716,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "length",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": null,
                                            "src": "11130:23:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "nodeType": "BinaryOperation",
                                          "operator": "-",
                                          "rightExpression": {
                                            "argumentTypes": null,
                                            "hexValue": "31",
                                            "id": 12717,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "11156:1:39",
                                            "subdenomination": null,
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_1_by_1",
                                              "typeString": "int_const 1"
                                            },
                                            "value": "1"
                                          },
                                          "src": "11130:27:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": true,
                                        "nodeType": "IndexAccess",
                                        "src": "11113:45:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "nodeType": "Assignment",
                                      "operator": "=",
                                      "rightHandSide": {
                                        "argumentTypes": null,
                                        "arguments": [
                                          {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12724,
                                              "name": "agreement",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12012,
                                              "src": "11196:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                                "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                              }
                                            },
                                            "id": 12725,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "disputeID",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 10718,
                                            "src": "11196:19:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          }
                                        ],
                                        "expression": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          ],
                                          "expression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12721,
                                              "name": "agreement",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12012,
                                              "src": "11161:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                                "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                              }
                                            },
                                            "id": 12722,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "arbitrator",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 10716,
                                            "src": "11161:20:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                              "typeString": "contract Arbitrator"
                                            }
                                          },
                                          "id": 12723,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "currentRuling",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 4020,
                                          "src": "11161:34:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$",
                                            "typeString": "function (uint256) view external returns (uint256)"
                                          }
                                        },
                                        "id": 12726,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "kind": "functionCall",
                                        "lValueRequested": false,
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "11161:55:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "src": "11113:103:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "id": 12728,
                                    "nodeType": "ExpressionStatement",
                                    "src": "11113:103:39"
                                  },
                                  {
                                    "expression": {
                                      "argumentTypes": null,
                                      "arguments": [
                                        {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12739,
                                            "name": "agreement",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12012,
                                            "src": "11295:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                            }
                                          },
                                          "id": 12740,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "disputeID",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 10718,
                                          "src": "11295:19:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12741,
                                            "name": "agreement",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12012,
                                            "src": "11316:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                            }
                                          },
                                          "id": 12742,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "extraData",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 10712,
                                          "src": "11316:19:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_bytes_storage",
                                            "typeString": "bytes storage ref"
                                          }
                                        }
                                      ],
                                      "expression": {
                                        "argumentTypes": [
                                          {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          },
                                          {
                                            "typeIdentifier": "t_bytes_storage",
                                            "typeString": "bytes storage ref"
                                          }
                                        ],
                                        "arguments": [
                                          {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12736,
                                              "name": "fundDisputeCache",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 11952,
                                              "src": "11272:16:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                              }
                                            },
                                            "id": 12737,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "cost",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 11903,
                                            "src": "11272:21:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          }
                                        ],
                                        "expression": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          ],
                                          "expression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "id": 12729,
                                                "name": "agreement",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 12012,
                                                "src": "11238:9:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                                  "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                                }
                                              },
                                              "id": 12733,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "arbitrator",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 10716,
                                              "src": "11238:20:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                                "typeString": "contract Arbitrator"
                                              }
                                            },
                                            "id": 12734,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "appeal",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 3987,
                                            "src": "11238:27:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$__$",
                                              "typeString": "function (uint256,bytes memory) payable external"
                                            }
                                          },
                                          "id": 12735,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "value",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": null,
                                          "src": "11238:33:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_function_setvalue_nonpayable$_t_uint256_$returns$_t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$__$value_$",
                                            "typeString": "function (uint256) returns (function (uint256,bytes memory) payable external)"
                                          }
                                        },
                                        "id": 12738,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "kind": "functionCall",
                                        "lValueRequested": false,
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "11238:56:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$__$value",
                                          "typeString": "function (uint256,bytes memory) payable external"
                                        }
                                      },
                                      "id": 12743,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "functionCall",
                                      "lValueRequested": false,
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "11238:98:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_tuple$__$",
                                        "typeString": "tuple()"
                                      }
                                    },
                                    "id": 12744,
                                    "nodeType": "ExpressionStatement",
                                    "src": "11238:98:39"
                                  },
                                  {
                                    "condition": {
                                      "argumentTypes": null,
                                      "id": 12747,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "nodeType": "UnaryOperation",
                                      "operator": "!",
                                      "prefix": true,
                                      "src": "11362:19:39",
                                      "subExpression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12745,
                                          "name": "agreement",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12012,
                                          "src": "11363:9:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                            "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                          }
                                        },
                                        "id": 12746,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "appealed",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 10722,
                                        "src": "11363:18:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bool",
                                          "typeString": "bool"
                                        }
                                      },
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    },
                                    "falseBody": null,
                                    "id": 12754,
                                    "nodeType": "IfStatement",
                                    "src": "11358:50:39",
                                    "trueBody": {
                                      "expression": {
                                        "argumentTypes": null,
                                        "id": 12752,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftHandSide": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12748,
                                            "name": "agreement",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12012,
                                            "src": "11383:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                            }
                                          },
                                          "id": 12750,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": true,
                                          "memberName": "appealed",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 10722,
                                          "src": "11383:18:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_bool",
                                            "typeString": "bool"
                                          }
                                        },
                                        "nodeType": "Assignment",
                                        "operator": "=",
                                        "rightHandSide": {
                                          "argumentTypes": null,
                                          "hexValue": "74727565",
                                          "id": 12751,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "bool",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "11404:4:39",
                                          "subdenomination": null,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_bool",
                                            "typeString": "bool"
                                          },
                                          "value": "true"
                                        },
                                        "src": "11383:25:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bool",
                                          "typeString": "bool"
                                        }
                                      },
                                      "id": 12753,
                                      "nodeType": "ExpressionStatement",
                                      "src": "11383:25:39"
                                    }
                                  }
                                ]
                              },
                              "id": 12756,
                              "nodeType": "IfStatement",
                              "src": "10419:1008:39",
                              "trueBody": {
                                "id": 12711,
                                "nodeType": "Block",
                                "src": "10452:622:39",
                                "statements": [
                                  {
                                    "condition": {
                                      "argumentTypes": null,
                                      "commonType": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      },
                                      "id": 12665,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "argumentTypes": null,
                                        "baseExpression": {
                                          "argumentTypes": null,
                                          "baseExpression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12648,
                                              "name": "_paidFees",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12018,
                                              "src": "10494:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                              }
                                            },
                                            "id": 12649,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "totalContributedPerSide",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 11890,
                                            "src": "10494:33:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                              "typeString": "uint256[2] storage ref[] storage ref"
                                            }
                                          },
                                          "id": 12655,
                                          "indexExpression": {
                                            "argumentTypes": null,
                                            "commonType": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            },
                                            "id": 12654,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "leftExpression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "expression": {
                                                  "argumentTypes": null,
                                                  "id": 12650,
                                                  "name": "_paidFees",
                                                  "nodeType": "Identifier",
                                                  "overloadedDeclarations": [],
                                                  "referencedDeclaration": 12018,
                                                  "src": "10528:9:39",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                    "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                  }
                                                },
                                                "id": 12651,
                                                "isConstant": false,
                                                "isLValue": true,
                                                "isPure": false,
                                                "lValueRequested": false,
                                                "memberName": "totalContributedPerSide",
                                                "nodeType": "MemberAccess",
                                                "referencedDeclaration": 11890,
                                                "src": "10528:33:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                                  "typeString": "uint256[2] storage ref[] storage ref"
                                                }
                                              },
                                              "id": 12652,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "length",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": null,
                                              "src": "10528:40:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            },
                                            "nodeType": "BinaryOperation",
                                            "operator": "-",
                                            "rightExpression": {
                                              "argumentTypes": null,
                                              "hexValue": "31",
                                              "id": 12653,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": true,
                                              "kind": "number",
                                              "lValueRequested": false,
                                              "nodeType": "Literal",
                                              "src": "10571:1:39",
                                              "subdenomination": null,
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_rational_1_by_1",
                                                "typeString": "int_const 1"
                                              },
                                              "value": "1"
                                            },
                                            "src": "10528:44:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "IndexAccess",
                                          "src": "10494:79:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                            "typeString": "uint256[2] storage ref"
                                          }
                                        },
                                        "id": 12662,
                                        "indexExpression": {
                                          "argumentTypes": null,
                                          "condition": {
                                            "argumentTypes": null,
                                            "commonType": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            },
                                            "id": 12658,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "leftExpression": {
                                              "argumentTypes": null,
                                              "id": 12656,
                                              "name": "_side",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12008,
                                              "src": "10574:5:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            },
                                            "nodeType": "BinaryOperation",
                                            "operator": "==",
                                            "rightExpression": {
                                              "argumentTypes": null,
                                              "hexValue": "30",
                                              "id": 12657,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": true,
                                              "kind": "number",
                                              "lValueRequested": false,
                                              "nodeType": "Literal",
                                              "src": "10583:1:39",
                                              "subdenomination": null,
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_rational_0_by_1",
                                                "typeString": "int_const 0"
                                              },
                                              "value": "0"
                                            },
                                            "src": "10574:10:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_bool",
                                              "typeString": "bool"
                                            }
                                          },
                                          "falseExpression": {
                                            "argumentTypes": null,
                                            "hexValue": "30",
                                            "id": 12660,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "10591:1:39",
                                            "subdenomination": null,
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_0_by_1",
                                              "typeString": "int_const 0"
                                            },
                                            "value": "0"
                                          },
                                          "id": 12661,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "Conditional",
                                          "src": "10574:18:39",
                                          "trueExpression": {
                                            "argumentTypes": null,
                                            "hexValue": "31",
                                            "id": 12659,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "10587:1:39",
                                            "subdenomination": null,
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_1_by_1",
                                              "typeString": "int_const 1"
                                            },
                                            "value": "1"
                                          },
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint8",
                                            "typeString": "uint8"
                                          }
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "nodeType": "IndexAccess",
                                        "src": "10494:99:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": "<",
                                      "rightExpression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12663,
                                          "name": "fundDisputeCache",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 11952,
                                          "src": "10596:16:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                          }
                                        },
                                        "id": 12664,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "requiredValueForSide",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 11913,
                                        "src": "10596:37:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "src": "10494:139:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    },
                                    "falseBody": null,
                                    "id": 12667,
                                    "nodeType": "IfStatement",
                                    "src": "10490:152:39",
                                    "trueBody": {
                                      "expression": null,
                                      "functionReturnParameters": 12010,
                                      "id": 12666,
                                      "nodeType": "Return",
                                      "src": "10635:7:39"
                                    }
                                  },
                                  {
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12683,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftHandSide": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12668,
                                          "name": "agreement",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12012,
                                          "src": "10663:9:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                            "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                          }
                                        },
                                        "id": 12670,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": true,
                                        "memberName": "disputeID",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 10718,
                                        "src": "10663:19:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "nodeType": "Assignment",
                                      "operator": "=",
                                      "rightHandSide": {
                                        "argumentTypes": null,
                                        "arguments": [
                                          {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12678,
                                              "name": "agreement",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12012,
                                              "src": "10749:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                                "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                              }
                                            },
                                            "id": 12679,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "numberOfChoices",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 10710,
                                            "src": "10749:25:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12680,
                                              "name": "agreement",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12012,
                                              "src": "10776:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                                "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                              }
                                            },
                                            "id": 12681,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "extraData",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 10712,
                                            "src": "10776:19:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_bytes_storage",
                                              "typeString": "bytes storage ref"
                                            }
                                          }
                                        ],
                                        "expression": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            },
                                            {
                                              "typeIdentifier": "t_bytes_storage",
                                              "typeString": "bytes storage ref"
                                            }
                                          ],
                                          "arguments": [
                                            {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "id": 12675,
                                                "name": "fundDisputeCache",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 11952,
                                                "src": "10726:16:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                                  "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                                }
                                              },
                                              "id": 12676,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "cost",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 11903,
                                              "src": "10726:21:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            }
                                          ],
                                          "expression": {
                                            "argumentTypes": [
                                              {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            ],
                                            "expression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "expression": {
                                                  "argumentTypes": null,
                                                  "id": 12671,
                                                  "name": "agreement",
                                                  "nodeType": "Identifier",
                                                  "overloadedDeclarations": [],
                                                  "referencedDeclaration": 12012,
                                                  "src": "10685:9:39",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                                  }
                                                },
                                                "id": 12672,
                                                "isConstant": false,
                                                "isLValue": true,
                                                "isPure": false,
                                                "lValueRequested": false,
                                                "memberName": "arbitrator",
                                                "nodeType": "MemberAccess",
                                                "referencedDeclaration": 10716,
                                                "src": "10685:20:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                                  "typeString": "contract Arbitrator"
                                                }
                                              },
                                              "id": 12673,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "createDispute",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 3960,
                                              "src": "10685:34:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$",
                                                "typeString": "function (uint256,bytes memory) payable external returns (uint256)"
                                              }
                                            },
                                            "id": 12674,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "value",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": null,
                                            "src": "10685:40:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_function_setvalue_nonpayable$_t_uint256_$returns$_t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$value_$",
                                              "typeString": "function (uint256) returns (function (uint256,bytes memory) payable external returns (uint256))"
                                            }
                                          },
                                          "id": 12677,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "kind": "functionCall",
                                          "lValueRequested": false,
                                          "names": [],
                                          "nodeType": "FunctionCall",
                                          "src": "10685:63:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$value",
                                            "typeString": "function (uint256,bytes memory) payable external returns (uint256)"
                                          }
                                        },
                                        "id": 12682,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "kind": "functionCall",
                                        "lValueRequested": false,
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "10685:111:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "src": "10663:133:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "id": 12684,
                                    "nodeType": "ExpressionStatement",
                                    "src": "10663:133:39"
                                  },
                                  {
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12689,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftHandSide": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12685,
                                          "name": "agreement",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12012,
                                          "src": "10818:9:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                            "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                          }
                                        },
                                        "id": 12687,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": true,
                                        "memberName": "disputed",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 10720,
                                        "src": "10818:18:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bool",
                                          "typeString": "bool"
                                        }
                                      },
                                      "nodeType": "Assignment",
                                      "operator": "=",
                                      "rightHandSide": {
                                        "argumentTypes": null,
                                        "hexValue": "74727565",
                                        "id": 12688,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "bool",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "10839:4:39",
                                        "subdenomination": null,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bool",
                                          "typeString": "bool"
                                        },
                                        "value": "true"
                                      },
                                      "src": "10818:25:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    },
                                    "id": 12690,
                                    "nodeType": "ExpressionStatement",
                                    "src": "10818:25:39"
                                  },
                                  {
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12699,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftHandSide": {
                                        "argumentTypes": null,
                                        "baseExpression": {
                                          "argumentTypes": null,
                                          "baseExpression": {
                                            "argumentTypes": null,
                                            "id": 12691,
                                            "name": "arbitratorAndDisputeIDToAgreementID",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 10737,
                                            "src": "10865:35:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_uint256_$_t_bytes32_$_$",
                                              "typeString": "mapping(address => mapping(uint256 => bytes32))"
                                            }
                                          },
                                          "id": 12696,
                                          "indexExpression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12692,
                                              "name": "agreement",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12012,
                                              "src": "10901:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                                "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                              }
                                            },
                                            "id": 12693,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "arbitrator",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 10716,
                                            "src": "10901:20:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                              "typeString": "contract Arbitrator"
                                            }
                                          },
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "IndexAccess",
                                          "src": "10865:57:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes32_$",
                                            "typeString": "mapping(uint256 => bytes32)"
                                          }
                                        },
                                        "id": 12697,
                                        "indexExpression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12694,
                                            "name": "agreement",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12012,
                                            "src": "10923:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                            }
                                          },
                                          "id": 12695,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "disputeID",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 10718,
                                          "src": "10923:19:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": true,
                                        "nodeType": "IndexAccess",
                                        "src": "10865:78:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bytes32",
                                          "typeString": "bytes32"
                                        }
                                      },
                                      "nodeType": "Assignment",
                                      "operator": "=",
                                      "rightHandSide": {
                                        "argumentTypes": null,
                                        "id": 12698,
                                        "name": "_agreementID",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 12006,
                                        "src": "10946:12:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bytes32",
                                          "typeString": "bytes32"
                                        }
                                      },
                                      "src": "10865:93:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes32",
                                        "typeString": "bytes32"
                                      }
                                    },
                                    "id": 12700,
                                    "nodeType": "ExpressionStatement",
                                    "src": "10865:93:39"
                                  },
                                  {
                                    "eventCall": {
                                      "argumentTypes": null,
                                      "arguments": [
                                        {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12702,
                                            "name": "agreement",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12012,
                                            "src": "10993:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                            }
                                          },
                                          "id": 12703,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "arbitrator",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 10716,
                                          "src": "10993:20:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                            "typeString": "contract Arbitrator"
                                          }
                                        },
                                        {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12704,
                                            "name": "agreement",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12012,
                                            "src": "11015:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                            }
                                          },
                                          "id": 12705,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "disputeID",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 10718,
                                          "src": "11015:19:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        {
                                          "argumentTypes": null,
                                          "arguments": [
                                            {
                                              "argumentTypes": null,
                                              "id": 12707,
                                              "name": "_agreementID",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12006,
                                              "src": "11041:12:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_bytes32",
                                                "typeString": "bytes32"
                                              }
                                            }
                                          ],
                                          "expression": {
                                            "argumentTypes": [
                                              {
                                                "typeIdentifier": "t_bytes32",
                                                "typeString": "bytes32"
                                              }
                                            ],
                                            "id": 12706,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "lValueRequested": false,
                                            "nodeType": "ElementaryTypeNameExpression",
                                            "src": "11036:4:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_type$_t_uint256_$",
                                              "typeString": "type(uint256)"
                                            },
                                            "typeName": "uint"
                                          },
                                          "id": 12708,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "kind": "typeConversion",
                                          "lValueRequested": false,
                                          "names": [],
                                          "nodeType": "FunctionCall",
                                          "src": "11036:18:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        }
                                      ],
                                      "expression": {
                                        "argumentTypes": [
                                          {
                                            "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                            "typeString": "contract Arbitrator"
                                          },
                                          {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          },
                                          {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        ],
                                        "id": 12701,
                                        "name": "Dispute",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 529,
                                        "src": "10985:7:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_function_event_nonpayable$_t_contract$_Arbitrator_$4021_$_t_uint256_$_t_uint256_$returns$__$",
                                          "typeString": "function (contract Arbitrator,uint256,uint256)"
                                        }
                                      },
                                      "id": 12709,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "functionCall",
                                      "lValueRequested": false,
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "10985:70:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_tuple$__$",
                                        "typeString": "tuple()"
                                      }
                                    },
                                    "id": 12710,
                                    "nodeType": "EmitStatement",
                                    "src": "10980:75:39"
                                  }
                                ]
                              }
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "id": 12768,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12757,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "11488:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12764,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "totalValue",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11885,
                                    "src": "11488:20:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                      "typeString": "uint256[] storage ref"
                                    }
                                  },
                                  "id": 12765,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "commonType": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    },
                                    "id": 12763,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "leftExpression": {
                                      "argumentTypes": null,
                                      "expression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12759,
                                          "name": "_paidFees",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12018,
                                          "src": "11509:9:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                            "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                          }
                                        },
                                        "id": 12760,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "totalValue",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 11885,
                                        "src": "11509:20:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                          "typeString": "uint256[] storage ref"
                                        }
                                      },
                                      "id": 12761,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberName": "length",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": null,
                                      "src": "11509:27:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "nodeType": "BinaryOperation",
                                    "operator": "-",
                                    "rightExpression": {
                                      "argumentTypes": null,
                                      "hexValue": "31",
                                      "id": 12762,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "number",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "11539:1:39",
                                      "subdenomination": null,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_rational_1_by_1",
                                        "typeString": "int_const 1"
                                      },
                                      "value": "1"
                                    },
                                    "src": "11509:31:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "nodeType": "IndexAccess",
                                  "src": "11488:53:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "-=",
                                "rightHandSide": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12766,
                                    "name": "fundDisputeCache",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11952,
                                    "src": "11545:16:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                      "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                    }
                                  },
                                  "id": 12767,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "cost",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11903,
                                  "src": "11545:21:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "src": "11488:78:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 12769,
                              "nodeType": "ExpressionStatement",
                              "src": "11488:78:39"
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "hexValue": "30",
                                    "id": 12775,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "number",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "11654:1:39",
                                    "subdenomination": null,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_rational_0_by_1",
                                      "typeString": "int_const 0"
                                    },
                                    "value": "0"
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_rational_0_by_1",
                                      "typeString": "int_const 0"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12770,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "11632:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12773,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "ruling",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11879,
                                    "src": "11632:16:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                      "typeString": "uint256[] storage ref"
                                    }
                                  },
                                  "id": 12774,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "push",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "11632:21:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
                                    "typeString": "function (uint256) returns (uint256)"
                                  }
                                },
                                "id": 12776,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "11632:24:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 12777,
                              "nodeType": "ExpressionStatement",
                              "src": "11632:24:39"
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "id": 12783,
                                    "name": "stake",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11946,
                                    "src": "11695:5:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12778,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "11674:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12781,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "stake",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11882,
                                    "src": "11674:15:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                      "typeString": "uint256[] storage ref"
                                    }
                                  },
                                  "id": 12782,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "push",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "11674:20:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
                                    "typeString": "function (uint256) returns (uint256)"
                                  }
                                },
                                "id": 12784,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "11674:27:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 12785,
                              "nodeType": "ExpressionStatement",
                              "src": "11674:27:39"
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "hexValue": "30",
                                    "id": 12791,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "number",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "11745:1:39",
                                    "subdenomination": null,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_rational_0_by_1",
                                      "typeString": "int_const 0"
                                    },
                                    "value": "0"
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_rational_0_by_1",
                                      "typeString": "int_const 0"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12786,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "11719:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12789,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "totalValue",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11885,
                                    "src": "11719:20:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                      "typeString": "uint256[] storage ref"
                                    }
                                  },
                                  "id": 12790,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "push",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "11719:25:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
                                    "typeString": "function (uint256) returns (uint256)"
                                  }
                                },
                                "id": 12792,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "11719:28:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 12793,
                              "nodeType": "ExpressionStatement",
                              "src": "11719:28:39"
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "components": [
                                      {
                                        "argumentTypes": null,
                                        "hexValue": "30",
                                        "id": 12799,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "11805:1:39",
                                        "subdenomination": null,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_0_by_1",
                                          "typeString": "int_const 0"
                                        },
                                        "value": "0"
                                      },
                                      {
                                        "argumentTypes": null,
                                        "hexValue": "30",
                                        "id": 12800,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "11808:1:39",
                                        "subdenomination": null,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_0_by_1",
                                          "typeString": "int_const 0"
                                        },
                                        "value": "0"
                                      }
                                    ],
                                    "id": 12801,
                                    "isConstant": false,
                                    "isInlineArray": true,
                                    "isLValue": false,
                                    "isPure": true,
                                    "lValueRequested": false,
                                    "nodeType": "TupleExpression",
                                    "src": "11804:6:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_uint8_$2_memory_ptr",
                                      "typeString": "uint8[2] memory"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_array$_t_uint8_$2_memory_ptr",
                                      "typeString": "uint8[2] memory"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12794,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "11765:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12797,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "totalContributedPerSide",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11890,
                                    "src": "11765:33:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                      "typeString": "uint256[2] storage ref[] storage ref"
                                    }
                                  },
                                  "id": 12798,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "push",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "11765:38:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_uint256_$2_storage_$returns$_t_uint256_$",
                                    "typeString": "function (uint256[2] storage ref) returns (uint256)"
                                  }
                                },
                                "id": 12802,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "11765:46:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 12803,
                              "nodeType": "ExpressionStatement",
                              "src": "11765:46:39"
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "hexValue": "66616c7365",
                                    "id": 12809,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "bool",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "11861:5:39",
                                    "subdenomination": null,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bool",
                                      "typeString": "bool"
                                    },
                                    "value": "false"
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_bool",
                                      "typeString": "bool"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12804,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "11829:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12807,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "loserFullyFunded",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11893,
                                    "src": "11829:26:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                                      "typeString": "bool[] storage ref"
                                    }
                                  },
                                  "id": 12808,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "push",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "11829:31:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_arraypush_nonpayable$_t_bool_$returns$_t_uint256_$",
                                    "typeString": "function (bool) returns (uint256)"
                                  }
                                },
                                "id": 12810,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "11829:38:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 12811,
                              "nodeType": "ExpressionStatement",
                              "src": "11829:38:39"
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "id": 12817,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "UnaryOperation",
                                "operator": "++",
                                "prefix": false,
                                "src": "11885:32:39",
                                "subExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12812,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "11885:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12815,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "contributions",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11900,
                                    "src": "11885:23:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                                      "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                                    }
                                  },
                                  "id": 12816,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "memberName": "length",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "11885:30:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 12818,
                              "nodeType": "ExpressionStatement",
                              "src": "11885:32:39"
                            }
                          ]
                        },
                        "id": 12820,
                        "nodeType": "IfStatement",
                        "src": "9895:2037:39",
                        "trueBody": {
                          "id": 12644,
                          "nodeType": "Block",
                          "src": "10109:252:39",
                          "statements": [
                            {
                              "condition": {
                                "argumentTypes": null,
                                "id": 12630,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "UnaryOperation",
                                "operator": "!",
                                "prefix": true,
                                "src": "10186:66:39",
                                "subExpression": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12622,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "10187:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12623,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "loserFullyFunded",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11893,
                                    "src": "10187:26:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                                      "typeString": "bool[] storage ref"
                                    }
                                  },
                                  "id": 12629,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "commonType": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    },
                                    "id": 12628,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "leftExpression": {
                                      "argumentTypes": null,
                                      "expression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12624,
                                          "name": "_paidFees",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12018,
                                          "src": "10214:9:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                            "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                          }
                                        },
                                        "id": 12625,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "loserFullyFunded",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 11893,
                                        "src": "10214:26:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                                          "typeString": "bool[] storage ref"
                                        }
                                      },
                                      "id": 12626,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberName": "length",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": null,
                                      "src": "10214:33:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "nodeType": "BinaryOperation",
                                    "operator": "-",
                                    "rightExpression": {
                                      "argumentTypes": null,
                                      "hexValue": "31",
                                      "id": 12627,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "number",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "10250:1:39",
                                      "subdenomination": null,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_rational_1_by_1",
                                        "typeString": "int_const 1"
                                      },
                                      "value": "1"
                                    },
                                    "src": "10214:37:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "10187:65:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "falseBody": null,
                              "id": 12643,
                              "nodeType": "IfStatement",
                              "src": "10182:164:39",
                              "trueBody": {
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12641,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftHandSide": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "expression": {
                                        "argumentTypes": null,
                                        "id": 12631,
                                        "name": "_paidFees",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 12018,
                                        "src": "10274:9:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                          "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                        }
                                      },
                                      "id": 12638,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberName": "loserFullyFunded",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": 11893,
                                      "src": "10274:26:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                                        "typeString": "bool[] storage ref"
                                      }
                                    },
                                    "id": 12639,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "commonType": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      },
                                      "id": 12637,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12633,
                                            "name": "_paidFees",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12018,
                                            "src": "10301:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                              "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                            }
                                          },
                                          "id": 12634,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "loserFullyFunded",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 11893,
                                          "src": "10301:26:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                                            "typeString": "bool[] storage ref"
                                          }
                                        },
                                        "id": 12635,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "length",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": null,
                                        "src": "10301:33:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": "-",
                                      "rightExpression": {
                                        "argumentTypes": null,
                                        "hexValue": "31",
                                        "id": 12636,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "10337:1:39",
                                        "subdenomination": null,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_1_by_1",
                                          "typeString": "int_const 1"
                                        },
                                        "value": "1"
                                      },
                                      "src": "10301:37:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": true,
                                    "nodeType": "IndexAccess",
                                    "src": "10274:65:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bool",
                                      "typeString": "bool"
                                    }
                                  },
                                  "nodeType": "Assignment",
                                  "operator": "=",
                                  "rightHandSide": {
                                    "argumentTypes": null,
                                    "hexValue": "74727565",
                                    "id": 12640,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "bool",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "10342:4:39",
                                    "subdenomination": null,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bool",
                                      "typeString": "bool"
                                    },
                                    "value": "true"
                                  },
                                  "src": "10274:72:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "id": 12642,
                                "nodeType": "ExpressionStatement",
                                "src": "10274:72:39"
                              }
                            }
                          ]
                        }
                      }
                    ]
                  }
                }
              ]
            },
            "documentation": "@dev Funds the specified side of a dispute for the specified agreement or times out the dispute if it is taking too long to fund.\n @param _agreementID The ID of the agreement.\n @param _side The side. 0 for the side that lost the previous round, if any, and 1 for the one that won.",
            "id": 12824,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "fundDispute",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 12009,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12006,
                  "name": "_agreementID",
                  "nodeType": "VariableDeclaration",
                  "scope": 12824,
                  "src": "3749:20:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 12005,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3749:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12008,
                  "name": "_side",
                  "nodeType": "VariableDeclaration",
                  "scope": 12824,
                  "src": "3771:10:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12007,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "3771:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3748:34:39"
            },
            "payable": true,
            "returnParameters": {
              "id": 12010,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3798:0:39"
            },
            "scope": 13089,
            "src": "3728:8220:39",
            "stateMutability": "payable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 13008,
              "nodeType": "Block",
              "src": "12217:1453:39",
              "statements": [
                {
                  "assignments": [
                    12832
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 12832,
                      "name": "agreement",
                      "nodeType": "VariableDeclaration",
                      "scope": 13009,
                      "src": "12227:27:39",
                      "stateVariable": false,
                      "storageLocation": "storage",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                        "typeString": "struct MultiPartyAgreements.Agreement"
                      },
                      "typeName": {
                        "contractScope": null,
                        "id": 12831,
                        "name": "Agreement",
                        "nodeType": "UserDefinedTypeName",
                        "referencedDeclaration": 10727,
                        "src": "12227:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                          "typeString": "struct MultiPartyAgreements.Agreement"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 12836,
                  "initialValue": {
                    "argumentTypes": null,
                    "baseExpression": {
                      "argumentTypes": null,
                      "id": 12833,
                      "name": "agreements",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 10731,
                      "src": "12257:10:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Agreement_$10727_storage_$",
                        "typeString": "mapping(bytes32 => struct MultiPartyAgreements.Agreement storage ref)"
                      }
                    },
                    "id": 12835,
                    "indexExpression": {
                      "argumentTypes": null,
                      "id": 12834,
                      "name": "_agreementID",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 12826,
                      "src": "12268:12:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "IndexAccess",
                    "src": "12257:24:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Agreement_$10727_storage",
                      "typeString": "struct MultiPartyAgreements.Agreement storage ref"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "12227:54:39"
                },
                {
                  "assignments": [
                    12838
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 12838,
                      "name": "_paidFees",
                      "nodeType": "VariableDeclaration",
                      "scope": 13009,
                      "src": "12291:26:39",
                      "stateVariable": false,
                      "storageLocation": "storage",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                        "typeString": "struct MultiPartyInsurableFees.PaidFees"
                      },
                      "typeName": {
                        "contractScope": null,
                        "id": 12837,
                        "name": "PaidFees",
                        "nodeType": "UserDefinedTypeName",
                        "referencedDeclaration": 11901,
                        "src": "12291:8:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 12842,
                  "initialValue": {
                    "argumentTypes": null,
                    "baseExpression": {
                      "argumentTypes": null,
                      "id": 12839,
                      "name": "paidFees",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11950,
                      "src": "12320:8:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PaidFees_$11901_storage_$",
                        "typeString": "mapping(bytes32 => struct MultiPartyInsurableFees.PaidFees storage ref)"
                      }
                    },
                    "id": 12841,
                    "indexExpression": {
                      "argumentTypes": null,
                      "id": 12840,
                      "name": "_agreementID",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 12826,
                      "src": "12329:12:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "IndexAccess",
                    "src": "12320:22:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_PaidFees_$11901_storage",
                      "typeString": "struct MultiPartyInsurableFees.PaidFees storage ref"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "12291:51:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "id": 12849,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12844,
                            "name": "agreement",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 12832,
                            "src": "12360:9:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                            }
                          },
                          "id": 12845,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "creator",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 10705,
                          "src": "12360:17:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "!=",
                        "rightExpression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "hexValue": "30",
                              "id": 12847,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "12389:1:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              }
                            ],
                            "id": 12846,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "ElementaryTypeNameExpression",
                            "src": "12381:7:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_address_$",
                              "typeString": "type(address)"
                            },
                            "typeName": "address"
                          },
                          "id": 12848,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "12381:10:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "src": "12360:31:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "546865207370656369666965642061677265656d656e7420646f6573206e6f742065786973742e",
                        "id": 12850,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "12393:41:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_5f7ab9090a26ebe6241e7e236dc49b3b57b72be347775aac1a2b38b1207e8eb2",
                          "typeString": "literal_string \"The specified agreement does not exist.\""
                        },
                        "value": "The specified agreement does not exist."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_5f7ab9090a26ebe6241e7e236dc49b3b57b72be347775aac1a2b38b1207e8eb2",
                          "typeString": "literal_string \"The specified agreement does not exist.\""
                        }
                      ],
                      "id": 12843,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "12352:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 12851,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12352:83:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12852,
                  "nodeType": "ExpressionStatement",
                  "src": "12352:83:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        "id": 12867,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "id": 12856,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "UnaryOperation",
                          "operator": "!",
                          "prefix": true,
                          "src": "12466:19:39",
                          "subExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12854,
                              "name": "agreement",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12832,
                              "src": "12467:9:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                              }
                            },
                            "id": 12855,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "disputed",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 10720,
                            "src": "12467:18:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "||",
                        "rightExpression": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_enum$_DisputeStatus_$3894",
                            "typeString": "enum Arbitrator.DisputeStatus"
                          },
                          "id": 12866,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12860,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12832,
                                  "src": "12524:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12861,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "disputeID",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10718,
                                "src": "12524:19:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12857,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12832,
                                  "src": "12489:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12858,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "arbitrator",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10716,
                                "src": "12489:20:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                  "typeString": "contract Arbitrator"
                                }
                              },
                              "id": 12859,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "disputeStatus",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 4013,
                              "src": "12489:34:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_enum$_DisputeStatus_$3894_$",
                                "typeString": "function (uint256) view external returns (enum Arbitrator.DisputeStatus)"
                              }
                            },
                            "id": 12862,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "12489:55:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_DisputeStatus_$3894",
                              "typeString": "enum Arbitrator.DisputeStatus"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "==",
                          "rightExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12863,
                                "name": "Arbitrator",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 4021,
                                "src": "12548:10:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_Arbitrator_$4021_$",
                                  "typeString": "type(contract Arbitrator)"
                                }
                              },
                              "id": 12864,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "DisputeStatus",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 3894,
                              "src": "12548:24:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_enum$_DisputeStatus_$3894_$",
                                "typeString": "type(enum Arbitrator.DisputeStatus)"
                              }
                            },
                            "id": 12865,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "memberName": "Solved",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "12548:31:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_DisputeStatus_$3894",
                              "typeString": "enum Arbitrator.DisputeStatus"
                            }
                          },
                          "src": "12489:90:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "src": "12466:113:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "5468652061677265656d656e74206973207374696c6c2064697370757465642e",
                        "id": 12868,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "12593:34:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_8fcea74ae55c0a3f53ceeb1eca84d1916ec38ddb2bf4883212b443315d707335",
                          "typeString": "literal_string \"The agreement is still disputed.\""
                        },
                        "value": "The agreement is still disputed."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_8fcea74ae55c0a3f53ceeb1eca84d1916ec38ddb2bf4883212b443315d707335",
                          "typeString": "literal_string \"The agreement is still disputed.\""
                        }
                      ],
                      "id": 12853,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "12445:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 12869,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12445:192:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12870,
                  "nodeType": "ExpressionStatement",
                  "src": "12445:192:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 12876,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "id": 12872,
                          "name": "_round",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 12828,
                          "src": "12655:6:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "<",
                        "rightExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12873,
                              "name": "_paidFees",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12838,
                              "src": "12664:9:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                              }
                            },
                            "id": 12874,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "stake",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11882,
                            "src": "12664:15:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                              "typeString": "uint256[] storage ref"
                            }
                          },
                          "id": 12875,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "length",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "12664:22:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "src": "12655:31:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "5468652073706563696669656420726f756e64206f6620746865207370656369666965642061677265656d656e7420646f6573206e6f742065786973742e",
                        "id": 12877,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "12688:64:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_ee11e2caa8ec68d849d23bc0101264cbcf37cf8d190466d6aef02ea2db135616",
                          "typeString": "literal_string \"The specified round of the specified agreement does not exist.\""
                        },
                        "value": "The specified round of the specified agreement does not exist."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_ee11e2caa8ec68d849d23bc0101264cbcf37cf8d190466d6aef02ea2db135616",
                          "typeString": "literal_string \"The specified round of the specified agreement does not exist.\""
                        }
                      ],
                      "id": 12871,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "12647:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 12878,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12647:106:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12879,
                  "nodeType": "ExpressionStatement",
                  "src": "12647:106:39"
                },
                {
                  "assignments": [],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 12881,
                      "name": "_reward",
                      "nodeType": "VariableDeclaration",
                      "scope": 13009,
                      "src": "12764:12:39",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 12880,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "12764:4:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 12882,
                  "initialValue": null,
                  "nodeType": "VariableDeclarationStatement",
                  "src": "12764:12:39"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    },
                    "id": 12893,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "commonType": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "id": 12885,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "argumentTypes": null,
                        "id": 12883,
                        "name": "_round",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12828,
                        "src": "12790:6:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "==",
                      "rightExpression": {
                        "argumentTypes": null,
                        "hexValue": "30",
                        "id": 12884,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "12800:1:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_0_by_1",
                          "typeString": "int_const 0"
                        },
                        "value": "0"
                      },
                      "src": "12790:11:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "||",
                    "rightExpression": {
                      "argumentTypes": null,
                      "commonType": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "id": 12892,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "argumentTypes": null,
                        "id": 12886,
                        "name": "_round",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12828,
                        "src": "12805:6:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "==",
                      "rightExpression": {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 12891,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12887,
                              "name": "_paidFees",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12838,
                              "src": "12815:9:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                              }
                            },
                            "id": 12888,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "stake",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11882,
                            "src": "12815:15:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                              "typeString": "uint256[] storage ref"
                            }
                          },
                          "id": 12889,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "length",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "12815:22:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "-",
                        "rightExpression": {
                          "argumentTypes": null,
                          "hexValue": "31",
                          "id": 12890,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "12840:1:39",
                          "subdenomination": null,
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_1_by_1",
                            "typeString": "int_const 1"
                          },
                          "value": "1"
                        },
                        "src": "12815:26:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "src": "12805:36:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "src": "12790:51:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "id": 12977,
                    "nodeType": "Block",
                    "src": "13140:349:39",
                    "statements": [
                      {
                        "assignments": [
                          12929
                        ],
                        "declarations": [
                          {
                            "constant": false,
                            "id": 12929,
                            "name": "_winningSide",
                            "nodeType": "VariableDeclaration",
                            "scope": 13009,
                            "src": "13165:17:39",
                            "stateVariable": false,
                            "storageLocation": "default",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "typeName": {
                              "id": 12928,
                              "name": "uint",
                              "nodeType": "ElementaryTypeName",
                              "src": "13165:4:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "value": null,
                            "visibility": "internal"
                          }
                        ],
                        "id": 12940,
                        "initialValue": {
                          "argumentTypes": null,
                          "condition": {
                            "argumentTypes": null,
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 12936,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12930,
                                  "name": "_paidFees",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12838,
                                  "src": "13185:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                    "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                  }
                                },
                                "id": 12931,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "ruling",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11879,
                                "src": "13185:16:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                  "typeString": "uint256[] storage ref"
                                }
                              },
                              "id": 12933,
                              "indexExpression": {
                                "argumentTypes": null,
                                "id": 12932,
                                "name": "_round",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12828,
                                "src": "13202:6:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "13185:24:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "!=",
                            "rightExpression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12934,
                                "name": "agreement",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12832,
                                "src": "13213:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                  "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                }
                              },
                              "id": 12935,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "ruling",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 10724,
                              "src": "13213:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "src": "13185:44:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "falseExpression": {
                            "argumentTypes": null,
                            "hexValue": "31",
                            "id": 12938,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "13236:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_1_by_1",
                              "typeString": "int_const 1"
                            },
                            "value": "1"
                          },
                          "id": 12939,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "Conditional",
                          "src": "13185:52:39",
                          "trueExpression": {
                            "argumentTypes": null,
                            "hexValue": "30",
                            "id": 12937,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "13232:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint8",
                            "typeString": "uint8"
                          }
                        },
                        "nodeType": "VariableDeclarationStatement",
                        "src": "13165:72:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12975,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "id": 12941,
                            "name": "_reward",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 12881,
                            "src": "13251:7:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "condition": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "id": 12949,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "argumentTypes": null,
                                "baseExpression": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12942,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12838,
                                      "src": "13261:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12943,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "totalContributedPerSide",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11890,
                                    "src": "13261:33:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                      "typeString": "uint256[2] storage ref[] storage ref"
                                    }
                                  },
                                  "id": 12945,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "id": 12944,
                                    "name": "_round",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 12828,
                                    "src": "13295:6:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "13261:41:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                    "typeString": "uint256[2] storage ref"
                                  }
                                },
                                "id": 12947,
                                "indexExpression": {
                                  "argumentTypes": null,
                                  "id": 12946,
                                  "name": "_winningSide",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12929,
                                  "src": "13303:12:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "13261:55:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "==",
                              "rightExpression": {
                                "argumentTypes": null,
                                "hexValue": "30",
                                "id": 12948,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "13320:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_0_by_1",
                                  "typeString": "int_const 0"
                                },
                                "value": "0"
                              },
                              "src": "13261:60:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            "falseExpression": {
                              "argumentTypes": null,
                              "components": [
                                {
                                  "argumentTypes": null,
                                  "commonType": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  },
                                  "id": 12972,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "argumentTypes": null,
                                    "components": [
                                      {
                                        "argumentTypes": null,
                                        "commonType": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        },
                                        "id": 12964,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftExpression": {
                                          "argumentTypes": null,
                                          "baseExpression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12951,
                                              "name": "_paidFees",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12838,
                                              "src": "13330:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                              }
                                            },
                                            "id": 12952,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "totalValue",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 11885,
                                            "src": "13330:20:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                              "typeString": "uint256[] storage ref"
                                            }
                                          },
                                          "id": 12954,
                                          "indexExpression": {
                                            "argumentTypes": null,
                                            "id": 12953,
                                            "name": "_round",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12828,
                                            "src": "13351:6:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "IndexAccess",
                                          "src": "13330:28:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "nodeType": "BinaryOperation",
                                        "operator": "*",
                                        "rightExpression": {
                                          "argumentTypes": null,
                                          "baseExpression": {
                                            "argumentTypes": null,
                                            "baseExpression": {
                                              "argumentTypes": null,
                                              "baseExpression": {
                                                "argumentTypes": null,
                                                "expression": {
                                                  "argumentTypes": null,
                                                  "id": 12955,
                                                  "name": "_paidFees",
                                                  "nodeType": "Identifier",
                                                  "overloadedDeclarations": [],
                                                  "referencedDeclaration": 12838,
                                                  "src": "13361:9:39",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                    "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                  }
                                                },
                                                "id": 12956,
                                                "isConstant": false,
                                                "isLValue": true,
                                                "isPure": false,
                                                "lValueRequested": false,
                                                "memberName": "contributions",
                                                "nodeType": "MemberAccess",
                                                "referencedDeclaration": 11900,
                                                "src": "13361:23:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                                                  "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                                                }
                                              },
                                              "id": 12958,
                                              "indexExpression": {
                                                "argumentTypes": null,
                                                "id": 12957,
                                                "name": "_round",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 12828,
                                                "src": "13385:6:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_uint256",
                                                  "typeString": "uint256"
                                                }
                                              },
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "nodeType": "IndexAccess",
                                              "src": "13361:31:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$",
                                                "typeString": "mapping(address => uint256[2] storage ref)"
                                              }
                                            },
                                            "id": 12961,
                                            "indexExpression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "id": 12959,
                                                "name": "msg",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 20639,
                                                "src": "13393:3:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_magic_message",
                                                  "typeString": "msg"
                                                }
                                              },
                                              "id": 12960,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "sender",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": null,
                                              "src": "13393:10:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_address",
                                                "typeString": "address"
                                              }
                                            },
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "nodeType": "IndexAccess",
                                            "src": "13361:43:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                              "typeString": "uint256[2] storage ref"
                                            }
                                          },
                                          "id": 12963,
                                          "indexExpression": {
                                            "argumentTypes": null,
                                            "id": 12962,
                                            "name": "_winningSide",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12929,
                                            "src": "13405:12:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "IndexAccess",
                                          "src": "13361:57:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "src": "13330:88:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      }
                                    ],
                                    "id": 12965,
                                    "isConstant": false,
                                    "isInlineArray": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "TupleExpression",
                                    "src": "13329:90:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": "/",
                                  "rightExpression": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "baseExpression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12966,
                                          "name": "_paidFees",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12838,
                                          "src": "13422:9:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                            "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                          }
                                        },
                                        "id": 12967,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "totalContributedPerSide",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 11890,
                                        "src": "13422:33:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                          "typeString": "uint256[2] storage ref[] storage ref"
                                        }
                                      },
                                      "id": 12969,
                                      "indexExpression": {
                                        "argumentTypes": null,
                                        "id": 12968,
                                        "name": "_round",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 12828,
                                        "src": "13456:6:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "nodeType": "IndexAccess",
                                      "src": "13422:41:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                        "typeString": "uint256[2] storage ref"
                                      }
                                    },
                                    "id": 12971,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "id": 12970,
                                      "name": "_winningSide",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12929,
                                      "src": "13464:12:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "13422:55:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "src": "13329:148:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                }
                              ],
                              "id": 12973,
                              "isConstant": false,
                              "isInlineArray": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "TupleExpression",
                              "src": "13328:150:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "id": 12974,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "Conditional",
                            "src": "13261:217:39",
                            "trueExpression": {
                              "argumentTypes": null,
                              "hexValue": "30",
                              "id": 12950,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "13324:1:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            },
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "13251:227:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12976,
                        "nodeType": "ExpressionStatement",
                        "src": "13251:227:39"
                      }
                    ]
                  },
                  "id": 12978,
                  "nodeType": "IfStatement",
                  "src": "12786:703:39",
                  "trueBody": {
                    "id": 12927,
                    "nodeType": "Block",
                    "src": "12843:291:39",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              "id": 12901,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "argumentTypes": null,
                                "commonType": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                "id": 12897,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "argumentTypes": null,
                                  "id": 12895,
                                  "name": "_round",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12828,
                                  "src": "12889:6:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": "!=",
                                "rightExpression": {
                                  "argumentTypes": null,
                                  "hexValue": "30",
                                  "id": 12896,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "12899:1:39",
                                  "subdenomination": null,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_0_by_1",
                                    "typeString": "int_const 0"
                                  },
                                  "value": "0"
                                },
                                "src": "12889:11:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "||",
                              "rightExpression": {
                                "argumentTypes": null,
                                "id": 12900,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "UnaryOperation",
                                "operator": "!",
                                "prefix": true,
                                "src": "12904:19:39",
                                "subExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12898,
                                    "name": "agreement",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 12832,
                                    "src": "12905:9:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                      "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                    }
                                  },
                                  "id": 12899,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "disputed",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 10720,
                                  "src": "12905:18:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "src": "12889:34:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "hexValue": "5468657265206973206e6f7468696e6720746f2077697468647261772066726f6d2074686520666972737420726f756e6420696620746865206469737075746520776173207261697365642e",
                              "id": 12902,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "string",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "12925:78:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_stringliteral_8a6e811e961d063b066d1cec54e4d1e36149cc7cac4d4d7c1a318d6d434ac4c7",
                                "typeString": "literal_string \"There is nothing to withdraw from the first round if the dispute was raised.\""
                              },
                              "value": "There is nothing to withdraw from the first round if the dispute was raised."
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              {
                                "typeIdentifier": "t_stringliteral_8a6e811e961d063b066d1cec54e4d1e36149cc7cac4d4d7c1a318d6d434ac4c7",
                                "typeString": "literal_string \"There is nothing to withdraw from the first round if the dispute was raised.\""
                              }
                            ],
                            "id": 12894,
                            "name": "require",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [
                              20642,
                              20643
                            ],
                            "referencedDeclaration": 20643,
                            "src": "12881:7:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                              "typeString": "function (bool,string memory) pure"
                            }
                          },
                          "id": 12903,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "12881:123:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 12904,
                        "nodeType": "ExpressionStatement",
                        "src": "12881:123:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12925,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "id": 12905,
                            "name": "_reward",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 12881,
                            "src": "13018:7:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 12924,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "baseExpression": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12906,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12838,
                                      "src": "13028:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12907,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "contributions",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11900,
                                    "src": "13028:23:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                                      "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                                    }
                                  },
                                  "id": 12909,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "id": 12908,
                                    "name": "_round",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 12828,
                                    "src": "13052:6:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "13028:31:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$",
                                    "typeString": "mapping(address => uint256[2] storage ref)"
                                  }
                                },
                                "id": 12912,
                                "indexExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12910,
                                    "name": "msg",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 20639,
                                    "src": "13060:3:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_magic_message",
                                      "typeString": "msg"
                                    }
                                  },
                                  "id": 12911,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "sender",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "13060:10:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "13028:43:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                  "typeString": "uint256[2] storage ref"
                                }
                              },
                              "id": 12914,
                              "indexExpression": {
                                "argumentTypes": null,
                                "hexValue": "30",
                                "id": 12913,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "13072:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_0_by_1",
                                  "typeString": "int_const 0"
                                },
                                "value": "0"
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "13028:46:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "+",
                            "rightExpression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "baseExpression": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12915,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12838,
                                      "src": "13077:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12916,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "contributions",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11900,
                                    "src": "13077:23:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                                      "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                                    }
                                  },
                                  "id": 12918,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "id": 12917,
                                    "name": "_round",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 12828,
                                    "src": "13101:6:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "13077:31:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$",
                                    "typeString": "mapping(address => uint256[2] storage ref)"
                                  }
                                },
                                "id": 12921,
                                "indexExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12919,
                                    "name": "msg",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 20639,
                                    "src": "13109:3:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_magic_message",
                                      "typeString": "msg"
                                    }
                                  },
                                  "id": 12920,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "sender",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "13109:10:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "13077:43:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                  "typeString": "uint256[2] storage ref"
                                }
                              },
                              "id": 12923,
                              "indexExpression": {
                                "argumentTypes": null,
                                "hexValue": "31",
                                "id": 12922,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "13121:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_1_by_1",
                                  "typeString": "int_const 1"
                                },
                                "value": "1"
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "13077:46:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "src": "13028:95:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "13018:105:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12926,
                        "nodeType": "ExpressionStatement",
                        "src": "13018:105:39"
                      }
                    ]
                  }
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 12990,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "baseExpression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12979,
                            "name": "_paidFees",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 12838,
                            "src": "13499:9:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                              "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                            }
                          },
                          "id": 12984,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "contributions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 11900,
                          "src": "13499:23:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                            "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                          }
                        },
                        "id": 12985,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 12981,
                          "name": "_round",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 12828,
                          "src": "13523:6:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "13499:31:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$",
                          "typeString": "mapping(address => uint256[2] storage ref)"
                        }
                      },
                      "id": 12986,
                      "indexExpression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12982,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20639,
                          "src": "13531:3:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 12983,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "13531:10:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "nodeType": "IndexAccess",
                      "src": "13499:43:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$2_storage",
                        "typeString": "uint256[2] storage ref"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "components": [
                        {
                          "argumentTypes": null,
                          "hexValue": "30",
                          "id": 12987,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "13546:1:39",
                          "subdenomination": null,
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_0_by_1",
                            "typeString": "int_const 0"
                          },
                          "value": "0"
                        },
                        {
                          "argumentTypes": null,
                          "hexValue": "30",
                          "id": 12988,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "13549:1:39",
                          "subdenomination": null,
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_0_by_1",
                            "typeString": "int_const 0"
                          },
                          "value": "0"
                        }
                      ],
                      "id": 12989,
                      "isConstant": false,
                      "isInlineArray": true,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "nodeType": "TupleExpression",
                      "src": "13545:6:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint8_$2_memory_ptr",
                        "typeString": "uint8[2] memory"
                      }
                    },
                    "src": "13499:52:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$2_storage",
                      "typeString": "uint256[2] storage ref"
                    }
                  },
                  "id": 12991,
                  "nodeType": "ExpressionStatement",
                  "src": "13499:52:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 12997,
                        "name": "_reward",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12881,
                        "src": "13581:7:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12992,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20639,
                          "src": "13561:3:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 12995,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "13561:10:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "id": 12996,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "transfer",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": null,
                      "src": "13561:19:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$",
                        "typeString": "function (uint256)"
                      }
                    },
                    "id": 12998,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "13561:28:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12999,
                  "nodeType": "ExpressionStatement",
                  "src": "13561:28:39"
                },
                {
                  "eventCall": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 13001,
                        "name": "_agreementID",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12826,
                        "src": "13621:12:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 13002,
                        "name": "_round",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12828,
                        "src": "13635:6:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 13003,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20639,
                          "src": "13643:3:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 13004,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "13643:10:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 13005,
                        "name": "_reward",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12881,
                        "src": "13655:7:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 13000,
                      "name": "RewardWithdrawal",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11942,
                      "src": "13604:16:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (bytes32,uint256,address,uint256)"
                      }
                    },
                    "id": 13006,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "13604:59:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 13007,
                  "nodeType": "EmitStatement",
                  "src": "13599:64:39"
                }
              ]
            },
            "documentation": "@dev Withdraws the caller's reward for funding the specified round of the specified agreement.\n @param _agreementID The ID of the agreement.\n @param _round The round.",
            "id": 13009,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "withdrawReward",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 12829,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12826,
                  "name": "_agreementID",
                  "nodeType": "VariableDeclaration",
                  "scope": 13009,
                  "src": "12175:20:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 12825,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "12175:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12828,
                  "name": "_round",
                  "nodeType": "VariableDeclaration",
                  "scope": 13009,
                  "src": "12197:11:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12827,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "12197:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "12174:35:39"
            },
            "payable": false,
            "returnParameters": {
              "id": 12830,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "12217:0:39"
            },
            "scope": 13089,
            "src": "12151:1519:39",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 13062,
              "nodeType": "Block",
              "src": "14092:304:39",
              "statements": [
                {
                  "assignments": [
                    13032
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 13032,
                      "name": "_paidFees",
                      "nodeType": "VariableDeclaration",
                      "scope": 13063,
                      "src": "14102:26:39",
                      "stateVariable": false,
                      "storageLocation": "storage",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                        "typeString": "struct MultiPartyInsurableFees.PaidFees"
                      },
                      "typeName": {
                        "contractScope": null,
                        "id": 13031,
                        "name": "PaidFees",
                        "nodeType": "UserDefinedTypeName",
                        "referencedDeclaration": 11901,
                        "src": "14102:8:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 13036,
                  "initialValue": {
                    "argumentTypes": null,
                    "baseExpression": {
                      "argumentTypes": null,
                      "id": 13033,
                      "name": "paidFees",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11950,
                      "src": "14131:8:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PaidFees_$11901_storage_$",
                        "typeString": "mapping(bytes32 => struct MultiPartyInsurableFees.PaidFees storage ref)"
                      }
                    },
                    "id": 13035,
                    "indexExpression": {
                      "argumentTypes": null,
                      "id": 13034,
                      "name": "_agreementID",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13011,
                      "src": "14140:12:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "IndexAccess",
                    "src": "14131:22:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_PaidFees_$11901_storage",
                      "typeString": "struct MultiPartyInsurableFees.PaidFees storage ref"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "14102:51:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 13040,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 13037,
                      "name": "ruling",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13015,
                      "src": "14163:6:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                        "typeString": "uint256[] memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 13038,
                        "name": "_paidFees",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13032,
                        "src": "14172:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                        }
                      },
                      "id": 13039,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "ruling",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11879,
                      "src": "14172:16:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                        "typeString": "uint256[] storage ref"
                      }
                    },
                    "src": "14163:25:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                      "typeString": "uint256[] memory"
                    }
                  },
                  "id": 13041,
                  "nodeType": "ExpressionStatement",
                  "src": "14163:25:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 13045,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 13042,
                      "name": "_stake",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13018,
                      "src": "14198:6:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                        "typeString": "uint256[] memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 13043,
                        "name": "_paidFees",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13032,
                        "src": "14207:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                        }
                      },
                      "id": 13044,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "stake",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11882,
                      "src": "14207:15:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                        "typeString": "uint256[] storage ref"
                      }
                    },
                    "src": "14198:24:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                      "typeString": "uint256[] memory"
                    }
                  },
                  "id": 13046,
                  "nodeType": "ExpressionStatement",
                  "src": "14198:24:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 13050,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 13047,
                      "name": "totalValue",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13021,
                      "src": "14232:10:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                        "typeString": "uint256[] memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 13048,
                        "name": "_paidFees",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13032,
                        "src": "14245:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                        }
                      },
                      "id": 13049,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "totalValue",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11885,
                      "src": "14245:20:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                        "typeString": "uint256[] storage ref"
                      }
                    },
                    "src": "14232:33:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                      "typeString": "uint256[] memory"
                    }
                  },
                  "id": 13051,
                  "nodeType": "ExpressionStatement",
                  "src": "14232:33:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 13055,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 13052,
                      "name": "totalContributedPerSide",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13026,
                      "src": "14275:23:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_array$_t_uint256_$2_memory_$dyn_memory_ptr",
                        "typeString": "uint256[2] memory[] memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 13053,
                        "name": "_paidFees",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13032,
                        "src": "14301:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                        }
                      },
                      "id": 13054,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "totalContributedPerSide",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11890,
                      "src": "14301:33:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                        "typeString": "uint256[2] storage ref[] storage ref"
                      }
                    },
                    "src": "14275:59:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_array$_t_uint256_$2_memory_$dyn_memory_ptr",
                      "typeString": "uint256[2] memory[] memory"
                    }
                  },
                  "id": 13056,
                  "nodeType": "ExpressionStatement",
                  "src": "14275:59:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 13060,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 13057,
                      "name": "loserFullyFunded",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13029,
                      "src": "14344:16:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr",
                        "typeString": "bool[] memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 13058,
                        "name": "_paidFees",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13032,
                        "src": "14363:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                        }
                      },
                      "id": 13059,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "loserFullyFunded",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11893,
                      "src": "14363:26:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                        "typeString": "bool[] storage ref"
                      }
                    },
                    "src": "14344:45:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr",
                      "typeString": "bool[] memory"
                    }
                  },
                  "id": 13061,
                  "nodeType": "ExpressionStatement",
                  "src": "14344:45:39"
                }
              ]
            },
            "documentation": "@dev Gets the info on fees paid for the specified agreement.\n @param _agreementID The ID of the agreement.\n @return The info.",
            "id": 13063,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getFeesInfo",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 13012,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13011,
                  "name": "_agreementID",
                  "nodeType": "VariableDeclaration",
                  "scope": 13063,
                  "src": "13888:20:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 13010,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "13888:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "13878:36:39"
            },
            "payable": false,
            "returnParameters": {
              "id": 13030,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13015,
                  "name": "ruling",
                  "nodeType": "VariableDeclaration",
                  "scope": 13063,
                  "src": "13946:13:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 13013,
                      "name": "uint",
                      "nodeType": "ElementaryTypeName",
                      "src": "13946:4:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 13014,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "13946:6:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13018,
                  "name": "_stake",
                  "nodeType": "VariableDeclaration",
                  "scope": 13063,
                  "src": "13969:13:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 13016,
                      "name": "uint",
                      "nodeType": "ElementaryTypeName",
                      "src": "13969:4:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 13017,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "13969:6:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13021,
                  "name": "totalValue",
                  "nodeType": "VariableDeclaration",
                  "scope": 13063,
                  "src": "13992:17:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 13019,
                      "name": "uint",
                      "nodeType": "ElementaryTypeName",
                      "src": "13992:4:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 13020,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "13992:6:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13026,
                  "name": "totalContributedPerSide",
                  "nodeType": "VariableDeclaration",
                  "scope": 13063,
                  "src": "14019:33:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_array$_t_uint256_$2_memory_$dyn_memory_ptr",
                    "typeString": "uint256[2][]"
                  },
                  "typeName": {
                    "baseType": {
                      "baseType": {
                        "id": 13022,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "14019:4:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "id": 13024,
                      "length": {
                        "argumentTypes": null,
                        "hexValue": "32",
                        "id": 13023,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "14024:1:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": null,
                          "typeString": null
                        },
                        "value": "2"
                      },
                      "nodeType": "ArrayTypeName",
                      "src": "14019:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$2_storage_ptr",
                        "typeString": "uint256[2]"
                      }
                    },
                    "id": 13025,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "14019:9:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage_ptr",
                      "typeString": "uint256[2][]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13029,
                  "name": "loserFullyFunded",
                  "nodeType": "VariableDeclaration",
                  "scope": 13063,
                  "src": "14062:23:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr",
                    "typeString": "bool[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 13027,
                      "name": "bool",
                      "nodeType": "ElementaryTypeName",
                      "src": "14062:4:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "id": 13028,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "14062:6:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bool_$dyn_storage_ptr",
                      "typeString": "bool[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "13936:155:39"
            },
            "scope": 13089,
            "src": "13858:538:39",
            "stateMutability": "view",
            "superFunction": 13160,
            "visibility": "external"
          },
          {
            "body": {
              "id": 13087,
              "nodeType": "Block",
              "src": "14835:91:39",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 13085,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 13076,
                      "name": "contributions",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13074,
                      "src": "14845:13:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$2_memory_ptr",
                        "typeString": "uint256[2] memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "baseExpression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 13077,
                              "name": "paidFees",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11950,
                              "src": "14861:8:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PaidFees_$11901_storage_$",
                                "typeString": "mapping(bytes32 => struct MultiPartyInsurableFees.PaidFees storage ref)"
                              }
                            },
                            "id": 13079,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 13078,
                              "name": "_agreementID",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 13065,
                              "src": "14870:12:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "14861:22:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_PaidFees_$11901_storage",
                              "typeString": "struct MultiPartyInsurableFees.PaidFees storage ref"
                            }
                          },
                          "id": 13080,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "contributions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 11900,
                          "src": "14861:36:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                            "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                          }
                        },
                        "id": 13082,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 13081,
                          "name": "_round",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 13067,
                          "src": "14898:6:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "14861:44:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$",
                          "typeString": "mapping(address => uint256[2] storage ref)"
                        }
                      },
                      "id": 13084,
                      "indexExpression": {
                        "argumentTypes": null,
                        "id": 13083,
                        "name": "_contributor",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13069,
                        "src": "14906:12:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "IndexAccess",
                      "src": "14861:58:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$2_storage",
                        "typeString": "uint256[2] storage ref"
                      }
                    },
                    "src": "14845:74:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$2_memory_ptr",
                      "typeString": "uint256[2] memory"
                    }
                  },
                  "id": 13086,
                  "nodeType": "ExpressionStatement",
                  "src": "14845:74:39"
                }
              ]
            },
            "documentation": "@dev Gets the contributions by the specified contributor in the specified round of the specified agreement.\n @param _agreementID The ID of the agreement.\n @param _round The round.\n @param _contributor The address of the contributor.\n @return The contributions.",
            "id": 13088,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getContributions",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 13070,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13065,
                  "name": "_agreementID",
                  "nodeType": "VariableDeclaration",
                  "scope": 13088,
                  "src": "14733:20:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 13064,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "14733:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13067,
                  "name": "_round",
                  "nodeType": "VariableDeclaration",
                  "scope": 13088,
                  "src": "14755:11:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13066,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "14755:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13069,
                  "name": "_contributor",
                  "nodeType": "VariableDeclaration",
                  "scope": 13088,
                  "src": "14768:20:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13068,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "14768:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "14732:57:39"
            },
            "payable": false,
            "returnParameters": {
              "id": 13075,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13074,
                  "name": "contributions",
                  "nodeType": "VariableDeclaration",
                  "scope": 13088,
                  "src": "14812:21:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$2_memory_ptr",
                    "typeString": "uint256[2]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 13071,
                      "name": "uint",
                      "nodeType": "ElementaryTypeName",
                      "src": "14812:4:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 13073,
                    "length": {
                      "argumentTypes": null,
                      "hexValue": "32",
                      "id": 13072,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "14817:1:39",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": null,
                        "typeString": null
                      },
                      "value": "2"
                    },
                    "nodeType": "ArrayTypeName",
                    "src": "14812:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$2_storage_ptr",
                      "typeString": "uint256[2]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "14811:23:39"
            },
            "scope": 13089,
            "src": "14707:219:39",
            "stateMutability": "view",
            "superFunction": 13173,
            "visibility": "external"
          }
        ],
        "scope": 13090,
        "src": "275:14653:39"
      }
    ],
    "src": "0:14929:39"
  },
  "legacyAST": {
    "absolutePath": "/private/tmp/kleros-interaction/contracts/standard/arbitration/composed-arbitrable/fee/MultiPartyInsurableFees.sol",
    "exportedSymbols": {
      "MultiPartyInsurableFees": [
        13089
      ]
    },
    "id": 13090,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 11871,
        "literals": [
          "solidity",
          "^",
          "0.4",
          ".24"
        ],
        "nodeType": "PragmaDirective",
        "src": "0:24:39"
      },
      {
        "absolutePath": "/private/tmp/kleros-interaction/contracts/standard/arbitration/composed-arbitrable/agreement/MultiPartyAgreements.sol",
        "file": "../agreement/MultiPartyAgreements.sol",
        "id": 11872,
        "nodeType": "ImportDirective",
        "scope": 13090,
        "sourceUnit": 11023,
        "src": "26:47:39",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 11873,
              "name": "MultiPartyAgreements",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 11022,
              "src": "311:20:39",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_MultiPartyAgreements_$11022",
                "typeString": "contract MultiPartyAgreements"
              }
            },
            "id": 11874,
            "nodeType": "InheritanceSpecifier",
            "src": "311:20:39"
          }
        ],
        "contractDependencies": [
          595,
          11022
        ],
        "contractKind": "contract",
        "documentation": " @title MultiPartyInsurableFees\n @author Enrique Piqueras - <epiquerass@gmail.com>\n @dev Fee part of a composed arbitrable contract. Handles crowdinsured arbitration and appeal fees.",
        "fullyImplemented": false,
        "id": 13089,
        "linearizedBaseContracts": [
          13089,
          11022,
          595
        ],
        "name": "MultiPartyInsurableFees",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "canonicalName": "MultiPartyInsurableFees.PaidFees",
            "id": 11901,
            "members": [
              {
                "constant": false,
                "id": 11876,
                "name": "firstContributionTime",
                "nodeType": "VariableDeclaration",
                "scope": 11901,
                "src": "383:26:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11875,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "383:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11879,
                "name": "ruling",
                "nodeType": "VariableDeclaration",
                "scope": 11901,
                "src": "467:13:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                  "typeString": "uint256[]"
                },
                "typeName": {
                  "baseType": {
                    "id": 11877,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "467:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11878,
                  "length": null,
                  "nodeType": "ArrayTypeName",
                  "src": "467:6:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                    "typeString": "uint256[]"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11882,
                "name": "stake",
                "nodeType": "VariableDeclaration",
                "scope": 11901,
                "src": "520:12:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                  "typeString": "uint256[]"
                },
                "typeName": {
                  "baseType": {
                    "id": 11880,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "520:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11881,
                  "length": null,
                  "nodeType": "ArrayTypeName",
                  "src": "520:6:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                    "typeString": "uint256[]"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11885,
                "name": "totalValue",
                "nodeType": "VariableDeclaration",
                "scope": 11901,
                "src": "580:17:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                  "typeString": "uint256[]"
                },
                "typeName": {
                  "baseType": {
                    "id": 11883,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "580:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11884,
                  "length": null,
                  "nodeType": "ArrayTypeName",
                  "src": "580:6:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                    "typeString": "uint256[]"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11890,
                "name": "totalContributedPerSide",
                "nodeType": "VariableDeclaration",
                "scope": 11901,
                "src": "649:33:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage_ptr",
                  "typeString": "uint256[2][]"
                },
                "typeName": {
                  "baseType": {
                    "baseType": {
                      "id": 11886,
                      "name": "uint",
                      "nodeType": "ElementaryTypeName",
                      "src": "649:4:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 11888,
                    "length": {
                      "argumentTypes": null,
                      "hexValue": "32",
                      "id": 11887,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "654:1:39",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": null,
                        "typeString": null
                      },
                      "value": "2"
                    },
                    "nodeType": "ArrayTypeName",
                    "src": "649:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$2_storage_ptr",
                      "typeString": "uint256[2]"
                    }
                  },
                  "id": 11889,
                  "length": null,
                  "nodeType": "ArrayTypeName",
                  "src": "649:9:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage_ptr",
                    "typeString": "uint256[2][]"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11893,
                "name": "loserFullyFunded",
                "nodeType": "VariableDeclaration",
                "scope": 11901,
                "src": "749:23:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_array$_t_bool_$dyn_storage_ptr",
                  "typeString": "bool[]"
                },
                "typeName": {
                  "baseType": {
                    "id": 11891,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "749:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11892,
                  "length": null,
                  "nodeType": "ArrayTypeName",
                  "src": "749:6:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bool_$dyn_storage_ptr",
                    "typeString": "bool[]"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11900,
                "name": "contributions",
                "nodeType": "VariableDeclaration",
                "scope": 11901,
                "src": "842:43:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage_ptr",
                  "typeString": "mapping(address => uint256[2])[]"
                },
                "typeName": {
                  "baseType": {
                    "id": 11898,
                    "keyType": {
                      "id": 11894,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "850:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "Mapping",
                    "src": "842:27:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$",
                      "typeString": "mapping(address => uint256[2])"
                    },
                    "valueType": {
                      "baseType": {
                        "id": 11895,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "861:4:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "id": 11897,
                      "length": {
                        "argumentTypes": null,
                        "hexValue": "32",
                        "id": 11896,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "866:1:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": null,
                          "typeString": null
                        },
                        "value": "2"
                      },
                      "nodeType": "ArrayTypeName",
                      "src": "861:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$2_storage_ptr",
                        "typeString": "uint256[2]"
                      }
                    }
                  },
                  "id": 11899,
                  "length": null,
                  "nodeType": "ArrayTypeName",
                  "src": "842:29:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage_ptr",
                    "typeString": "mapping(address => uint256[2])[]"
                  }
                },
                "value": null,
                "visibility": "internal"
              }
            ],
            "name": "PaidFees",
            "nodeType": "StructDefinition",
            "scope": 13089,
            "src": "357:572:39",
            "visibility": "public"
          },
          {
            "canonicalName": "MultiPartyInsurableFees.FundDisputeCache",
            "id": 11922,
            "members": [
              {
                "constant": false,
                "id": 11903,
                "name": "cost",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1025:9:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11902,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "1025:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11905,
                "name": "appealing",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1044:14:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                },
                "typeName": {
                  "id": 11904,
                  "name": "bool",
                  "nodeType": "ElementaryTypeName",
                  "src": "1044:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11907,
                "name": "appealPeriodStart",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1068:22:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11906,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "1068:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11909,
                "name": "appealPeriodEnd",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1100:20:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11908,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "1100:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11911,
                "name": "appealPeriodSupported",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1130:26:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                },
                "typeName": {
                  "id": 11910,
                  "name": "bool",
                  "nodeType": "ElementaryTypeName",
                  "src": "1130:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11913,
                "name": "requiredValueForSide",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1166:25:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11912,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "1166:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11915,
                "name": "expectedValue",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1201:18:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11914,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "1201:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11917,
                "name": "stillRequiredValueForSide",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1229:30:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11916,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "1229:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11919,
                "name": "keptValue",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1269:14:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11918,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "1269:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11921,
                "name": "refundedValue",
                "nodeType": "VariableDeclaration",
                "scope": 11922,
                "src": "1293:18:39",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11920,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "1293:4:39",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "value": null,
                "visibility": "internal"
              }
            ],
            "name": "FundDisputeCache",
            "nodeType": "StructDefinition",
            "scope": 13089,
            "src": "934:384:39",
            "visibility": "public"
          },
          {
            "anonymous": false,
            "documentation": "@dev Emitted when a contribution is made.\n @param _agreementID The ID of the agreement that the contribution was made to.\n @param _round The round of the agreement that the contribution was made to.\n @param _contributor The address that sent the contribution.\n @param _value The value of the contribution.",
            "id": 11932,
            "name": "Contribution",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 11931,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11924,
                  "indexed": true,
                  "name": "_agreementID",
                  "nodeType": "VariableDeclaration",
                  "scope": 11932,
                  "src": "1711:28:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 11923,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1711:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11926,
                  "indexed": true,
                  "name": "_round",
                  "nodeType": "VariableDeclaration",
                  "scope": 11932,
                  "src": "1741:19:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11925,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "1741:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11928,
                  "indexed": true,
                  "name": "_contributor",
                  "nodeType": "VariableDeclaration",
                  "scope": 11932,
                  "src": "1762:28:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 11927,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1762:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11930,
                  "indexed": false,
                  "name": "_value",
                  "nodeType": "VariableDeclaration",
                  "scope": 11932,
                  "src": "1792:11:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11929,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "1792:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1710:94:39"
            },
            "src": "1692:113:39"
          },
          {
            "anonymous": false,
            "documentation": "@dev Emitted when a contribution reward is withdrawn.\n @param _agreementID The ID of the agreement that the contribution was made to.\n @param _round The round of the agreement that the contribution was made to.\n @param _contributor The address that sent the contribution.\n @param _value The value of the reward.",
            "id": 11942,
            "name": "RewardWithdrawal",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 11941,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11934,
                  "indexed": true,
                  "name": "_agreementID",
                  "nodeType": "VariableDeclaration",
                  "scope": 11942,
                  "src": "2190:28:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 11933,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2190:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11936,
                  "indexed": true,
                  "name": "_round",
                  "nodeType": "VariableDeclaration",
                  "scope": 11942,
                  "src": "2220:19:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11935,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "2220:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11938,
                  "indexed": true,
                  "name": "_contributor",
                  "nodeType": "VariableDeclaration",
                  "scope": 11942,
                  "src": "2241:28:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 11937,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2241:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11940,
                  "indexed": false,
                  "name": "_value",
                  "nodeType": "VariableDeclaration",
                  "scope": 11942,
                  "src": "2271:11:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11939,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "2271:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2189:94:39"
            },
            "src": "2167:117:39"
          },
          {
            "constant": false,
            "id": 11944,
            "name": "feeGovernor",
            "nodeType": "VariableDeclaration",
            "scope": 13089,
            "src": "2309:26:39",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_address",
              "typeString": "address"
            },
            "typeName": {
              "id": 11943,
              "name": "address",
              "nodeType": "ElementaryTypeName",
              "src": "2309:7:39",
              "typeDescriptions": {
                "typeIdentifier": "t_address",
                "typeString": "address"
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 11946,
            "name": "stake",
            "nodeType": "VariableDeclaration",
            "scope": 13089,
            "src": "2341:17:39",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint256",
              "typeString": "uint256"
            },
            "typeName": {
              "id": 11945,
              "name": "uint",
              "nodeType": "ElementaryTypeName",
              "src": "2341:4:39",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 11950,
            "name": "paidFees",
            "nodeType": "VariableDeclaration",
            "scope": 13089,
            "src": "2364:44:39",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PaidFees_$11901_storage_$",
              "typeString": "mapping(bytes32 => struct MultiPartyInsurableFees.PaidFees)"
            },
            "typeName": {
              "id": 11949,
              "keyType": {
                "id": 11947,
                "name": "bytes32",
                "nodeType": "ElementaryTypeName",
                "src": "2372:7:39",
                "typeDescriptions": {
                  "typeIdentifier": "t_bytes32",
                  "typeString": "bytes32"
                }
              },
              "nodeType": "Mapping",
              "src": "2364:28:39",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PaidFees_$11901_storage_$",
                "typeString": "mapping(bytes32 => struct MultiPartyInsurableFees.PaidFees)"
              },
              "valueType": {
                "contractScope": null,
                "id": 11948,
                "name": "PaidFees",
                "nodeType": "UserDefinedTypeName",
                "referencedDeclaration": 11901,
                "src": "2383:8:39",
                "typeDescriptions": {
                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                  "typeString": "struct MultiPartyInsurableFees.PaidFees"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 11952,
            "name": "fundDisputeCache",
            "nodeType": "VariableDeclaration",
            "scope": 13089,
            "src": "2414:40:39",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
              "typeString": "struct MultiPartyInsurableFees.FundDisputeCache"
            },
            "typeName": {
              "contractScope": null,
              "id": 11951,
              "name": "FundDisputeCache",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 11922,
              "src": "2414:16:39",
              "typeDescriptions": {
                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage_ptr",
                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache"
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 11967,
              "nodeType": "Block",
              "src": "2729:67:39",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11961,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 11959,
                      "name": "feeGovernor",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11944,
                      "src": "2739:11:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11960,
                      "name": "_feeGovernor",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11954,
                      "src": "2753:12:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "src": "2739:26:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "id": 11962,
                  "nodeType": "ExpressionStatement",
                  "src": "2739:26:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11965,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 11963,
                      "name": "stake",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11946,
                      "src": "2775:5:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11964,
                      "name": "_stake",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11956,
                      "src": "2783:6:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "2775:14:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11966,
                  "nodeType": "ExpressionStatement",
                  "src": "2775:14:39"
                }
              ]
            },
            "documentation": "@dev Constructs the `MultiPartyInsurableFees` contract.\n @param _feeGovernor The governor of this contract.\n @param _stake The stake parameter for sharing fees.",
            "id": 11968,
            "implemented": true,
            "isConstructor": true,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 11957,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11954,
                  "name": "_feeGovernor",
                  "nodeType": "VariableDeclaration",
                  "scope": 11968,
                  "src": "2687:20:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 11953,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2687:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11956,
                  "name": "_stake",
                  "nodeType": "VariableDeclaration",
                  "scope": 11968,
                  "src": "2709:11:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11955,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "2709:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2686:35:39"
            },
            "payable": false,
            "returnParameters": {
              "id": 11958,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2729:0:39"
            },
            "scope": 13089,
            "src": "2675:121:39",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 11985,
              "nodeType": "Block",
              "src": "3009:126:39",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "id": 11977,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 11974,
                            "name": "msg",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20639,
                            "src": "3027:3:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_magic_message",
                              "typeString": "msg"
                            }
                          },
                          "id": 11975,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "sender",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "3027:10:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "==",
                        "rightExpression": {
                          "argumentTypes": null,
                          "id": 11976,
                          "name": "feeGovernor",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11944,
                          "src": "3041:11:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "src": "3027:25:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "5468652063616c6c6572206973206e6f74207468652066656520676f7665726e6f722e",
                        "id": 11978,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "3054:37:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_80f1089eb69c2976f4fc7ddb2ebf81298992b6564246473983f1f1beaa9dc730",
                          "typeString": "literal_string \"The caller is not the fee governor.\""
                        },
                        "value": "The caller is not the fee governor."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_80f1089eb69c2976f4fc7ddb2ebf81298992b6564246473983f1f1beaa9dc730",
                          "typeString": "literal_string \"The caller is not the fee governor.\""
                        }
                      ],
                      "id": 11973,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "3019:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 11979,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3019:73:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 11980,
                  "nodeType": "ExpressionStatement",
                  "src": "3019:73:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11983,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 11981,
                      "name": "feeGovernor",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11944,
                      "src": "3102:11:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11982,
                      "name": "_feeGovernor",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11970,
                      "src": "3116:12:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "src": "3102:26:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "id": 11984,
                  "nodeType": "ExpressionStatement",
                  "src": "3102:26:39"
                }
              ]
            },
            "documentation": "@dev Changes the `feeGovernor` storage variable.\n @param _feeGovernor The new `feeGovernor` storage variable.",
            "id": 11986,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "changeFeeGovernor",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 11971,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11970,
                  "name": "_feeGovernor",
                  "nodeType": "VariableDeclaration",
                  "scope": 11986,
                  "src": "2980:20:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 11969,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2980:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2979:22:39"
            },
            "payable": false,
            "returnParameters": {
              "id": 11972,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3009:0:39"
            },
            "scope": 13089,
            "src": "2953:182:39",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 12003,
              "nodeType": "Block",
              "src": "3297:114:39",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "id": 11995,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 11992,
                            "name": "msg",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20639,
                            "src": "3315:3:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_magic_message",
                              "typeString": "msg"
                            }
                          },
                          "id": 11993,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "sender",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "3315:10:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "==",
                        "rightExpression": {
                          "argumentTypes": null,
                          "id": 11994,
                          "name": "feeGovernor",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11944,
                          "src": "3329:11:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "src": "3315:25:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "5468652063616c6c6572206973206e6f74207468652066656520676f7665726e6f722e",
                        "id": 11996,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "3342:37:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_80f1089eb69c2976f4fc7ddb2ebf81298992b6564246473983f1f1beaa9dc730",
                          "typeString": "literal_string \"The caller is not the fee governor.\""
                        },
                        "value": "The caller is not the fee governor."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_80f1089eb69c2976f4fc7ddb2ebf81298992b6564246473983f1f1beaa9dc730",
                          "typeString": "literal_string \"The caller is not the fee governor.\""
                        }
                      ],
                      "id": 11991,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "3307:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 11997,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3307:73:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 11998,
                  "nodeType": "ExpressionStatement",
                  "src": "3307:73:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 12001,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 11999,
                      "name": "stake",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11946,
                      "src": "3390:5:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 12000,
                      "name": "_stake",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11988,
                      "src": "3398:6:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "3390:14:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 12002,
                  "nodeType": "ExpressionStatement",
                  "src": "3390:14:39"
                }
              ]
            },
            "documentation": "@dev Changes the `stake` storage variable.\n @param _stake The new `stake` storage variable.",
            "id": 12004,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "changeStake",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 11989,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11988,
                  "name": "_stake",
                  "nodeType": "VariableDeclaration",
                  "scope": 12004,
                  "src": "3277:11:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11987,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "3277:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3276:13:39"
            },
            "payable": false,
            "returnParameters": {
              "id": 11990,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3297:0:39"
            },
            "scope": 13089,
            "src": "3256:155:39",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 12823,
              "nodeType": "Block",
              "src": "3798:8150:39",
              "statements": [
                {
                  "assignments": [
                    12012
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 12012,
                      "name": "agreement",
                      "nodeType": "VariableDeclaration",
                      "scope": 12824,
                      "src": "3808:27:39",
                      "stateVariable": false,
                      "storageLocation": "storage",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                        "typeString": "struct MultiPartyAgreements.Agreement"
                      },
                      "typeName": {
                        "contractScope": null,
                        "id": 12011,
                        "name": "Agreement",
                        "nodeType": "UserDefinedTypeName",
                        "referencedDeclaration": 10727,
                        "src": "3808:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                          "typeString": "struct MultiPartyAgreements.Agreement"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 12016,
                  "initialValue": {
                    "argumentTypes": null,
                    "baseExpression": {
                      "argumentTypes": null,
                      "id": 12013,
                      "name": "agreements",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 10731,
                      "src": "3838:10:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Agreement_$10727_storage_$",
                        "typeString": "mapping(bytes32 => struct MultiPartyAgreements.Agreement storage ref)"
                      }
                    },
                    "id": 12015,
                    "indexExpression": {
                      "argumentTypes": null,
                      "id": 12014,
                      "name": "_agreementID",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 12006,
                      "src": "3849:12:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "IndexAccess",
                    "src": "3838:24:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Agreement_$10727_storage",
                      "typeString": "struct MultiPartyAgreements.Agreement storage ref"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "3808:54:39"
                },
                {
                  "assignments": [
                    12018
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 12018,
                      "name": "_paidFees",
                      "nodeType": "VariableDeclaration",
                      "scope": 12824,
                      "src": "3872:26:39",
                      "stateVariable": false,
                      "storageLocation": "storage",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                        "typeString": "struct MultiPartyInsurableFees.PaidFees"
                      },
                      "typeName": {
                        "contractScope": null,
                        "id": 12017,
                        "name": "PaidFees",
                        "nodeType": "UserDefinedTypeName",
                        "referencedDeclaration": 11901,
                        "src": "3872:8:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 12022,
                  "initialValue": {
                    "argumentTypes": null,
                    "baseExpression": {
                      "argumentTypes": null,
                      "id": 12019,
                      "name": "paidFees",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11950,
                      "src": "3901:8:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PaidFees_$11901_storage_$",
                        "typeString": "mapping(bytes32 => struct MultiPartyInsurableFees.PaidFees storage ref)"
                      }
                    },
                    "id": 12021,
                    "indexExpression": {
                      "argumentTypes": null,
                      "id": 12020,
                      "name": "_agreementID",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 12006,
                      "src": "3910:12:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "IndexAccess",
                    "src": "3901:22:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_PaidFees_$11901_storage",
                      "typeString": "struct MultiPartyInsurableFees.PaidFees storage ref"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "3872:51:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "id": 12029,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12024,
                            "name": "agreement",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 12012,
                            "src": "3941:9:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                            }
                          },
                          "id": 12025,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "creator",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 10705,
                          "src": "3941:17:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "!=",
                        "rightExpression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "hexValue": "30",
                              "id": 12027,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "3970:1:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              }
                            ],
                            "id": 12026,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "ElementaryTypeNameExpression",
                            "src": "3962:7:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_address_$",
                              "typeString": "type(address)"
                            },
                            "typeName": "address"
                          },
                          "id": 12028,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "3962:10:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "src": "3941:31:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "546865207370656369666965642061677265656d656e7420646f6573206e6f742065786973742e",
                        "id": 12030,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "3974:41:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_5f7ab9090a26ebe6241e7e236dc49b3b57b72be347775aac1a2b38b1207e8eb2",
                          "typeString": "literal_string \"The specified agreement does not exist.\""
                        },
                        "value": "The specified agreement does not exist."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_5f7ab9090a26ebe6241e7e236dc49b3b57b72be347775aac1a2b38b1207e8eb2",
                          "typeString": "literal_string \"The specified agreement does not exist.\""
                        }
                      ],
                      "id": 12023,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "3933:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 12031,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3933:83:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12032,
                  "nodeType": "ExpressionStatement",
                  "src": "3933:83:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 12036,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "UnaryOperation",
                        "operator": "!",
                        "prefix": true,
                        "src": "4034:19:39",
                        "subExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12034,
                            "name": "agreement",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 12012,
                            "src": "4035:9:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                            }
                          },
                          "id": 12035,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "executed",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 10726,
                          "src": "4035:18:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "596f752063616e6e6f742066756e6420646973707574657320666f722065786563757465642061677265656d656e74732e",
                        "id": 12037,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "4055:51:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_3f33585d398d76b24f130f9a587596413fea1e40984521d2812b733fc5cc3e32",
                          "typeString": "literal_string \"You cannot fund disputes for executed agreements.\""
                        },
                        "value": "You cannot fund disputes for executed agreements."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_3f33585d398d76b24f130f9a587596413fea1e40984521d2812b733fc5cc3e32",
                          "typeString": "literal_string \"You cannot fund disputes for executed agreements.\""
                        }
                      ],
                      "id": 12033,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "4026:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 12038,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4026:81:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12039,
                  "nodeType": "ExpressionStatement",
                  "src": "4026:81:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        "id": 12054,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "id": 12043,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "UnaryOperation",
                          "operator": "!",
                          "prefix": true,
                          "src": "4138:19:39",
                          "subExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12041,
                              "name": "agreement",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12012,
                              "src": "4139:9:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                              }
                            },
                            "id": 12042,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "disputed",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 10720,
                            "src": "4139:18:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "||",
                        "rightExpression": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_enum$_DisputeStatus_$3894",
                            "typeString": "enum Arbitrator.DisputeStatus"
                          },
                          "id": 12053,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12047,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "4196:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12048,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "disputeID",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10718,
                                "src": "4196:19:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12044,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "4161:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12045,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "arbitrator",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10716,
                                "src": "4161:20:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                  "typeString": "contract Arbitrator"
                                }
                              },
                              "id": 12046,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "disputeStatus",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 4013,
                              "src": "4161:34:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_enum$_DisputeStatus_$3894_$",
                                "typeString": "function (uint256) view external returns (enum Arbitrator.DisputeStatus)"
                              }
                            },
                            "id": 12049,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "4161:55:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_DisputeStatus_$3894",
                              "typeString": "enum Arbitrator.DisputeStatus"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "==",
                          "rightExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12050,
                                "name": "Arbitrator",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 4021,
                                "src": "4220:10:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_Arbitrator_$4021_$",
                                  "typeString": "type(contract Arbitrator)"
                                }
                              },
                              "id": 12051,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "DisputeStatus",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 3894,
                              "src": "4220:24:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_enum$_DisputeStatus_$3894_$",
                                "typeString": "type(enum Arbitrator.DisputeStatus)"
                              }
                            },
                            "id": 12052,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "memberName": "Appealable",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "4220:35:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_DisputeStatus_$3894",
                              "typeString": "enum Arbitrator.DisputeStatus"
                            }
                          },
                          "src": "4161:94:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "src": "4138:117:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "5468652061677265656d656e7420697320616c726561647920646973707574656420616e64206973206e6f742061707065616c61626c652e",
                        "id": 12055,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "4269:58:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_a9988305a42711d8b7bb2acc1977509089fd57364c13cfe0e62681f6537f6336",
                          "typeString": "literal_string \"The agreement is already disputed and is not appealable.\""
                        },
                        "value": "The agreement is already disputed and is not appealable."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_a9988305a42711d8b7bb2acc1977509089fd57364c13cfe0e62681f6537f6336",
                          "typeString": "literal_string \"The agreement is already disputed and is not appealable.\""
                        }
                      ],
                      "id": 12040,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "4117:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 12056,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4117:220:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12057,
                  "nodeType": "ExpressionStatement",
                  "src": "4117:220:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 12061,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "id": 12059,
                          "name": "_side",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 12008,
                          "src": "4355:5:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "<=",
                        "rightExpression": {
                          "argumentTypes": null,
                          "hexValue": "31",
                          "id": 12060,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "4364:1:39",
                          "subdenomination": null,
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_1_by_1",
                            "typeString": "int_const 1"
                          },
                          "value": "1"
                        },
                        "src": "4355:10:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "546865726520617265206f6e6c792074776f2073696465732e",
                        "id": 12062,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "4367:27:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_cd7081307adad97e60945c0dd2576f7c13c5e996dd9230302cd36a3067d24fd6",
                          "typeString": "literal_string \"There are only two sides.\""
                        },
                        "value": "There are only two sides."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_cd7081307adad97e60945c0dd2576f7c13c5e996dd9230302cd36a3067d24fd6",
                          "typeString": "literal_string \"There are only two sides.\""
                        }
                      ],
                      "id": 12058,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "4347:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 12063,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4347:48:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12064,
                  "nodeType": "ExpressionStatement",
                  "src": "4347:48:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 12069,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12066,
                            "name": "msg",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20639,
                            "src": "4413:3:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_magic_message",
                              "typeString": "msg"
                            }
                          },
                          "id": 12067,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "value",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "4413:9:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": ">",
                        "rightExpression": {
                          "argumentTypes": null,
                          "hexValue": "30",
                          "id": 12068,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "4425:1:39",
                          "subdenomination": null,
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_0_by_1",
                            "typeString": "int_const 0"
                          },
                          "value": "0"
                        },
                        "src": "4413:13:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "5468652076616c7565206f662074686520636f6e747269627574696f6e2063616e6e6f74206265207a65726f2e",
                        "id": 12070,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "4428:47:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_29e613d702e4a9247a55c1813287b04f2c861eeb6fa407ac4450649148a6cccc",
                          "typeString": "literal_string \"The value of the contribution cannot be zero.\""
                        },
                        "value": "The value of the contribution cannot be zero."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_29e613d702e4a9247a55c1813287b04f2c861eeb6fa407ac4450649148a6cccc",
                          "typeString": "literal_string \"The value of the contribution cannot be zero.\""
                        }
                      ],
                      "id": 12065,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "4405:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 12071,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4405:71:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12072,
                  "nodeType": "ExpressionStatement",
                  "src": "4405:71:39"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 12076,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 12073,
                        "name": "_paidFees",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12018,
                        "src": "4534:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                        }
                      },
                      "id": 12074,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "firstContributionTime",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11876,
                      "src": "4534:31:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "==",
                    "rightExpression": {
                      "argumentTypes": null,
                      "hexValue": "30",
                      "id": 12075,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "4569:1:39",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "4534:36:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "id": 12192,
                    "nodeType": "Block",
                    "src": "4919:521:39",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12137,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12133,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "4948:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12135,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "cost",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11903,
                            "src": "4948:21:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "30",
                            "id": 12136,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "4972:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "src": "4948:25:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12138,
                        "nodeType": "ExpressionStatement",
                        "src": "4948:25:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12143,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12139,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "4987:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12141,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "appealing",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11905,
                            "src": "4987:26:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "66616c7365",
                            "id": 12142,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "bool",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5016:5:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            },
                            "value": "false"
                          },
                          "src": "4987:34:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 12144,
                        "nodeType": "ExpressionStatement",
                        "src": "4987:34:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12154,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "components": [
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12145,
                                  "name": "fundDisputeCache",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 11952,
                                  "src": "5036:16:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                  }
                                },
                                "id": 12147,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": true,
                                "memberName": "appealPeriodStart",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11907,
                                "src": "5036:34:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12148,
                                  "name": "fundDisputeCache",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 11952,
                                  "src": "5072:16:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                  }
                                },
                                "id": 12149,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": true,
                                "memberName": "appealPeriodEnd",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11909,
                                "src": "5072:32:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "id": 12150,
                            "isConstant": false,
                            "isInlineArray": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "TupleExpression",
                            "src": "5035:70:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$",
                              "typeString": "tuple(uint256,uint256)"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "components": [
                              {
                                "argumentTypes": null,
                                "hexValue": "30",
                                "id": 12151,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "5109:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_0_by_1",
                                  "typeString": "int_const 0"
                                },
                                "value": "0"
                              },
                              {
                                "argumentTypes": null,
                                "hexValue": "30",
                                "id": 12152,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "5112:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_0_by_1",
                                  "typeString": "int_const 0"
                                },
                                "value": "0"
                              }
                            ],
                            "id": 12153,
                            "isConstant": false,
                            "isInlineArray": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "TupleExpression",
                            "src": "5108:6:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$_t_rational_0_by_1_$_t_rational_0_by_1_$",
                              "typeString": "tuple(int_const 0,int_const 0)"
                            }
                          },
                          "src": "5035:79:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 12155,
                        "nodeType": "ExpressionStatement",
                        "src": "5035:79:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12160,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12156,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "5128:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12158,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "appealPeriodSupported",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11911,
                            "src": "5128:38:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "66616c7365",
                            "id": 12159,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "bool",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5169:5:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            },
                            "value": "false"
                          },
                          "src": "5128:46:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 12161,
                        "nodeType": "ExpressionStatement",
                        "src": "5128:46:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12166,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12162,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "5188:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12164,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "requiredValueForSide",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11913,
                            "src": "5188:37:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "30",
                            "id": 12165,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5228:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "src": "5188:41:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12167,
                        "nodeType": "ExpressionStatement",
                        "src": "5188:41:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12172,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12168,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "5243:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12170,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "expectedValue",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11915,
                            "src": "5243:30:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "30",
                            "id": 12171,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5276:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "src": "5243:34:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12173,
                        "nodeType": "ExpressionStatement",
                        "src": "5243:34:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12178,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12174,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "5291:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12176,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "stillRequiredValueForSide",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11917,
                            "src": "5291:42:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "30",
                            "id": 12177,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5336:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "src": "5291:46:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12179,
                        "nodeType": "ExpressionStatement",
                        "src": "5291:46:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12184,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12180,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "5351:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12182,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "keptValue",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11919,
                            "src": "5351:26:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "30",
                            "id": 12183,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5380:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "src": "5351:30:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12185,
                        "nodeType": "ExpressionStatement",
                        "src": "5351:30:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12190,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12186,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "5395:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12188,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "refundedValue",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11921,
                            "src": "5395:30:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "30",
                            "id": 12189,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5428:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "src": "5395:34:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12191,
                        "nodeType": "ExpressionStatement",
                        "src": "5395:34:39"
                      }
                    ]
                  },
                  "id": 12193,
                  "nodeType": "IfStatement",
                  "src": "4530:910:39",
                  "trueBody": {
                    "id": 12132,
                    "nodeType": "Block",
                    "src": "4572:341:39",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12081,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12077,
                              "name": "_paidFees",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12018,
                              "src": "4586:9:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                              }
                            },
                            "id": 12079,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "firstContributionTime",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11876,
                            "src": "4586:31:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "id": 12080,
                            "name": "now",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20641,
                            "src": "4620:3:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "4586:37:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12082,
                        "nodeType": "ExpressionStatement",
                        "src": "4586:37:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "hexValue": "30",
                              "id": 12088,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "4659:1:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12083,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "4637:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12086,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "ruling",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11879,
                              "src": "4637:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                "typeString": "uint256[] storage ref"
                              }
                            },
                            "id": 12087,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "push",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "4637:21:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
                              "typeString": "function (uint256) returns (uint256)"
                            }
                          },
                          "id": 12089,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "4637:24:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12090,
                        "nodeType": "ExpressionStatement",
                        "src": "4637:24:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 12096,
                              "name": "stake",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11946,
                              "src": "4696:5:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12091,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "4675:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12094,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "stake",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11882,
                              "src": "4675:15:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                "typeString": "uint256[] storage ref"
                              }
                            },
                            "id": 12095,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "push",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "4675:20:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
                              "typeString": "function (uint256) returns (uint256)"
                            }
                          },
                          "id": 12097,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "4675:27:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12098,
                        "nodeType": "ExpressionStatement",
                        "src": "4675:27:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "hexValue": "30",
                              "id": 12104,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "4742:1:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12099,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "4716:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12102,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "totalValue",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11885,
                              "src": "4716:20:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                "typeString": "uint256[] storage ref"
                              }
                            },
                            "id": 12103,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "push",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "4716:25:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
                              "typeString": "function (uint256) returns (uint256)"
                            }
                          },
                          "id": 12105,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "4716:28:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12106,
                        "nodeType": "ExpressionStatement",
                        "src": "4716:28:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "components": [
                                {
                                  "argumentTypes": null,
                                  "hexValue": "30",
                                  "id": 12112,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "4798:1:39",
                                  "subdenomination": null,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_0_by_1",
                                    "typeString": "int_const 0"
                                  },
                                  "value": "0"
                                },
                                {
                                  "argumentTypes": null,
                                  "hexValue": "30",
                                  "id": 12113,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "4801:1:39",
                                  "subdenomination": null,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_0_by_1",
                                    "typeString": "int_const 0"
                                  },
                                  "value": "0"
                                }
                              ],
                              "id": 12114,
                              "isConstant": false,
                              "isInlineArray": true,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "TupleExpression",
                              "src": "4797:6:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_uint8_$2_memory_ptr",
                                "typeString": "uint8[2] memory"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_array$_t_uint8_$2_memory_ptr",
                                "typeString": "uint8[2] memory"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12107,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "4758:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12110,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "totalContributedPerSide",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11890,
                              "src": "4758:33:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                "typeString": "uint256[2] storage ref[] storage ref"
                              }
                            },
                            "id": 12111,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "push",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "4758:38:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_uint256_$2_storage_$returns$_t_uint256_$",
                              "typeString": "function (uint256[2] storage ref) returns (uint256)"
                            }
                          },
                          "id": 12115,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "4758:46:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12116,
                        "nodeType": "ExpressionStatement",
                        "src": "4758:46:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "hexValue": "66616c7365",
                              "id": 12122,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "bool",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "4850:5:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              "value": "false"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12117,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "4818:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12120,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "loserFullyFunded",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11893,
                              "src": "4818:26:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                                "typeString": "bool[] storage ref"
                              }
                            },
                            "id": 12121,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "push",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "4818:31:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_arraypush_nonpayable$_t_bool_$returns$_t_uint256_$",
                              "typeString": "function (bool) returns (uint256)"
                            }
                          },
                          "id": 12123,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "4818:38:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12124,
                        "nodeType": "ExpressionStatement",
                        "src": "4818:38:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12130,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "UnaryOperation",
                          "operator": "++",
                          "prefix": false,
                          "src": "4870:32:39",
                          "subExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12125,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "4870:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12128,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "contributions",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11900,
                              "src": "4870:23:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                                "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                              }
                            },
                            "id": 12129,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "length",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "4870:30:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12131,
                        "nodeType": "ExpressionStatement",
                        "src": "4870:32:39"
                      }
                    ]
                  }
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 12198,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12194,
                          "name": "_paidFees",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 12018,
                          "src": "5499:9:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                            "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                          }
                        },
                        "id": 12195,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "stake",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 11882,
                        "src": "5499:15:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                          "typeString": "uint256[] storage ref"
                        }
                      },
                      "id": 12196,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": null,
                      "src": "5499:22:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "==",
                    "rightExpression": {
                      "argumentTypes": null,
                      "hexValue": "31",
                      "id": 12197,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "5525:1:39",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_1_by_1",
                        "typeString": "int_const 1"
                      },
                      "value": "1"
                    },
                    "src": "5499:27:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "id": 12324,
                    "nodeType": "Block",
                    "src": "5890:1284:39",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12237,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12226,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "5915:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12228,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "cost",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11903,
                            "src": "5915:21:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12232,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "5971:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12233,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "disputeID",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10718,
                                "src": "5971:19:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12234,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "5992:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12235,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "extraData",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10712,
                                "src": "5992:19:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_storage",
                                  "typeString": "bytes storage ref"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                {
                                  "typeIdentifier": "t_bytes_storage",
                                  "typeString": "bytes storage ref"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12229,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "5939:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12230,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "arbitrator",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10716,
                                "src": "5939:20:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                  "typeString": "contract Arbitrator"
                                }
                              },
                              "id": 12231,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "appealCost",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 3996,
                              "src": "5939:31:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_view$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$",
                                "typeString": "function (uint256,bytes memory) view external returns (uint256)"
                              }
                            },
                            "id": 12236,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "5939:73:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "5915:97:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12238,
                        "nodeType": "ExpressionStatement",
                        "src": "5915:97:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12243,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12239,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "6027:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12241,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "appealing",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11905,
                            "src": "6027:26:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "hexValue": "74727565",
                            "id": 12242,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "bool",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "6056:4:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            },
                            "value": "true"
                          },
                          "src": "6027:33:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 12244,
                        "nodeType": "ExpressionStatement",
                        "src": "6027:33:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12257,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "components": [
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12245,
                                  "name": "fundDisputeCache",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 11952,
                                  "src": "6075:16:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                  }
                                },
                                "id": 12247,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": true,
                                "memberName": "appealPeriodStart",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11907,
                                "src": "6075:34:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12248,
                                  "name": "fundDisputeCache",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 11952,
                                  "src": "6111:16:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                  }
                                },
                                "id": 12249,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": true,
                                "memberName": "appealPeriodEnd",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11909,
                                "src": "6111:32:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "id": 12250,
                            "isConstant": false,
                            "isInlineArray": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "TupleExpression",
                            "src": "6074:70:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$",
                              "typeString": "tuple(uint256,uint256)"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12254,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "6181:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12255,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "disputeID",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10718,
                                "src": "6181:19:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12251,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "6147:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12252,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "arbitrator",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10716,
                                "src": "6147:20:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                  "typeString": "contract Arbitrator"
                                }
                              },
                              "id": 12253,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "appealPeriod",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 4006,
                              "src": "6147:33:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$_t_uint256_$",
                                "typeString": "function (uint256) view external returns (uint256,uint256)"
                              }
                            },
                            "id": 12256,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "6147:54:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$",
                              "typeString": "tuple(uint256,uint256)"
                            }
                          },
                          "src": "6074:127:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 12258,
                        "nodeType": "ExpressionStatement",
                        "src": "6074:127:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12271,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12259,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "6215:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12261,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "appealPeriodSupported",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11911,
                            "src": "6215:38:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "commonType": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            },
                            "id": 12270,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "id": 12265,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12262,
                                  "name": "fundDisputeCache",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 11952,
                                  "src": "6256:16:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                  }
                                },
                                "id": 12263,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "appealPeriodStart",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11907,
                                "src": "6256:34:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "!=",
                              "rightExpression": {
                                "argumentTypes": null,
                                "hexValue": "30",
                                "id": 12264,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "6294:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_0_by_1",
                                  "typeString": "int_const 0"
                                },
                                "value": "0"
                              },
                              "src": "6256:39:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "&&",
                            "rightExpression": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "id": 12269,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12266,
                                  "name": "fundDisputeCache",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 11952,
                                  "src": "6299:16:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                  }
                                },
                                "id": 12267,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "appealPeriodEnd",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11909,
                                "src": "6299:32:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "!=",
                              "rightExpression": {
                                "argumentTypes": null,
                                "hexValue": "30",
                                "id": 12268,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "6335:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_0_by_1",
                                  "typeString": "int_const 0"
                                },
                                "value": "0"
                              },
                              "src": "6299:37:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            "src": "6256:80:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "src": "6215:121:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 12272,
                        "nodeType": "ExpressionStatement",
                        "src": "6215:121:39"
                      },
                      {
                        "condition": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12273,
                            "name": "fundDisputeCache",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11952,
                            "src": "6354:16:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                              "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                            }
                          },
                          "id": 12274,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "appealPeriodSupported",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 11911,
                          "src": "6354:38:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "falseBody": {
                          "expression": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "commonType": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                "id": 12319,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12315,
                                    "name": "msg",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 20639,
                                    "src": "7048:3:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_magic_message",
                                      "typeString": "msg"
                                    }
                                  },
                                  "id": 12316,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "value",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "7048:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": ">=",
                                "rightExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12317,
                                    "name": "fundDisputeCache",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11952,
                                    "src": "7061:16:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                      "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                    }
                                  },
                                  "id": 12318,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "cost",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11903,
                                  "src": "7061:21:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "src": "7048:34:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              {
                                "argumentTypes": null,
                                "hexValue": "46656573206d757374206265207061696420696e2066756c6c206966207468652061726269747261746f7220646f6573206e6f7420737570706f7274206061707065616c506572696f64602e",
                                "id": 12320,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "string",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "7084:78:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_stringliteral_f030ccf3af9ce9851b85d6297abb834f301840092c45eb9cc1a955f5a58d04b7",
                                  "typeString": "literal_string \"Fees must be paid in full if the arbitrator does not support `appealPeriod`.\""
                                },
                                "value": "Fees must be paid in full if the arbitrator does not support `appealPeriod`."
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                },
                                {
                                  "typeIdentifier": "t_stringliteral_f030ccf3af9ce9851b85d6297abb834f301840092c45eb9cc1a955f5a58d04b7",
                                  "typeString": "literal_string \"Fees must be paid in full if the arbitrator does not support `appealPeriod`.\""
                                }
                              ],
                              "id": 12314,
                              "name": "require",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [
                                20642,
                                20643
                              ],
                              "referencedDeclaration": 20643,
                              "src": "7040:7:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                                "typeString": "function (bool,string memory) pure"
                              }
                            },
                            "id": 12321,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "7040:123:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$__$",
                              "typeString": "tuple()"
                            }
                          },
                          "id": 12322,
                          "nodeType": "ExpressionStatement",
                          "src": "7040:123:39"
                        },
                        "id": 12323,
                        "nodeType": "IfStatement",
                        "src": "6350:813:39",
                        "trueBody": {
                          "id": 12313,
                          "nodeType": "Block",
                          "src": "6394:640:39",
                          "statements": [
                            {
                              "condition": {
                                "argumentTypes": null,
                                "commonType": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                "id": 12288,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "argumentTypes": null,
                                  "id": 12275,
                                  "name": "now",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20641,
                                  "src": "6416:3:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": "<",
                                "rightExpression": {
                                  "argumentTypes": null,
                                  "commonType": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  },
                                  "id": 12287,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12276,
                                      "name": "fundDisputeCache",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11952,
                                      "src": "6422:16:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                        "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                      }
                                    },
                                    "id": 12277,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "appealPeriodStart",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11907,
                                    "src": "6422:34:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": "+",
                                  "rightExpression": {
                                    "argumentTypes": null,
                                    "components": [
                                      {
                                        "argumentTypes": null,
                                        "commonType": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        },
                                        "id": 12285,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftExpression": {
                                          "argumentTypes": null,
                                          "components": [
                                            {
                                              "argumentTypes": null,
                                              "commonType": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              },
                                              "id": 12282,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "leftExpression": {
                                                "argumentTypes": null,
                                                "expression": {
                                                  "argumentTypes": null,
                                                  "id": 12278,
                                                  "name": "fundDisputeCache",
                                                  "nodeType": "Identifier",
                                                  "overloadedDeclarations": [],
                                                  "referencedDeclaration": 11952,
                                                  "src": "6461:16:39",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                                  }
                                                },
                                                "id": 12279,
                                                "isConstant": false,
                                                "isLValue": true,
                                                "isPure": false,
                                                "lValueRequested": false,
                                                "memberName": "appealPeriodEnd",
                                                "nodeType": "MemberAccess",
                                                "referencedDeclaration": 11909,
                                                "src": "6461:32:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_uint256",
                                                  "typeString": "uint256"
                                                }
                                              },
                                              "nodeType": "BinaryOperation",
                                              "operator": "-",
                                              "rightExpression": {
                                                "argumentTypes": null,
                                                "expression": {
                                                  "argumentTypes": null,
                                                  "id": 12280,
                                                  "name": "fundDisputeCache",
                                                  "nodeType": "Identifier",
                                                  "overloadedDeclarations": [],
                                                  "referencedDeclaration": 11952,
                                                  "src": "6496:16:39",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                                  }
                                                },
                                                "id": 12281,
                                                "isConstant": false,
                                                "isLValue": true,
                                                "isPure": false,
                                                "lValueRequested": false,
                                                "memberName": "appealPeriodStart",
                                                "nodeType": "MemberAccess",
                                                "referencedDeclaration": 11907,
                                                "src": "6496:34:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_uint256",
                                                  "typeString": "uint256"
                                                }
                                              },
                                              "src": "6461:69:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            }
                                          ],
                                          "id": 12283,
                                          "isConstant": false,
                                          "isInlineArray": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "TupleExpression",
                                          "src": "6460:71:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "nodeType": "BinaryOperation",
                                        "operator": "/",
                                        "rightExpression": {
                                          "argumentTypes": null,
                                          "hexValue": "32",
                                          "id": 12284,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "number",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "6534:1:39",
                                          "subdenomination": null,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_rational_2_by_1",
                                            "typeString": "int_const 2"
                                          },
                                          "value": "2"
                                        },
                                        "src": "6460:75:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      }
                                    ],
                                    "id": 12286,
                                    "isConstant": false,
                                    "isInlineArray": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "TupleExpression",
                                    "src": "6459:77:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "src": "6422:114:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "src": "6416:120:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "falseBody": {
                                "expression": {
                                  "argumentTypes": null,
                                  "arguments": [
                                    {
                                      "argumentTypes": null,
                                      "commonType": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      },
                                      "id": 12308,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "argumentTypes": null,
                                        "commonType": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        },
                                        "id": 12299,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftExpression": {
                                          "argumentTypes": null,
                                          "id": 12297,
                                          "name": "_side",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12008,
                                          "src": "6792:5:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "nodeType": "BinaryOperation",
                                        "operator": "==",
                                        "rightExpression": {
                                          "argumentTypes": null,
                                          "hexValue": "31",
                                          "id": 12298,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "number",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "6801:1:39",
                                          "subdenomination": null,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_rational_1_by_1",
                                            "typeString": "int_const 1"
                                          },
                                          "value": "1"
                                        },
                                        "src": "6792:10:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bool",
                                          "typeString": "bool"
                                        }
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": "&&",
                                      "rightExpression": {
                                        "argumentTypes": null,
                                        "baseExpression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12300,
                                            "name": "_paidFees",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12018,
                                            "src": "6806:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                              "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                            }
                                          },
                                          "id": 12301,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "loserFullyFunded",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 11893,
                                          "src": "6806:26:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                                            "typeString": "bool[] storage ref"
                                          }
                                        },
                                        "id": 12307,
                                        "indexExpression": {
                                          "argumentTypes": null,
                                          "commonType": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          },
                                          "id": 12306,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "leftExpression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "id": 12302,
                                                "name": "_paidFees",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 12018,
                                                "src": "6833:9:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                }
                                              },
                                              "id": 12303,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "loserFullyFunded",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 11893,
                                              "src": "6833:26:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                                                "typeString": "bool[] storage ref"
                                              }
                                            },
                                            "id": 12304,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "length",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": null,
                                            "src": "6833:33:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "nodeType": "BinaryOperation",
                                          "operator": "-",
                                          "rightExpression": {
                                            "argumentTypes": null,
                                            "hexValue": "31",
                                            "id": 12305,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "6869:1:39",
                                            "subdenomination": null,
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_1_by_1",
                                              "typeString": "int_const 1"
                                            },
                                            "value": "1"
                                          },
                                          "src": "6833:37:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "nodeType": "IndexAccess",
                                        "src": "6806:65:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bool",
                                          "typeString": "bool"
                                        }
                                      },
                                      "src": "6792:79:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    },
                                    {
                                      "argumentTypes": null,
                                      "hexValue": "4974206973207468652077696e6e696e6720736964652773207475726e20746f2066756e64207468652061707065616c2c206f6e6c7920696620746865206c6f73696e67207369646520616c72656164792066756c6c792066756e6465642069742e",
                                      "id": 12309,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "string",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "6897:100:39",
                                      "subdenomination": null,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_stringliteral_11e79bbb8394f494bd8c29e629dbf175534ba9a049c2acd22df8ee3a735660e2",
                                        "typeString": "literal_string \"It is the winning side's turn to fund the appeal, only if the losing side already fully funded it.\""
                                      },
                                      "value": "It is the winning side's turn to fund the appeal, only if the losing side already fully funded it."
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": [
                                      {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      },
                                      {
                                        "typeIdentifier": "t_stringliteral_11e79bbb8394f494bd8c29e629dbf175534ba9a049c2acd22df8ee3a735660e2",
                                        "typeString": "literal_string \"It is the winning side's turn to fund the appeal, only if the losing side already fully funded it.\""
                                      }
                                    ],
                                    "id": 12296,
                                    "name": "require",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [
                                      20642,
                                      20643
                                    ],
                                    "referencedDeclaration": 20643,
                                    "src": "6759:7:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                                      "typeString": "function (bool,string memory) pure"
                                    }
                                  },
                                  "id": 12310,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "functionCall",
                                  "lValueRequested": false,
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "6759:260:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_tuple$__$",
                                    "typeString": "tuple()"
                                  }
                                },
                                "id": 12311,
                                "nodeType": "ExpressionStatement",
                                "src": "6759:260:39"
                              },
                              "id": 12312,
                              "nodeType": "IfStatement",
                              "src": "6412:607:39",
                              "trueBody": {
                                "expression": {
                                  "argumentTypes": null,
                                  "arguments": [
                                    {
                                      "argumentTypes": null,
                                      "commonType": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      },
                                      "id": 12292,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "argumentTypes": null,
                                        "id": 12290,
                                        "name": "_side",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 12008,
                                        "src": "6609:5:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": "==",
                                      "rightExpression": {
                                        "argumentTypes": null,
                                        "hexValue": "30",
                                        "id": 12291,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "6618:1:39",
                                        "subdenomination": null,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_0_by_1",
                                          "typeString": "int_const 0"
                                        },
                                        "value": "0"
                                      },
                                      "src": "6609:10:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    },
                                    {
                                      "argumentTypes": null,
                                      "hexValue": "497420697320746865206c6f73696e6720736964652773207475726e20746f2066756e64207468652061707065616c2e",
                                      "id": 12293,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "string",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "6621:50:39",
                                      "subdenomination": null,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_stringliteral_fcb7d1ac3f62b5b6106b4cabdd544f8bdb61837072e9ac64e15fe575310a82e0",
                                        "typeString": "literal_string \"It is the losing side's turn to fund the appeal.\""
                                      },
                                      "value": "It is the losing side's turn to fund the appeal."
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": [
                                      {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      },
                                      {
                                        "typeIdentifier": "t_stringliteral_fcb7d1ac3f62b5b6106b4cabdd544f8bdb61837072e9ac64e15fe575310a82e0",
                                        "typeString": "literal_string \"It is the losing side's turn to fund the appeal.\""
                                      }
                                    ],
                                    "id": 12289,
                                    "name": "require",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [
                                      20642,
                                      20643
                                    ],
                                    "referencedDeclaration": 20643,
                                    "src": "6601:7:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                                      "typeString": "function (bool,string memory) pure"
                                    }
                                  },
                                  "id": 12294,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "functionCall",
                                  "lValueRequested": false,
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "6601:71:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_tuple$__$",
                                    "typeString": "tuple()"
                                  }
                                },
                                "id": 12295,
                                "nodeType": "ExpressionStatement",
                                "src": "6601:71:39"
                              }
                            }
                          ]
                        }
                      }
                    ]
                  },
                  "id": 12325,
                  "nodeType": "IfStatement",
                  "src": "5495:1679:39",
                  "trueBody": {
                    "id": 12225,
                    "nodeType": "Block",
                    "src": "5528:356:39",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12208,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12199,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "5558:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12201,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "cost",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11903,
                            "src": "5558:21:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12205,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "5619:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12206,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "extraData",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10712,
                                "src": "5619:19:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_storage",
                                  "typeString": "bytes storage ref"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bytes_storage",
                                  "typeString": "bytes storage ref"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12202,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12012,
                                  "src": "5582:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12203,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "arbitrator",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10716,
                                "src": "5582:20:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                  "typeString": "contract Arbitrator"
                                }
                              },
                              "id": 12204,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "arbitrationCost",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 3967,
                              "src": "5582:36:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_view$_t_bytes_memory_ptr_$returns$_t_uint256_$",
                                "typeString": "function (bytes memory) view external returns (uint256)"
                              }
                            },
                            "id": 12207,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "5582:57:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "5558:81:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12209,
                        "nodeType": "ExpressionStatement",
                        "src": "5558:81:39"
                      },
                      {
                        "condition": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "id": 12216,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "argumentTypes": null,
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 12213,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "argumentTypes": null,
                              "id": 12210,
                              "name": "now",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 20641,
                              "src": "5700:3:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "-",
                            "rightExpression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12211,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "5706:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12212,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "firstContributionTime",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11876,
                              "src": "5706:31:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "src": "5700:37:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": ">",
                          "rightExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12214,
                              "name": "agreement",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12012,
                              "src": "5740:9:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                              }
                            },
                            "id": 12215,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "arbitrationFeesWaitingTime",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 10714,
                            "src": "5740:36:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "5700:76:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "falseBody": null,
                        "id": 12224,
                        "nodeType": "IfStatement",
                        "src": "5696:178:39",
                        "trueBody": {
                          "id": 12223,
                          "nodeType": "Block",
                          "src": "5778:96:39",
                          "statements": [
                            {
                              "expression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "id": 12218,
                                    "name": "_agreementID",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 12006,
                                    "src": "5819:12:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  },
                                  {
                                    "argumentTypes": null,
                                    "hexValue": "30",
                                    "id": 12219,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "number",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "5833:1:39",
                                    "subdenomination": null,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_rational_0_by_1",
                                      "typeString": "int_const 0"
                                    },
                                    "value": "0"
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    },
                                    {
                                      "typeIdentifier": "t_rational_0_by_1",
                                      "typeString": "int_const 0"
                                    }
                                  ],
                                  "id": 12217,
                                  "name": "executeAgreementRuling",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 10897,
                                  "src": "5796:22:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_uint256_$returns$__$",
                                    "typeString": "function (bytes32,uint256)"
                                  }
                                },
                                "id": 12220,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "5796:39:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_tuple$__$",
                                  "typeString": "tuple()"
                                }
                              },
                              "id": 12221,
                              "nodeType": "ExpressionStatement",
                              "src": "5796:39:39"
                            },
                            {
                              "expression": null,
                              "functionReturnParameters": 12010,
                              "id": 12222,
                              "nodeType": "Return",
                              "src": "5853:7:39"
                            }
                          ]
                        }
                      }
                    ]
                  }
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "id": 12328,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "UnaryOperation",
                    "operator": "!",
                    "prefix": true,
                    "src": "7223:27:39",
                    "subExpression": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 12326,
                        "name": "fundDisputeCache",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11952,
                        "src": "7224:16:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                          "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                        }
                      },
                      "id": 12327,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "appealing",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11905,
                      "src": "7224:26:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "id": 12434,
                    "nodeType": "Block",
                    "src": "7360:906:39",
                    "statements": [
                      {
                        "condition": {
                          "argumentTypes": null,
                          "id": 12340,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "UnaryOperation",
                          "operator": "!",
                          "prefix": true,
                          "src": "7389:39:39",
                          "subExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12338,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "7390:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12339,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "appealPeriodSupported",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11911,
                            "src": "7390:38:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "falseBody": {
                          "condition": {
                            "argumentTypes": null,
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 12350,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "argumentTypes": null,
                              "id": 12348,
                              "name": "_side",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12008,
                              "src": "7530:5:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "==",
                            "rightExpression": {
                              "argumentTypes": null,
                              "hexValue": "30",
                              "id": 12349,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "7539:1:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            },
                            "src": "7530:10:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "falseBody": {
                            "id": 12431,
                            "nodeType": "Block",
                            "src": "7706:550:39",
                            "statements": [
                              {
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12392,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftHandSide": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12370,
                                      "name": "fundDisputeCache",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11952,
                                      "src": "7741:16:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                        "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                      }
                                    },
                                    "id": 12372,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": true,
                                    "memberName": "expectedValue",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11915,
                                    "src": "7741:30:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "nodeType": "Assignment",
                                  "operator": "=",
                                  "rightHandSide": {
                                    "argumentTypes": null,
                                    "commonType": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    },
                                    "id": 12391,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "leftExpression": {
                                      "argumentTypes": null,
                                      "baseExpression": {
                                        "argumentTypes": null,
                                        "baseExpression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12373,
                                            "name": "_paidFees",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12018,
                                            "src": "7774:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                              "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                            }
                                          },
                                          "id": 12374,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "totalContributedPerSide",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 11890,
                                          "src": "7774:33:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                            "typeString": "uint256[2] storage ref[] storage ref"
                                          }
                                        },
                                        "id": 12380,
                                        "indexExpression": {
                                          "argumentTypes": null,
                                          "commonType": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          },
                                          "id": 12379,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "leftExpression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "id": 12375,
                                                "name": "_paidFees",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 12018,
                                                "src": "7808:9:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                }
                                              },
                                              "id": 12376,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "totalContributedPerSide",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 11890,
                                              "src": "7808:33:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                                "typeString": "uint256[2] storage ref[] storage ref"
                                              }
                                            },
                                            "id": 12377,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "length",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": null,
                                            "src": "7808:40:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "nodeType": "BinaryOperation",
                                          "operator": "-",
                                          "rightExpression": {
                                            "argumentTypes": null,
                                            "hexValue": "31",
                                            "id": 12378,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "7851:1:39",
                                            "subdenomination": null,
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_1_by_1",
                                              "typeString": "int_const 1"
                                            },
                                            "value": "1"
                                          },
                                          "src": "7808:44:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "nodeType": "IndexAccess",
                                        "src": "7774:79:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                          "typeString": "uint256[2] storage ref"
                                        }
                                      },
                                      "id": 12382,
                                      "indexExpression": {
                                        "argumentTypes": null,
                                        "hexValue": "30",
                                        "id": 12381,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "7854:1:39",
                                        "subdenomination": null,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_0_by_1",
                                          "typeString": "int_const 0"
                                        },
                                        "value": "0"
                                      },
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "nodeType": "IndexAccess",
                                      "src": "7774:82:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "nodeType": "BinaryOperation",
                                    "operator": "-",
                                    "rightExpression": {
                                      "argumentTypes": null,
                                      "baseExpression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12383,
                                          "name": "_paidFees",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12018,
                                          "src": "7859:9:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                            "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                          }
                                        },
                                        "id": 12384,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "stake",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 11882,
                                        "src": "7859:15:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                          "typeString": "uint256[] storage ref"
                                        }
                                      },
                                      "id": 12390,
                                      "indexExpression": {
                                        "argumentTypes": null,
                                        "commonType": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        },
                                        "id": 12389,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftExpression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12385,
                                              "name": "_paidFees",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12018,
                                              "src": "7875:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                              }
                                            },
                                            "id": 12386,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "stake",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 11882,
                                            "src": "7875:15:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                              "typeString": "uint256[] storage ref"
                                            }
                                          },
                                          "id": 12387,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "length",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": null,
                                          "src": "7875:22:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "nodeType": "BinaryOperation",
                                        "operator": "-",
                                        "rightExpression": {
                                          "argumentTypes": null,
                                          "hexValue": "31",
                                          "id": 12388,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "number",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "7900:1:39",
                                          "subdenomination": null,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_rational_1_by_1",
                                            "typeString": "int_const 1"
                                          },
                                          "value": "1"
                                        },
                                        "src": "7875:26:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "nodeType": "IndexAccess",
                                      "src": "7859:43:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "src": "7774:128:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "src": "7741:161:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "id": 12393,
                                "nodeType": "ExpressionStatement",
                                "src": "7741:161:39"
                              },
                              {
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12429,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftHandSide": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12394,
                                      "name": "fundDisputeCache",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11952,
                                      "src": "7920:16:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                        "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                      }
                                    },
                                    "id": 12396,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": true,
                                    "memberName": "requiredValueForSide",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11913,
                                    "src": "7920:37:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "nodeType": "Assignment",
                                  "operator": "=",
                                  "rightHandSide": {
                                    "argumentTypes": null,
                                    "condition": {
                                      "argumentTypes": null,
                                      "commonType": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      },
                                      "id": 12412,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12397,
                                          "name": "fundDisputeCache",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 11952,
                                          "src": "7960:16:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                          }
                                        },
                                        "id": 12398,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "cost",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 11903,
                                        "src": "7960:21:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": ">",
                                      "rightExpression": {
                                        "argumentTypes": null,
                                        "commonType": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        },
                                        "id": 12411,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftExpression": {
                                          "argumentTypes": null,
                                          "baseExpression": {
                                            "argumentTypes": null,
                                            "baseExpression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "id": 12399,
                                                "name": "_paidFees",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 12018,
                                                "src": "7984:9:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                }
                                              },
                                              "id": 12400,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "totalContributedPerSide",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 11890,
                                              "src": "7984:33:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                                "typeString": "uint256[2] storage ref[] storage ref"
                                              }
                                            },
                                            "id": 12406,
                                            "indexExpression": {
                                              "argumentTypes": null,
                                              "commonType": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              },
                                              "id": 12405,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "leftExpression": {
                                                "argumentTypes": null,
                                                "expression": {
                                                  "argumentTypes": null,
                                                  "expression": {
                                                    "argumentTypes": null,
                                                    "id": 12401,
                                                    "name": "_paidFees",
                                                    "nodeType": "Identifier",
                                                    "overloadedDeclarations": [],
                                                    "referencedDeclaration": 12018,
                                                    "src": "8018:9:39",
                                                    "typeDescriptions": {
                                                      "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                      "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                    }
                                                  },
                                                  "id": 12402,
                                                  "isConstant": false,
                                                  "isLValue": true,
                                                  "isPure": false,
                                                  "lValueRequested": false,
                                                  "memberName": "totalContributedPerSide",
                                                  "nodeType": "MemberAccess",
                                                  "referencedDeclaration": 11890,
                                                  "src": "8018:33:39",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                                    "typeString": "uint256[2] storage ref[] storage ref"
                                                  }
                                                },
                                                "id": 12403,
                                                "isConstant": false,
                                                "isLValue": true,
                                                "isPure": false,
                                                "lValueRequested": false,
                                                "memberName": "length",
                                                "nodeType": "MemberAccess",
                                                "referencedDeclaration": null,
                                                "src": "8018:40:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_uint256",
                                                  "typeString": "uint256"
                                                }
                                              },
                                              "nodeType": "BinaryOperation",
                                              "operator": "-",
                                              "rightExpression": {
                                                "argumentTypes": null,
                                                "hexValue": "31",
                                                "id": 12404,
                                                "isConstant": false,
                                                "isLValue": false,
                                                "isPure": true,
                                                "kind": "number",
                                                "lValueRequested": false,
                                                "nodeType": "Literal",
                                                "src": "8061:1:39",
                                                "subdenomination": null,
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_rational_1_by_1",
                                                  "typeString": "int_const 1"
                                                },
                                                "value": "1"
                                              },
                                              "src": "8018:44:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            },
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "nodeType": "IndexAccess",
                                            "src": "7984:79:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                              "typeString": "uint256[2] storage ref"
                                            }
                                          },
                                          "id": 12408,
                                          "indexExpression": {
                                            "argumentTypes": null,
                                            "hexValue": "30",
                                            "id": 12407,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "8064:1:39",
                                            "subdenomination": null,
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_0_by_1",
                                              "typeString": "int_const 0"
                                            },
                                            "value": "0"
                                          },
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "IndexAccess",
                                          "src": "7984:82:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "nodeType": "BinaryOperation",
                                        "operator": "+",
                                        "rightExpression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12409,
                                            "name": "fundDisputeCache",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 11952,
                                            "src": "8069:16:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                              "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                            }
                                          },
                                          "id": 12410,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "expectedValue",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 11915,
                                          "src": "8069:30:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "src": "7984:115:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "src": "7960:139:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    },
                                    "falseExpression": {
                                      "argumentTypes": null,
                                      "expression": {
                                        "argumentTypes": null,
                                        "id": 12426,
                                        "name": "fundDisputeCache",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 11952,
                                        "src": "8211:16:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                          "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                        }
                                      },
                                      "id": 12427,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberName": "expectedValue",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": 11915,
                                      "src": "8211:30:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "id": 12428,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "Conditional",
                                    "src": "7960:281:39",
                                    "trueExpression": {
                                      "argumentTypes": null,
                                      "commonType": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      },
                                      "id": 12425,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12413,
                                          "name": "fundDisputeCache",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 11952,
                                          "src": "8102:16:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                          }
                                        },
                                        "id": 12414,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "cost",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 11903,
                                        "src": "8102:21:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": "-",
                                      "rightExpression": {
                                        "argumentTypes": null,
                                        "baseExpression": {
                                          "argumentTypes": null,
                                          "baseExpression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12415,
                                              "name": "_paidFees",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12018,
                                              "src": "8126:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                              }
                                            },
                                            "id": 12416,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "totalContributedPerSide",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 11890,
                                            "src": "8126:33:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                              "typeString": "uint256[2] storage ref[] storage ref"
                                            }
                                          },
                                          "id": 12422,
                                          "indexExpression": {
                                            "argumentTypes": null,
                                            "commonType": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            },
                                            "id": 12421,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "leftExpression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "expression": {
                                                  "argumentTypes": null,
                                                  "id": 12417,
                                                  "name": "_paidFees",
                                                  "nodeType": "Identifier",
                                                  "overloadedDeclarations": [],
                                                  "referencedDeclaration": 12018,
                                                  "src": "8160:9:39",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                    "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                  }
                                                },
                                                "id": 12418,
                                                "isConstant": false,
                                                "isLValue": true,
                                                "isPure": false,
                                                "lValueRequested": false,
                                                "memberName": "totalContributedPerSide",
                                                "nodeType": "MemberAccess",
                                                "referencedDeclaration": 11890,
                                                "src": "8160:33:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                                  "typeString": "uint256[2] storage ref[] storage ref"
                                                }
                                              },
                                              "id": 12419,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "length",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": null,
                                              "src": "8160:40:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            },
                                            "nodeType": "BinaryOperation",
                                            "operator": "-",
                                            "rightExpression": {
                                              "argumentTypes": null,
                                              "hexValue": "31",
                                              "id": 12420,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": true,
                                              "kind": "number",
                                              "lValueRequested": false,
                                              "nodeType": "Literal",
                                              "src": "8203:1:39",
                                              "subdenomination": null,
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_rational_1_by_1",
                                                "typeString": "int_const 1"
                                              },
                                              "value": "1"
                                            },
                                            "src": "8160:44:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "IndexAccess",
                                          "src": "8126:79:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                            "typeString": "uint256[2] storage ref"
                                          }
                                        },
                                        "id": 12424,
                                        "indexExpression": {
                                          "argumentTypes": null,
                                          "hexValue": "30",
                                          "id": 12423,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "number",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "8206:1:39",
                                          "subdenomination": null,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_rational_0_by_1",
                                            "typeString": "int_const 0"
                                          },
                                          "value": "0"
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "nodeType": "IndexAccess",
                                        "src": "8126:82:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "src": "8102:106:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "src": "7920:321:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "id": 12430,
                                "nodeType": "ExpressionStatement",
                                "src": "7920:321:39"
                              }
                            ]
                          },
                          "id": 12432,
                          "nodeType": "IfStatement",
                          "src": "7526:730:39",
                          "trueBody": {
                            "expression": {
                              "argumentTypes": null,
                              "id": 12368,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftHandSide": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12351,
                                  "name": "fundDisputeCache",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 11952,
                                  "src": "7574:16:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                    "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                  }
                                },
                                "id": 12353,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": true,
                                "memberName": "requiredValueForSide",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11913,
                                "src": "7574:37:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "Assignment",
                              "operator": "=",
                              "rightHandSide": {
                                "argumentTypes": null,
                                "commonType": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                "id": 12367,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12354,
                                    "name": "fundDisputeCache",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11952,
                                    "src": "7614:16:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                      "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                    }
                                  },
                                  "id": 12355,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "cost",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11903,
                                  "src": "7614:21:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": "+",
                                "rightExpression": {
                                  "argumentTypes": null,
                                  "components": [
                                    {
                                      "argumentTypes": null,
                                      "commonType": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      },
                                      "id": 12365,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "argumentTypes": null,
                                        "hexValue": "32",
                                        "id": 12356,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "7639:1:39",
                                        "subdenomination": null,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_2_by_1",
                                          "typeString": "int_const 2"
                                        },
                                        "value": "2"
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": "*",
                                      "rightExpression": {
                                        "argumentTypes": null,
                                        "baseExpression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12357,
                                            "name": "_paidFees",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12018,
                                            "src": "7643:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                              "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                            }
                                          },
                                          "id": 12358,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "stake",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 11882,
                                          "src": "7643:15:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                            "typeString": "uint256[] storage ref"
                                          }
                                        },
                                        "id": 12364,
                                        "indexExpression": {
                                          "argumentTypes": null,
                                          "commonType": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          },
                                          "id": 12363,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "leftExpression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "id": 12359,
                                                "name": "_paidFees",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 12018,
                                                "src": "7659:9:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                }
                                              },
                                              "id": 12360,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "stake",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 11882,
                                              "src": "7659:15:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                                "typeString": "uint256[] storage ref"
                                              }
                                            },
                                            "id": 12361,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "length",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": null,
                                            "src": "7659:22:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "nodeType": "BinaryOperation",
                                          "operator": "-",
                                          "rightExpression": {
                                            "argumentTypes": null,
                                            "hexValue": "31",
                                            "id": 12362,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "7684:1:39",
                                            "subdenomination": null,
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_1_by_1",
                                              "typeString": "int_const 1"
                                            },
                                            "value": "1"
                                          },
                                          "src": "7659:26:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "nodeType": "IndexAccess",
                                        "src": "7643:43:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "src": "7639:47:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    }
                                  ],
                                  "id": 12366,
                                  "isConstant": false,
                                  "isInlineArray": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "TupleExpression",
                                  "src": "7638:49:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "src": "7614:73:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "src": "7574:113:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "id": 12369,
                            "nodeType": "ExpressionStatement",
                            "src": "7574:113:39"
                          }
                        },
                        "id": 12433,
                        "nodeType": "IfStatement",
                        "src": "7385:871:39",
                        "trueBody": {
                          "expression": {
                            "argumentTypes": null,
                            "id": 12346,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftHandSide": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12341,
                                "name": "fundDisputeCache",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 11952,
                                "src": "7446:16:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                  "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                }
                              },
                              "id": 12343,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": true,
                              "memberName": "requiredValueForSide",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11913,
                              "src": "7446:37:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "Assignment",
                            "operator": "=",
                            "rightHandSide": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12344,
                                "name": "fundDisputeCache",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 11952,
                                "src": "7486:16:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                  "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                }
                              },
                              "id": 12345,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "cost",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11903,
                              "src": "7486:21:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "src": "7446:61:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "id": 12347,
                          "nodeType": "ExpressionStatement",
                          "src": "7446:61:39"
                        }
                      }
                    ]
                  },
                  "id": 12435,
                  "nodeType": "IfStatement",
                  "src": "7219:1047:39",
                  "trueBody": {
                    "expression": {
                      "argumentTypes": null,
                      "id": 12336,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftHandSide": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12329,
                          "name": "fundDisputeCache",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11952,
                          "src": "7280:16:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                          }
                        },
                        "id": 12331,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": true,
                        "memberName": "requiredValueForSide",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 11913,
                        "src": "7280:37:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "Assignment",
                      "operator": "=",
                      "rightHandSide": {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 12335,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12332,
                            "name": "fundDisputeCache",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11952,
                            "src": "7320:16:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                              "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                            }
                          },
                          "id": 12333,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "cost",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 11903,
                          "src": "7320:21:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "/",
                        "rightExpression": {
                          "argumentTypes": null,
                          "hexValue": "32",
                          "id": 12334,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "7344:1:39",
                          "subdenomination": null,
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_2_by_1",
                            "typeString": "int_const 2"
                          },
                          "value": "2"
                        },
                        "src": "7320:25:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "src": "7280:65:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 12337,
                    "nodeType": "ExpressionStatement",
                    "src": "7280:65:39"
                  }
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 12448,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "baseExpression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12436,
                            "name": "_paidFees",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 12018,
                            "src": "8310:9:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                              "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                            }
                          },
                          "id": 12437,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "totalContributedPerSide",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 11890,
                          "src": "8310:33:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                            "typeString": "uint256[2] storage ref[] storage ref"
                          }
                        },
                        "id": 12443,
                        "indexExpression": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "id": 12442,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12438,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "8344:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12439,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "totalContributedPerSide",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11890,
                              "src": "8344:33:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                "typeString": "uint256[2] storage ref[] storage ref"
                              }
                            },
                            "id": 12440,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "length",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "8344:40:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "-",
                          "rightExpression": {
                            "argumentTypes": null,
                            "hexValue": "31",
                            "id": 12441,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "8387:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_1_by_1",
                              "typeString": "int_const 1"
                            },
                            "value": "1"
                          },
                          "src": "8344:44:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "8310:79:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_uint256_$2_storage",
                          "typeString": "uint256[2] storage ref"
                        }
                      },
                      "id": 12445,
                      "indexExpression": {
                        "argumentTypes": null,
                        "id": 12444,
                        "name": "_side",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12008,
                        "src": "8390:5:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "IndexAccess",
                      "src": "8310:86:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">=",
                    "rightExpression": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 12446,
                        "name": "fundDisputeCache",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11952,
                        "src": "8400:16:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                          "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                        }
                      },
                      "id": 12447,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "requiredValueForSide",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11913,
                      "src": "8400:37:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "8310:127:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "expression": {
                      "argumentTypes": null,
                      "id": 12471,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftHandSide": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12455,
                          "name": "fundDisputeCache",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11952,
                          "src": "8525:16:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                          }
                        },
                        "id": 12457,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": true,
                        "memberName": "stillRequiredValueForSide",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 11917,
                        "src": "8525:42:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "Assignment",
                      "operator": "=",
                      "rightHandSide": {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 12470,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12458,
                            "name": "fundDisputeCache",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11952,
                            "src": "8570:16:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                              "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                            }
                          },
                          "id": 12459,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "requiredValueForSide",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 11913,
                          "src": "8570:37:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "-",
                        "rightExpression": {
                          "argumentTypes": null,
                          "baseExpression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12460,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "8610:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12461,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "totalContributedPerSide",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11890,
                              "src": "8610:33:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                "typeString": "uint256[2] storage ref[] storage ref"
                              }
                            },
                            "id": 12467,
                            "indexExpression": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "id": 12466,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12462,
                                    "name": "_paidFees",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 12018,
                                    "src": "8644:9:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                      "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                    }
                                  },
                                  "id": 12463,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "totalContributedPerSide",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11890,
                                  "src": "8644:33:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                    "typeString": "uint256[2] storage ref[] storage ref"
                                  }
                                },
                                "id": 12464,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": null,
                                "src": "8644:40:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "-",
                              "rightExpression": {
                                "argumentTypes": null,
                                "hexValue": "31",
                                "id": 12465,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "8687:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_1_by_1",
                                  "typeString": "int_const 1"
                                },
                                "value": "1"
                              },
                              "src": "8644:44:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "8610:79:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_uint256_$2_storage",
                              "typeString": "uint256[2] storage ref"
                            }
                          },
                          "id": 12469,
                          "indexExpression": {
                            "argumentTypes": null,
                            "id": 12468,
                            "name": "_side",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 12008,
                            "src": "8690:5:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "IndexAccess",
                          "src": "8610:86:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "src": "8570:126:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "src": "8525:171:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 12472,
                    "nodeType": "ExpressionStatement",
                    "src": "8525:171:39"
                  },
                  "id": 12473,
                  "nodeType": "IfStatement",
                  "src": "8306:390:39",
                  "trueBody": {
                    "expression": {
                      "argumentTypes": null,
                      "id": 12453,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftHandSide": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12449,
                          "name": "fundDisputeCache",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11952,
                          "src": "8451:16:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                          }
                        },
                        "id": 12451,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": true,
                        "memberName": "stillRequiredValueForSide",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 11917,
                        "src": "8451:42:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "Assignment",
                      "operator": "=",
                      "rightHandSide": {
                        "argumentTypes": null,
                        "hexValue": "30",
                        "id": 12452,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "8496:1:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_0_by_1",
                          "typeString": "int_const 0"
                        },
                        "value": "0"
                      },
                      "src": "8451:46:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 12454,
                    "nodeType": "ExpressionStatement",
                    "src": "8451:46:39"
                  }
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 12487,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 12474,
                        "name": "fundDisputeCache",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11952,
                        "src": "8706:16:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                          "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                        }
                      },
                      "id": 12476,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "keptValue",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11919,
                      "src": "8706:26:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "condition": {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 12481,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12477,
                            "name": "fundDisputeCache",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11952,
                            "src": "8735:16:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                              "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                            }
                          },
                          "id": 12478,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "stillRequiredValueForSide",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 11917,
                          "src": "8735:42:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": ">=",
                        "rightExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12479,
                            "name": "msg",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20639,
                            "src": "8781:3:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_magic_message",
                              "typeString": "msg"
                            }
                          },
                          "id": 12480,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "value",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "8781:9:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "src": "8735:55:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      "falseExpression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12484,
                          "name": "fundDisputeCache",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11952,
                          "src": "8817:16:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                          }
                        },
                        "id": 12485,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "stillRequiredValueForSide",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 11917,
                        "src": "8817:42:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "id": 12486,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "Conditional",
                      "src": "8735:124:39",
                      "trueExpression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12482,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20639,
                          "src": "8805:3:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 12483,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "value",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "8805:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "8706:153:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 12488,
                  "nodeType": "ExpressionStatement",
                  "src": "8706:153:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 12497,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 12489,
                        "name": "fundDisputeCache",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11952,
                        "src": "8869:16:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                          "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                        }
                      },
                      "id": 12491,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "refundedValue",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11921,
                      "src": "8869:30:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "commonType": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "id": 12496,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12492,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20639,
                          "src": "8902:3:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 12493,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "value",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "8902:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "-",
                      "rightExpression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12494,
                          "name": "fundDisputeCache",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11952,
                          "src": "8914:16:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                          }
                        },
                        "id": 12495,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "keptValue",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 11919,
                        "src": "8914:26:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "src": "8902:38:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "8869:71:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 12498,
                  "nodeType": "ExpressionStatement",
                  "src": "8869:71:39"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 12502,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 12499,
                        "name": "fundDisputeCache",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11952,
                        "src": "8954:16:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                          "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                        }
                      },
                      "id": 12500,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "keptValue",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11919,
                      "src": "8954:26:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">",
                    "rightExpression": {
                      "argumentTypes": null,
                      "hexValue": "30",
                      "id": 12501,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "8983:1:39",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "8954:30:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": null,
                  "id": 12550,
                  "nodeType": "IfStatement",
                  "src": "8950:396:39",
                  "trueBody": {
                    "id": 12549,
                    "nodeType": "Block",
                    "src": "8986:360:39",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12514,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12503,
                                "name": "_paidFees",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12018,
                                "src": "9000:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                }
                              },
                              "id": 12510,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "totalValue",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11885,
                              "src": "9000:20:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                "typeString": "uint256[] storage ref"
                              }
                            },
                            "id": 12511,
                            "indexExpression": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "id": 12509,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12505,
                                    "name": "_paidFees",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 12018,
                                    "src": "9021:9:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                      "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                    }
                                  },
                                  "id": 12506,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "totalValue",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11885,
                                  "src": "9021:20:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                    "typeString": "uint256[] storage ref"
                                  }
                                },
                                "id": 12507,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": null,
                                "src": "9021:27:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "-",
                              "rightExpression": {
                                "argumentTypes": null,
                                "hexValue": "31",
                                "id": 12508,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "9051:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_1_by_1",
                                  "typeString": "int_const 1"
                                },
                                "value": "1"
                              },
                              "src": "9021:31:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "9000:53:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "+=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12512,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "9057:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12513,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "keptValue",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11919,
                            "src": "9057:26:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "9000:83:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12515,
                        "nodeType": "ExpressionStatement",
                        "src": "9000:83:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12529,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12516,
                                  "name": "_paidFees",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12018,
                                  "src": "9097:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                    "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                  }
                                },
                                "id": 12524,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "totalContributedPerSide",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11890,
                                "src": "9097:33:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                  "typeString": "uint256[2] storage ref[] storage ref"
                                }
                              },
                              "id": 12525,
                              "indexExpression": {
                                "argumentTypes": null,
                                "commonType": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                "id": 12522,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12518,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "9131:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12519,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "totalContributedPerSide",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11890,
                                    "src": "9131:33:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                      "typeString": "uint256[2] storage ref[] storage ref"
                                    }
                                  },
                                  "id": 12520,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "length",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "9131:40:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": "-",
                                "rightExpression": {
                                  "argumentTypes": null,
                                  "hexValue": "31",
                                  "id": 12521,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "9174:1:39",
                                  "subdenomination": null,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_1_by_1",
                                    "typeString": "int_const 1"
                                  },
                                  "value": "1"
                                },
                                "src": "9131:44:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "9097:79:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                "typeString": "uint256[2] storage ref"
                              }
                            },
                            "id": 12526,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 12523,
                              "name": "_side",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12008,
                              "src": "9177:5:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "9097:86:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "+=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12527,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "9187:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12528,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "keptValue",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11919,
                            "src": "9187:26:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "9097:116:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12530,
                        "nodeType": "ExpressionStatement",
                        "src": "9097:116:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12547,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "baseExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12531,
                                    "name": "_paidFees",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 12018,
                                    "src": "9227:9:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                      "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                    }
                                  },
                                  "id": 12541,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "contributions",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11900,
                                  "src": "9227:23:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                                    "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                                  }
                                },
                                "id": 12542,
                                "indexExpression": {
                                  "argumentTypes": null,
                                  "commonType": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  },
                                  "id": 12537,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "expression": {
                                        "argumentTypes": null,
                                        "id": 12533,
                                        "name": "_paidFees",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 12018,
                                        "src": "9251:9:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                          "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                        }
                                      },
                                      "id": 12534,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberName": "contributions",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": 11900,
                                      "src": "9251:23:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                                        "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                                      }
                                    },
                                    "id": 12535,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "length",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": null,
                                    "src": "9251:30:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": "-",
                                  "rightExpression": {
                                    "argumentTypes": null,
                                    "hexValue": "31",
                                    "id": 12536,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "number",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "9284:1:39",
                                    "subdenomination": null,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_rational_1_by_1",
                                      "typeString": "int_const 1"
                                    },
                                    "value": "1"
                                  },
                                  "src": "9251:34:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "9227:59:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$",
                                  "typeString": "mapping(address => uint256[2] storage ref)"
                                }
                              },
                              "id": 12543,
                              "indexExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12538,
                                  "name": "msg",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 20639,
                                  "src": "9287:3:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_magic_message",
                                    "typeString": "msg"
                                  }
                                },
                                "id": 12539,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "sender",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": null,
                                "src": "9287:10:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "9227:71:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                "typeString": "uint256[2] storage ref"
                              }
                            },
                            "id": 12544,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 12540,
                              "name": "_side",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12008,
                              "src": "9299:5:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "9227:78:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "+=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12545,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "9309:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12546,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "keptValue",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11919,
                            "src": "9309:26:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "9227:108:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12548,
                        "nodeType": "ExpressionStatement",
                        "src": "9227:108:39"
                      }
                    ]
                  }
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 12554,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 12551,
                        "name": "fundDisputeCache",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11952,
                        "src": "9359:16:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                          "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                        }
                      },
                      "id": 12552,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "refundedValue",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11921,
                      "src": "9359:30:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">",
                    "rightExpression": {
                      "argumentTypes": null,
                      "hexValue": "30",
                      "id": 12553,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "9392:1:39",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "9359:34:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": null,
                  "id": 12564,
                  "nodeType": "IfStatement",
                  "src": "9355:91:39",
                  "trueBody": {
                    "expression": {
                      "argumentTypes": null,
                      "arguments": [
                        {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12560,
                            "name": "fundDisputeCache",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11952,
                            "src": "9415:16:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                              "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                            }
                          },
                          "id": 12561,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "refundedValue",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 11921,
                          "src": "9415:30:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        ],
                        "expression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12555,
                            "name": "msg",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 20639,
                            "src": "9395:3:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_magic_message",
                              "typeString": "msg"
                            }
                          },
                          "id": 12558,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "sender",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "9395:10:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "id": 12559,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "transfer",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "9395:19:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$",
                          "typeString": "function (uint256)"
                        }
                      },
                      "id": 12562,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "9395:51:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_tuple$__$",
                        "typeString": "tuple()"
                      }
                    },
                    "id": 12563,
                    "nodeType": "ExpressionStatement",
                    "src": "9395:51:39"
                  }
                },
                {
                  "eventCall": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 12566,
                        "name": "_agreementID",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12006,
                        "src": "9474:12:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 12571,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12567,
                              "name": "_paidFees",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12018,
                              "src": "9488:9:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                              }
                            },
                            "id": 12568,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "stake",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11882,
                            "src": "9488:15:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                              "typeString": "uint256[] storage ref"
                            }
                          },
                          "id": 12569,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "length",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "9488:22:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "-",
                        "rightExpression": {
                          "argumentTypes": null,
                          "hexValue": "31",
                          "id": 12570,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "9513:1:39",
                          "subdenomination": null,
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_1_by_1",
                            "typeString": "int_const 1"
                          },
                          "value": "1"
                        },
                        "src": "9488:26:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12572,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20639,
                          "src": "9516:3:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 12573,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "9516:10:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12574,
                          "name": "fundDisputeCache",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11952,
                          "src": "9528:16:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                          }
                        },
                        "id": 12575,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "keptValue",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 11919,
                        "src": "9528:26:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 12565,
                      "name": "Contribution",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11932,
                      "src": "9461:12:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (bytes32,uint256,address,uint256)"
                      }
                    },
                    "id": 12576,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "9461:94:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12577,
                  "nodeType": "EmitStatement",
                  "src": "9456:99:39"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    },
                    "id": 12598,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "commonType": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "id": 12590,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "baseExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12578,
                              "name": "_paidFees",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12018,
                              "src": "9656:9:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                              }
                            },
                            "id": 12579,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "totalContributedPerSide",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11890,
                            "src": "9656:33:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                              "typeString": "uint256[2] storage ref[] storage ref"
                            }
                          },
                          "id": 12585,
                          "indexExpression": {
                            "argumentTypes": null,
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 12584,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12580,
                                  "name": "_paidFees",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12018,
                                  "src": "9690:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                    "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                  }
                                },
                                "id": 12581,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "totalContributedPerSide",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11890,
                                "src": "9690:33:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                  "typeString": "uint256[2] storage ref[] storage ref"
                                }
                              },
                              "id": 12582,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "length",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": null,
                              "src": "9690:40:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "-",
                            "rightExpression": {
                              "argumentTypes": null,
                              "hexValue": "31",
                              "id": 12583,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "9733:1:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_1_by_1",
                                "typeString": "int_const 1"
                              },
                              "value": "1"
                            },
                            "src": "9690:44:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "IndexAccess",
                          "src": "9656:79:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_uint256_$2_storage",
                            "typeString": "uint256[2] storage ref"
                          }
                        },
                        "id": 12587,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 12586,
                          "name": "_side",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 12008,
                          "src": "9736:5:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "9656:86:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": ">=",
                      "rightExpression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12588,
                          "name": "fundDisputeCache",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11952,
                          "src": "9746:16:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                          }
                        },
                        "id": 12589,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "requiredValueForSide",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 11913,
                        "src": "9746:37:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "src": "9656:127:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "||",
                    "rightExpression": {
                      "argumentTypes": null,
                      "components": [
                        {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          },
                          "id": 12596,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12591,
                              "name": "fundDisputeCache",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11952,
                              "src": "9800:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                              }
                            },
                            "id": 12592,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "appealing",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11905,
                            "src": "9800:26:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "&&",
                          "rightExpression": {
                            "argumentTypes": null,
                            "id": 12595,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "UnaryOperation",
                            "operator": "!",
                            "prefix": true,
                            "src": "9830:39:39",
                            "subExpression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12593,
                                "name": "fundDisputeCache",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 11952,
                                "src": "9831:16:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                  "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                }
                              },
                              "id": 12594,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "appealPeriodSupported",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 11911,
                              "src": "9831:38:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "src": "9800:69:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        }
                      ],
                      "id": 12597,
                      "isConstant": false,
                      "isInlineArray": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "TupleExpression",
                      "src": "9799:71:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "src": "9656:214:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": null,
                  "id": 12822,
                  "nodeType": "IfStatement",
                  "src": "9639:2303:39",
                  "trueBody": {
                    "id": 12821,
                    "nodeType": "Block",
                    "src": "9881:2061:39",
                    "statements": [
                      {
                        "condition": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          },
                          "id": 12621,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "argumentTypes": null,
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 12601,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "argumentTypes": null,
                              "id": 12599,
                              "name": "_side",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12008,
                              "src": "9899:5:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "==",
                            "rightExpression": {
                              "argumentTypes": null,
                              "hexValue": "30",
                              "id": 12600,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "9908:1:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            },
                            "src": "9899:10:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "&&",
                          "rightExpression": {
                            "argumentTypes": null,
                            "components": [
                              {
                                "argumentTypes": null,
                                "condition": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12602,
                                    "name": "fundDisputeCache",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11952,
                                    "src": "9914:16:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                      "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                    }
                                  },
                                  "id": 12603,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "appealing",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11905,
                                  "src": "9914:26:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "falseExpression": {
                                  "argumentTypes": null,
                                  "commonType": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  },
                                  "id": 12618,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "baseExpression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12606,
                                          "name": "_paidFees",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12018,
                                          "src": "9984:9:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                            "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                          }
                                        },
                                        "id": 12607,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "totalContributedPerSide",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 11890,
                                        "src": "9984:33:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                          "typeString": "uint256[2] storage ref[] storage ref"
                                        }
                                      },
                                      "id": 12613,
                                      "indexExpression": {
                                        "argumentTypes": null,
                                        "commonType": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        },
                                        "id": 12612,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftExpression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12608,
                                              "name": "_paidFees",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12018,
                                              "src": "10018:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                              }
                                            },
                                            "id": 12609,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "totalContributedPerSide",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 11890,
                                            "src": "10018:33:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                              "typeString": "uint256[2] storage ref[] storage ref"
                                            }
                                          },
                                          "id": 12610,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "length",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": null,
                                          "src": "10018:40:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "nodeType": "BinaryOperation",
                                        "operator": "-",
                                        "rightExpression": {
                                          "argumentTypes": null,
                                          "hexValue": "31",
                                          "id": 12611,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "number",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "10061:1:39",
                                          "subdenomination": null,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_rational_1_by_1",
                                            "typeString": "int_const 1"
                                          },
                                          "value": "1"
                                        },
                                        "src": "10018:44:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "nodeType": "IndexAccess",
                                      "src": "9984:79:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                        "typeString": "uint256[2] storage ref"
                                      }
                                    },
                                    "id": 12615,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "hexValue": "31",
                                      "id": 12614,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "number",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "10064:1:39",
                                      "subdenomination": null,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_rational_1_by_1",
                                        "typeString": "int_const 1"
                                      },
                                      "value": "1"
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "9984:82:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": "<",
                                  "rightExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12616,
                                      "name": "fundDisputeCache",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11952,
                                      "src": "10069:16:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                        "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                      }
                                    },
                                    "id": 12617,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "requiredValueForSide",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11913,
                                    "src": "10069:37:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "src": "9984:122:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "id": 12619,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "Conditional",
                                "src": "9914:192:39",
                                "trueExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12604,
                                    "name": "fundDisputeCache",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11952,
                                    "src": "9943:16:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                      "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                    }
                                  },
                                  "id": 12605,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "appealPeriodSupported",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11911,
                                  "src": "9943:38:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              }
                            ],
                            "id": 12620,
                            "isConstant": false,
                            "isInlineArray": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "TupleExpression",
                            "src": "9913:194:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "src": "9899:208:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "falseBody": {
                          "id": 12819,
                          "nodeType": "Block",
                          "src": "10367:1565:39",
                          "statements": [
                            {
                              "condition": {
                                "argumentTypes": null,
                                "id": 12647,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "UnaryOperation",
                                "operator": "!",
                                "prefix": true,
                                "src": "10423:27:39",
                                "subExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12645,
                                    "name": "fundDisputeCache",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11952,
                                    "src": "10424:16:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                      "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                    }
                                  },
                                  "id": 12646,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "appealing",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11905,
                                  "src": "10424:26:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "falseBody": {
                                "id": 12755,
                                "nodeType": "Block",
                                "src": "11080:347:39",
                                "statements": [
                                  {
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12727,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftHandSide": {
                                        "argumentTypes": null,
                                        "baseExpression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12712,
                                            "name": "_paidFees",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12018,
                                            "src": "11113:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                              "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                            }
                                          },
                                          "id": 12719,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "ruling",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 11879,
                                          "src": "11113:16:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                            "typeString": "uint256[] storage ref"
                                          }
                                        },
                                        "id": 12720,
                                        "indexExpression": {
                                          "argumentTypes": null,
                                          "commonType": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          },
                                          "id": 12718,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "leftExpression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "id": 12714,
                                                "name": "_paidFees",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 12018,
                                                "src": "11130:9:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                  "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                }
                                              },
                                              "id": 12715,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "ruling",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 11879,
                                              "src": "11130:16:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                                "typeString": "uint256[] storage ref"
                                              }
                                            },
                                            "id": 12716,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "length",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": null,
                                            "src": "11130:23:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "nodeType": "BinaryOperation",
                                          "operator": "-",
                                          "rightExpression": {
                                            "argumentTypes": null,
                                            "hexValue": "31",
                                            "id": 12717,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "11156:1:39",
                                            "subdenomination": null,
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_1_by_1",
                                              "typeString": "int_const 1"
                                            },
                                            "value": "1"
                                          },
                                          "src": "11130:27:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": true,
                                        "nodeType": "IndexAccess",
                                        "src": "11113:45:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "nodeType": "Assignment",
                                      "operator": "=",
                                      "rightHandSide": {
                                        "argumentTypes": null,
                                        "arguments": [
                                          {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12724,
                                              "name": "agreement",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12012,
                                              "src": "11196:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                                "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                              }
                                            },
                                            "id": 12725,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "disputeID",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 10718,
                                            "src": "11196:19:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          }
                                        ],
                                        "expression": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          ],
                                          "expression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12721,
                                              "name": "agreement",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12012,
                                              "src": "11161:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                                "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                              }
                                            },
                                            "id": 12722,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "arbitrator",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 10716,
                                            "src": "11161:20:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                              "typeString": "contract Arbitrator"
                                            }
                                          },
                                          "id": 12723,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "currentRuling",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 4020,
                                          "src": "11161:34:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$",
                                            "typeString": "function (uint256) view external returns (uint256)"
                                          }
                                        },
                                        "id": 12726,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "kind": "functionCall",
                                        "lValueRequested": false,
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "11161:55:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "src": "11113:103:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "id": 12728,
                                    "nodeType": "ExpressionStatement",
                                    "src": "11113:103:39"
                                  },
                                  {
                                    "expression": {
                                      "argumentTypes": null,
                                      "arguments": [
                                        {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12739,
                                            "name": "agreement",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12012,
                                            "src": "11295:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                            }
                                          },
                                          "id": 12740,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "disputeID",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 10718,
                                          "src": "11295:19:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12741,
                                            "name": "agreement",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12012,
                                            "src": "11316:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                            }
                                          },
                                          "id": 12742,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "extraData",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 10712,
                                          "src": "11316:19:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_bytes_storage",
                                            "typeString": "bytes storage ref"
                                          }
                                        }
                                      ],
                                      "expression": {
                                        "argumentTypes": [
                                          {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          },
                                          {
                                            "typeIdentifier": "t_bytes_storage",
                                            "typeString": "bytes storage ref"
                                          }
                                        ],
                                        "arguments": [
                                          {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12736,
                                              "name": "fundDisputeCache",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 11952,
                                              "src": "11272:16:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                                "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                              }
                                            },
                                            "id": 12737,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "cost",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 11903,
                                            "src": "11272:21:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          }
                                        ],
                                        "expression": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          ],
                                          "expression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "id": 12729,
                                                "name": "agreement",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 12012,
                                                "src": "11238:9:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                                  "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                                }
                                              },
                                              "id": 12733,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "arbitrator",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 10716,
                                              "src": "11238:20:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                                "typeString": "contract Arbitrator"
                                              }
                                            },
                                            "id": 12734,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "appeal",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 3987,
                                            "src": "11238:27:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$__$",
                                              "typeString": "function (uint256,bytes memory) payable external"
                                            }
                                          },
                                          "id": 12735,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "value",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": null,
                                          "src": "11238:33:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_function_setvalue_nonpayable$_t_uint256_$returns$_t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$__$value_$",
                                            "typeString": "function (uint256) returns (function (uint256,bytes memory) payable external)"
                                          }
                                        },
                                        "id": 12738,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "kind": "functionCall",
                                        "lValueRequested": false,
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "11238:56:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$__$value",
                                          "typeString": "function (uint256,bytes memory) payable external"
                                        }
                                      },
                                      "id": 12743,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "functionCall",
                                      "lValueRequested": false,
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "11238:98:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_tuple$__$",
                                        "typeString": "tuple()"
                                      }
                                    },
                                    "id": 12744,
                                    "nodeType": "ExpressionStatement",
                                    "src": "11238:98:39"
                                  },
                                  {
                                    "condition": {
                                      "argumentTypes": null,
                                      "id": 12747,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "nodeType": "UnaryOperation",
                                      "operator": "!",
                                      "prefix": true,
                                      "src": "11362:19:39",
                                      "subExpression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12745,
                                          "name": "agreement",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12012,
                                          "src": "11363:9:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                            "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                          }
                                        },
                                        "id": 12746,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "appealed",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 10722,
                                        "src": "11363:18:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bool",
                                          "typeString": "bool"
                                        }
                                      },
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    },
                                    "falseBody": null,
                                    "id": 12754,
                                    "nodeType": "IfStatement",
                                    "src": "11358:50:39",
                                    "trueBody": {
                                      "expression": {
                                        "argumentTypes": null,
                                        "id": 12752,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftHandSide": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12748,
                                            "name": "agreement",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12012,
                                            "src": "11383:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                            }
                                          },
                                          "id": 12750,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": true,
                                          "memberName": "appealed",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 10722,
                                          "src": "11383:18:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_bool",
                                            "typeString": "bool"
                                          }
                                        },
                                        "nodeType": "Assignment",
                                        "operator": "=",
                                        "rightHandSide": {
                                          "argumentTypes": null,
                                          "hexValue": "74727565",
                                          "id": 12751,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "bool",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "11404:4:39",
                                          "subdenomination": null,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_bool",
                                            "typeString": "bool"
                                          },
                                          "value": "true"
                                        },
                                        "src": "11383:25:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bool",
                                          "typeString": "bool"
                                        }
                                      },
                                      "id": 12753,
                                      "nodeType": "ExpressionStatement",
                                      "src": "11383:25:39"
                                    }
                                  }
                                ]
                              },
                              "id": 12756,
                              "nodeType": "IfStatement",
                              "src": "10419:1008:39",
                              "trueBody": {
                                "id": 12711,
                                "nodeType": "Block",
                                "src": "10452:622:39",
                                "statements": [
                                  {
                                    "condition": {
                                      "argumentTypes": null,
                                      "commonType": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      },
                                      "id": 12665,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "argumentTypes": null,
                                        "baseExpression": {
                                          "argumentTypes": null,
                                          "baseExpression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12648,
                                              "name": "_paidFees",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12018,
                                              "src": "10494:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                              }
                                            },
                                            "id": 12649,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "totalContributedPerSide",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 11890,
                                            "src": "10494:33:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                              "typeString": "uint256[2] storage ref[] storage ref"
                                            }
                                          },
                                          "id": 12655,
                                          "indexExpression": {
                                            "argumentTypes": null,
                                            "commonType": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            },
                                            "id": 12654,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "leftExpression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "expression": {
                                                  "argumentTypes": null,
                                                  "id": 12650,
                                                  "name": "_paidFees",
                                                  "nodeType": "Identifier",
                                                  "overloadedDeclarations": [],
                                                  "referencedDeclaration": 12018,
                                                  "src": "10528:9:39",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                    "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                  }
                                                },
                                                "id": 12651,
                                                "isConstant": false,
                                                "isLValue": true,
                                                "isPure": false,
                                                "lValueRequested": false,
                                                "memberName": "totalContributedPerSide",
                                                "nodeType": "MemberAccess",
                                                "referencedDeclaration": 11890,
                                                "src": "10528:33:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                                  "typeString": "uint256[2] storage ref[] storage ref"
                                                }
                                              },
                                              "id": 12652,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "length",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": null,
                                              "src": "10528:40:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            },
                                            "nodeType": "BinaryOperation",
                                            "operator": "-",
                                            "rightExpression": {
                                              "argumentTypes": null,
                                              "hexValue": "31",
                                              "id": 12653,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": true,
                                              "kind": "number",
                                              "lValueRequested": false,
                                              "nodeType": "Literal",
                                              "src": "10571:1:39",
                                              "subdenomination": null,
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_rational_1_by_1",
                                                "typeString": "int_const 1"
                                              },
                                              "value": "1"
                                            },
                                            "src": "10528:44:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "IndexAccess",
                                          "src": "10494:79:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                            "typeString": "uint256[2] storage ref"
                                          }
                                        },
                                        "id": 12662,
                                        "indexExpression": {
                                          "argumentTypes": null,
                                          "condition": {
                                            "argumentTypes": null,
                                            "commonType": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            },
                                            "id": 12658,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "leftExpression": {
                                              "argumentTypes": null,
                                              "id": 12656,
                                              "name": "_side",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12008,
                                              "src": "10574:5:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            },
                                            "nodeType": "BinaryOperation",
                                            "operator": "==",
                                            "rightExpression": {
                                              "argumentTypes": null,
                                              "hexValue": "30",
                                              "id": 12657,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": true,
                                              "kind": "number",
                                              "lValueRequested": false,
                                              "nodeType": "Literal",
                                              "src": "10583:1:39",
                                              "subdenomination": null,
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_rational_0_by_1",
                                                "typeString": "int_const 0"
                                              },
                                              "value": "0"
                                            },
                                            "src": "10574:10:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_bool",
                                              "typeString": "bool"
                                            }
                                          },
                                          "falseExpression": {
                                            "argumentTypes": null,
                                            "hexValue": "30",
                                            "id": 12660,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "10591:1:39",
                                            "subdenomination": null,
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_0_by_1",
                                              "typeString": "int_const 0"
                                            },
                                            "value": "0"
                                          },
                                          "id": 12661,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "Conditional",
                                          "src": "10574:18:39",
                                          "trueExpression": {
                                            "argumentTypes": null,
                                            "hexValue": "31",
                                            "id": 12659,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "10587:1:39",
                                            "subdenomination": null,
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_1_by_1",
                                              "typeString": "int_const 1"
                                            },
                                            "value": "1"
                                          },
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint8",
                                            "typeString": "uint8"
                                          }
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "nodeType": "IndexAccess",
                                        "src": "10494:99:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": "<",
                                      "rightExpression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12663,
                                          "name": "fundDisputeCache",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 11952,
                                          "src": "10596:16:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                            "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                          }
                                        },
                                        "id": 12664,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "requiredValueForSide",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 11913,
                                        "src": "10596:37:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "src": "10494:139:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    },
                                    "falseBody": null,
                                    "id": 12667,
                                    "nodeType": "IfStatement",
                                    "src": "10490:152:39",
                                    "trueBody": {
                                      "expression": null,
                                      "functionReturnParameters": 12010,
                                      "id": 12666,
                                      "nodeType": "Return",
                                      "src": "10635:7:39"
                                    }
                                  },
                                  {
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12683,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftHandSide": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12668,
                                          "name": "agreement",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12012,
                                          "src": "10663:9:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                            "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                          }
                                        },
                                        "id": 12670,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": true,
                                        "memberName": "disputeID",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 10718,
                                        "src": "10663:19:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "nodeType": "Assignment",
                                      "operator": "=",
                                      "rightHandSide": {
                                        "argumentTypes": null,
                                        "arguments": [
                                          {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12678,
                                              "name": "agreement",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12012,
                                              "src": "10749:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                                "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                              }
                                            },
                                            "id": 12679,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "numberOfChoices",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 10710,
                                            "src": "10749:25:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12680,
                                              "name": "agreement",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12012,
                                              "src": "10776:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                                "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                              }
                                            },
                                            "id": 12681,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "extraData",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 10712,
                                            "src": "10776:19:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_bytes_storage",
                                              "typeString": "bytes storage ref"
                                            }
                                          }
                                        ],
                                        "expression": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            },
                                            {
                                              "typeIdentifier": "t_bytes_storage",
                                              "typeString": "bytes storage ref"
                                            }
                                          ],
                                          "arguments": [
                                            {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "id": 12675,
                                                "name": "fundDisputeCache",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 11952,
                                                "src": "10726:16:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                                  "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                                }
                                              },
                                              "id": 12676,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "cost",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 11903,
                                              "src": "10726:21:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            }
                                          ],
                                          "expression": {
                                            "argumentTypes": [
                                              {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            ],
                                            "expression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "expression": {
                                                  "argumentTypes": null,
                                                  "id": 12671,
                                                  "name": "agreement",
                                                  "nodeType": "Identifier",
                                                  "overloadedDeclarations": [],
                                                  "referencedDeclaration": 12012,
                                                  "src": "10685:9:39",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                                  }
                                                },
                                                "id": 12672,
                                                "isConstant": false,
                                                "isLValue": true,
                                                "isPure": false,
                                                "lValueRequested": false,
                                                "memberName": "arbitrator",
                                                "nodeType": "MemberAccess",
                                                "referencedDeclaration": 10716,
                                                "src": "10685:20:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                                  "typeString": "contract Arbitrator"
                                                }
                                              },
                                              "id": 12673,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "createDispute",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 3960,
                                              "src": "10685:34:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$",
                                                "typeString": "function (uint256,bytes memory) payable external returns (uint256)"
                                              }
                                            },
                                            "id": 12674,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "value",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": null,
                                            "src": "10685:40:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_function_setvalue_nonpayable$_t_uint256_$returns$_t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$value_$",
                                              "typeString": "function (uint256) returns (function (uint256,bytes memory) payable external returns (uint256))"
                                            }
                                          },
                                          "id": 12677,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "kind": "functionCall",
                                          "lValueRequested": false,
                                          "names": [],
                                          "nodeType": "FunctionCall",
                                          "src": "10685:63:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$value",
                                            "typeString": "function (uint256,bytes memory) payable external returns (uint256)"
                                          }
                                        },
                                        "id": 12682,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "kind": "functionCall",
                                        "lValueRequested": false,
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "10685:111:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "src": "10663:133:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "id": 12684,
                                    "nodeType": "ExpressionStatement",
                                    "src": "10663:133:39"
                                  },
                                  {
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12689,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftHandSide": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12685,
                                          "name": "agreement",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12012,
                                          "src": "10818:9:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                            "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                          }
                                        },
                                        "id": 12687,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": true,
                                        "memberName": "disputed",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 10720,
                                        "src": "10818:18:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bool",
                                          "typeString": "bool"
                                        }
                                      },
                                      "nodeType": "Assignment",
                                      "operator": "=",
                                      "rightHandSide": {
                                        "argumentTypes": null,
                                        "hexValue": "74727565",
                                        "id": 12688,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "bool",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "10839:4:39",
                                        "subdenomination": null,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bool",
                                          "typeString": "bool"
                                        },
                                        "value": "true"
                                      },
                                      "src": "10818:25:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    },
                                    "id": 12690,
                                    "nodeType": "ExpressionStatement",
                                    "src": "10818:25:39"
                                  },
                                  {
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12699,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftHandSide": {
                                        "argumentTypes": null,
                                        "baseExpression": {
                                          "argumentTypes": null,
                                          "baseExpression": {
                                            "argumentTypes": null,
                                            "id": 12691,
                                            "name": "arbitratorAndDisputeIDToAgreementID",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 10737,
                                            "src": "10865:35:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_uint256_$_t_bytes32_$_$",
                                              "typeString": "mapping(address => mapping(uint256 => bytes32))"
                                            }
                                          },
                                          "id": 12696,
                                          "indexExpression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12692,
                                              "name": "agreement",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12012,
                                              "src": "10901:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                                "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                              }
                                            },
                                            "id": 12693,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "arbitrator",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 10716,
                                            "src": "10901:20:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                              "typeString": "contract Arbitrator"
                                            }
                                          },
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "IndexAccess",
                                          "src": "10865:57:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_mapping$_t_uint256_$_t_bytes32_$",
                                            "typeString": "mapping(uint256 => bytes32)"
                                          }
                                        },
                                        "id": 12697,
                                        "indexExpression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12694,
                                            "name": "agreement",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12012,
                                            "src": "10923:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                            }
                                          },
                                          "id": 12695,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "disputeID",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 10718,
                                          "src": "10923:19:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": true,
                                        "nodeType": "IndexAccess",
                                        "src": "10865:78:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bytes32",
                                          "typeString": "bytes32"
                                        }
                                      },
                                      "nodeType": "Assignment",
                                      "operator": "=",
                                      "rightHandSide": {
                                        "argumentTypes": null,
                                        "id": 12698,
                                        "name": "_agreementID",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 12006,
                                        "src": "10946:12:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bytes32",
                                          "typeString": "bytes32"
                                        }
                                      },
                                      "src": "10865:93:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes32",
                                        "typeString": "bytes32"
                                      }
                                    },
                                    "id": 12700,
                                    "nodeType": "ExpressionStatement",
                                    "src": "10865:93:39"
                                  },
                                  {
                                    "eventCall": {
                                      "argumentTypes": null,
                                      "arguments": [
                                        {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12702,
                                            "name": "agreement",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12012,
                                            "src": "10993:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                            }
                                          },
                                          "id": 12703,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "arbitrator",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 10716,
                                          "src": "10993:20:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                            "typeString": "contract Arbitrator"
                                          }
                                        },
                                        {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12704,
                                            "name": "agreement",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12012,
                                            "src": "11015:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                            }
                                          },
                                          "id": 12705,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "disputeID",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 10718,
                                          "src": "11015:19:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        {
                                          "argumentTypes": null,
                                          "arguments": [
                                            {
                                              "argumentTypes": null,
                                              "id": 12707,
                                              "name": "_agreementID",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12006,
                                              "src": "11041:12:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_bytes32",
                                                "typeString": "bytes32"
                                              }
                                            }
                                          ],
                                          "expression": {
                                            "argumentTypes": [
                                              {
                                                "typeIdentifier": "t_bytes32",
                                                "typeString": "bytes32"
                                              }
                                            ],
                                            "id": 12706,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "lValueRequested": false,
                                            "nodeType": "ElementaryTypeNameExpression",
                                            "src": "11036:4:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_type$_t_uint256_$",
                                              "typeString": "type(uint256)"
                                            },
                                            "typeName": "uint"
                                          },
                                          "id": 12708,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "kind": "typeConversion",
                                          "lValueRequested": false,
                                          "names": [],
                                          "nodeType": "FunctionCall",
                                          "src": "11036:18:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        }
                                      ],
                                      "expression": {
                                        "argumentTypes": [
                                          {
                                            "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                            "typeString": "contract Arbitrator"
                                          },
                                          {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          },
                                          {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        ],
                                        "id": 12701,
                                        "name": "Dispute",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 529,
                                        "src": "10985:7:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_function_event_nonpayable$_t_contract$_Arbitrator_$4021_$_t_uint256_$_t_uint256_$returns$__$",
                                          "typeString": "function (contract Arbitrator,uint256,uint256)"
                                        }
                                      },
                                      "id": 12709,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "functionCall",
                                      "lValueRequested": false,
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "10985:70:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_tuple$__$",
                                        "typeString": "tuple()"
                                      }
                                    },
                                    "id": 12710,
                                    "nodeType": "EmitStatement",
                                    "src": "10980:75:39"
                                  }
                                ]
                              }
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "id": 12768,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12757,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "11488:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12764,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "totalValue",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11885,
                                    "src": "11488:20:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                      "typeString": "uint256[] storage ref"
                                    }
                                  },
                                  "id": 12765,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "commonType": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    },
                                    "id": 12763,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "leftExpression": {
                                      "argumentTypes": null,
                                      "expression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12759,
                                          "name": "_paidFees",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12018,
                                          "src": "11509:9:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                            "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                          }
                                        },
                                        "id": 12760,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "totalValue",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 11885,
                                        "src": "11509:20:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                          "typeString": "uint256[] storage ref"
                                        }
                                      },
                                      "id": 12761,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberName": "length",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": null,
                                      "src": "11509:27:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "nodeType": "BinaryOperation",
                                    "operator": "-",
                                    "rightExpression": {
                                      "argumentTypes": null,
                                      "hexValue": "31",
                                      "id": 12762,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "number",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "11539:1:39",
                                      "subdenomination": null,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_rational_1_by_1",
                                        "typeString": "int_const 1"
                                      },
                                      "value": "1"
                                    },
                                    "src": "11509:31:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "nodeType": "IndexAccess",
                                  "src": "11488:53:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "-=",
                                "rightHandSide": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12766,
                                    "name": "fundDisputeCache",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11952,
                                    "src": "11545:16:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_FundDisputeCache_$11922_storage",
                                      "typeString": "struct MultiPartyInsurableFees.FundDisputeCache storage ref"
                                    }
                                  },
                                  "id": 12767,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "cost",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 11903,
                                  "src": "11545:21:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "src": "11488:78:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 12769,
                              "nodeType": "ExpressionStatement",
                              "src": "11488:78:39"
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "hexValue": "30",
                                    "id": 12775,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "number",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "11654:1:39",
                                    "subdenomination": null,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_rational_0_by_1",
                                      "typeString": "int_const 0"
                                    },
                                    "value": "0"
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_rational_0_by_1",
                                      "typeString": "int_const 0"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12770,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "11632:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12773,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "ruling",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11879,
                                    "src": "11632:16:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                      "typeString": "uint256[] storage ref"
                                    }
                                  },
                                  "id": 12774,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "push",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "11632:21:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
                                    "typeString": "function (uint256) returns (uint256)"
                                  }
                                },
                                "id": 12776,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "11632:24:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 12777,
                              "nodeType": "ExpressionStatement",
                              "src": "11632:24:39"
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "id": 12783,
                                    "name": "stake",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11946,
                                    "src": "11695:5:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12778,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "11674:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12781,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "stake",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11882,
                                    "src": "11674:15:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                      "typeString": "uint256[] storage ref"
                                    }
                                  },
                                  "id": 12782,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "push",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "11674:20:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
                                    "typeString": "function (uint256) returns (uint256)"
                                  }
                                },
                                "id": 12784,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "11674:27:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 12785,
                              "nodeType": "ExpressionStatement",
                              "src": "11674:27:39"
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "hexValue": "30",
                                    "id": 12791,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "number",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "11745:1:39",
                                    "subdenomination": null,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_rational_0_by_1",
                                      "typeString": "int_const 0"
                                    },
                                    "value": "0"
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_rational_0_by_1",
                                      "typeString": "int_const 0"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12786,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "11719:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12789,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "totalValue",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11885,
                                    "src": "11719:20:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                      "typeString": "uint256[] storage ref"
                                    }
                                  },
                                  "id": 12790,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "push",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "11719:25:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
                                    "typeString": "function (uint256) returns (uint256)"
                                  }
                                },
                                "id": 12792,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "11719:28:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 12793,
                              "nodeType": "ExpressionStatement",
                              "src": "11719:28:39"
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "components": [
                                      {
                                        "argumentTypes": null,
                                        "hexValue": "30",
                                        "id": 12799,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "11805:1:39",
                                        "subdenomination": null,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_0_by_1",
                                          "typeString": "int_const 0"
                                        },
                                        "value": "0"
                                      },
                                      {
                                        "argumentTypes": null,
                                        "hexValue": "30",
                                        "id": 12800,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "11808:1:39",
                                        "subdenomination": null,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_0_by_1",
                                          "typeString": "int_const 0"
                                        },
                                        "value": "0"
                                      }
                                    ],
                                    "id": 12801,
                                    "isConstant": false,
                                    "isInlineArray": true,
                                    "isLValue": false,
                                    "isPure": true,
                                    "lValueRequested": false,
                                    "nodeType": "TupleExpression",
                                    "src": "11804:6:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_uint8_$2_memory_ptr",
                                      "typeString": "uint8[2] memory"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_array$_t_uint8_$2_memory_ptr",
                                      "typeString": "uint8[2] memory"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12794,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "11765:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12797,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "totalContributedPerSide",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11890,
                                    "src": "11765:33:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                      "typeString": "uint256[2] storage ref[] storage ref"
                                    }
                                  },
                                  "id": 12798,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "push",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "11765:38:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_uint256_$2_storage_$returns$_t_uint256_$",
                                    "typeString": "function (uint256[2] storage ref) returns (uint256)"
                                  }
                                },
                                "id": 12802,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "11765:46:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 12803,
                              "nodeType": "ExpressionStatement",
                              "src": "11765:46:39"
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "hexValue": "66616c7365",
                                    "id": 12809,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "bool",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "11861:5:39",
                                    "subdenomination": null,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bool",
                                      "typeString": "bool"
                                    },
                                    "value": "false"
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_bool",
                                      "typeString": "bool"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12804,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "11829:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12807,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "loserFullyFunded",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11893,
                                    "src": "11829:26:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                                      "typeString": "bool[] storage ref"
                                    }
                                  },
                                  "id": 12808,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "push",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "11829:31:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_arraypush_nonpayable$_t_bool_$returns$_t_uint256_$",
                                    "typeString": "function (bool) returns (uint256)"
                                  }
                                },
                                "id": 12810,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "11829:38:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 12811,
                              "nodeType": "ExpressionStatement",
                              "src": "11829:38:39"
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "id": 12817,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "UnaryOperation",
                                "operator": "++",
                                "prefix": false,
                                "src": "11885:32:39",
                                "subExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12812,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "11885:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12815,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "contributions",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11900,
                                    "src": "11885:23:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                                      "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                                    }
                                  },
                                  "id": 12816,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "memberName": "length",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "11885:30:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 12818,
                              "nodeType": "ExpressionStatement",
                              "src": "11885:32:39"
                            }
                          ]
                        },
                        "id": 12820,
                        "nodeType": "IfStatement",
                        "src": "9895:2037:39",
                        "trueBody": {
                          "id": 12644,
                          "nodeType": "Block",
                          "src": "10109:252:39",
                          "statements": [
                            {
                              "condition": {
                                "argumentTypes": null,
                                "id": 12630,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "UnaryOperation",
                                "operator": "!",
                                "prefix": true,
                                "src": "10186:66:39",
                                "subExpression": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12622,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12018,
                                      "src": "10187:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12623,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "loserFullyFunded",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11893,
                                    "src": "10187:26:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                                      "typeString": "bool[] storage ref"
                                    }
                                  },
                                  "id": 12629,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "commonType": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    },
                                    "id": 12628,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "leftExpression": {
                                      "argumentTypes": null,
                                      "expression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12624,
                                          "name": "_paidFees",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12018,
                                          "src": "10214:9:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                            "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                          }
                                        },
                                        "id": 12625,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "loserFullyFunded",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 11893,
                                        "src": "10214:26:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                                          "typeString": "bool[] storage ref"
                                        }
                                      },
                                      "id": 12626,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberName": "length",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": null,
                                      "src": "10214:33:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "nodeType": "BinaryOperation",
                                    "operator": "-",
                                    "rightExpression": {
                                      "argumentTypes": null,
                                      "hexValue": "31",
                                      "id": 12627,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "number",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "10250:1:39",
                                      "subdenomination": null,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_rational_1_by_1",
                                        "typeString": "int_const 1"
                                      },
                                      "value": "1"
                                    },
                                    "src": "10214:37:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "10187:65:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "falseBody": null,
                              "id": 12643,
                              "nodeType": "IfStatement",
                              "src": "10182:164:39",
                              "trueBody": {
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12641,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftHandSide": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "expression": {
                                        "argumentTypes": null,
                                        "id": 12631,
                                        "name": "_paidFees",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 12018,
                                        "src": "10274:9:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                          "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                        }
                                      },
                                      "id": 12638,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberName": "loserFullyFunded",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": 11893,
                                      "src": "10274:26:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                                        "typeString": "bool[] storage ref"
                                      }
                                    },
                                    "id": 12639,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "commonType": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      },
                                      "id": 12637,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "expression": {
                                            "argumentTypes": null,
                                            "id": 12633,
                                            "name": "_paidFees",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12018,
                                            "src": "10301:9:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                              "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                            }
                                          },
                                          "id": 12634,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberName": "loserFullyFunded",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 11893,
                                          "src": "10301:26:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                                            "typeString": "bool[] storage ref"
                                          }
                                        },
                                        "id": 12635,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "length",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": null,
                                        "src": "10301:33:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": "-",
                                      "rightExpression": {
                                        "argumentTypes": null,
                                        "hexValue": "31",
                                        "id": 12636,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "10337:1:39",
                                        "subdenomination": null,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_1_by_1",
                                          "typeString": "int_const 1"
                                        },
                                        "value": "1"
                                      },
                                      "src": "10301:37:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": true,
                                    "nodeType": "IndexAccess",
                                    "src": "10274:65:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bool",
                                      "typeString": "bool"
                                    }
                                  },
                                  "nodeType": "Assignment",
                                  "operator": "=",
                                  "rightHandSide": {
                                    "argumentTypes": null,
                                    "hexValue": "74727565",
                                    "id": 12640,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "bool",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "10342:4:39",
                                    "subdenomination": null,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bool",
                                      "typeString": "bool"
                                    },
                                    "value": "true"
                                  },
                                  "src": "10274:72:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "id": 12642,
                                "nodeType": "ExpressionStatement",
                                "src": "10274:72:39"
                              }
                            }
                          ]
                        }
                      }
                    ]
                  }
                }
              ]
            },
            "documentation": "@dev Funds the specified side of a dispute for the specified agreement or times out the dispute if it is taking too long to fund.\n @param _agreementID The ID of the agreement.\n @param _side The side. 0 for the side that lost the previous round, if any, and 1 for the one that won.",
            "id": 12824,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "fundDispute",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 12009,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12006,
                  "name": "_agreementID",
                  "nodeType": "VariableDeclaration",
                  "scope": 12824,
                  "src": "3749:20:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 12005,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3749:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12008,
                  "name": "_side",
                  "nodeType": "VariableDeclaration",
                  "scope": 12824,
                  "src": "3771:10:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12007,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "3771:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "3748:34:39"
            },
            "payable": true,
            "returnParameters": {
              "id": 12010,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3798:0:39"
            },
            "scope": 13089,
            "src": "3728:8220:39",
            "stateMutability": "payable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 13008,
              "nodeType": "Block",
              "src": "12217:1453:39",
              "statements": [
                {
                  "assignments": [
                    12832
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 12832,
                      "name": "agreement",
                      "nodeType": "VariableDeclaration",
                      "scope": 13009,
                      "src": "12227:27:39",
                      "stateVariable": false,
                      "storageLocation": "storage",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                        "typeString": "struct MultiPartyAgreements.Agreement"
                      },
                      "typeName": {
                        "contractScope": null,
                        "id": 12831,
                        "name": "Agreement",
                        "nodeType": "UserDefinedTypeName",
                        "referencedDeclaration": 10727,
                        "src": "12227:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                          "typeString": "struct MultiPartyAgreements.Agreement"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 12836,
                  "initialValue": {
                    "argumentTypes": null,
                    "baseExpression": {
                      "argumentTypes": null,
                      "id": 12833,
                      "name": "agreements",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 10731,
                      "src": "12257:10:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Agreement_$10727_storage_$",
                        "typeString": "mapping(bytes32 => struct MultiPartyAgreements.Agreement storage ref)"
                      }
                    },
                    "id": 12835,
                    "indexExpression": {
                      "argumentTypes": null,
                      "id": 12834,
                      "name": "_agreementID",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 12826,
                      "src": "12268:12:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "IndexAccess",
                    "src": "12257:24:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Agreement_$10727_storage",
                      "typeString": "struct MultiPartyAgreements.Agreement storage ref"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "12227:54:39"
                },
                {
                  "assignments": [
                    12838
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 12838,
                      "name": "_paidFees",
                      "nodeType": "VariableDeclaration",
                      "scope": 13009,
                      "src": "12291:26:39",
                      "stateVariable": false,
                      "storageLocation": "storage",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                        "typeString": "struct MultiPartyInsurableFees.PaidFees"
                      },
                      "typeName": {
                        "contractScope": null,
                        "id": 12837,
                        "name": "PaidFees",
                        "nodeType": "UserDefinedTypeName",
                        "referencedDeclaration": 11901,
                        "src": "12291:8:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 12842,
                  "initialValue": {
                    "argumentTypes": null,
                    "baseExpression": {
                      "argumentTypes": null,
                      "id": 12839,
                      "name": "paidFees",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11950,
                      "src": "12320:8:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PaidFees_$11901_storage_$",
                        "typeString": "mapping(bytes32 => struct MultiPartyInsurableFees.PaidFees storage ref)"
                      }
                    },
                    "id": 12841,
                    "indexExpression": {
                      "argumentTypes": null,
                      "id": 12840,
                      "name": "_agreementID",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 12826,
                      "src": "12329:12:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "IndexAccess",
                    "src": "12320:22:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_PaidFees_$11901_storage",
                      "typeString": "struct MultiPartyInsurableFees.PaidFees storage ref"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "12291:51:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "id": 12849,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12844,
                            "name": "agreement",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 12832,
                            "src": "12360:9:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                              "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                            }
                          },
                          "id": 12845,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "creator",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 10705,
                          "src": "12360:17:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "!=",
                        "rightExpression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "hexValue": "30",
                              "id": 12847,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "12389:1:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              }
                            ],
                            "id": 12846,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "ElementaryTypeNameExpression",
                            "src": "12381:7:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_address_$",
                              "typeString": "type(address)"
                            },
                            "typeName": "address"
                          },
                          "id": 12848,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "12381:10:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "src": "12360:31:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "546865207370656369666965642061677265656d656e7420646f6573206e6f742065786973742e",
                        "id": 12850,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "12393:41:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_5f7ab9090a26ebe6241e7e236dc49b3b57b72be347775aac1a2b38b1207e8eb2",
                          "typeString": "literal_string \"The specified agreement does not exist.\""
                        },
                        "value": "The specified agreement does not exist."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_5f7ab9090a26ebe6241e7e236dc49b3b57b72be347775aac1a2b38b1207e8eb2",
                          "typeString": "literal_string \"The specified agreement does not exist.\""
                        }
                      ],
                      "id": 12843,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "12352:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 12851,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12352:83:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12852,
                  "nodeType": "ExpressionStatement",
                  "src": "12352:83:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        "id": 12867,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "id": 12856,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "UnaryOperation",
                          "operator": "!",
                          "prefix": true,
                          "src": "12466:19:39",
                          "subExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12854,
                              "name": "agreement",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12832,
                              "src": "12467:9:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                              }
                            },
                            "id": 12855,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "disputed",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 10720,
                            "src": "12467:18:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "||",
                        "rightExpression": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_enum$_DisputeStatus_$3894",
                            "typeString": "enum Arbitrator.DisputeStatus"
                          },
                          "id": 12866,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "argumentTypes": null,
                            "arguments": [
                              {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12860,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12832,
                                  "src": "12524:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12861,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "disputeID",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10718,
                                "src": "12524:19:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "expression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12857,
                                  "name": "agreement",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12832,
                                  "src": "12489:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                    "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                  }
                                },
                                "id": 12858,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "arbitrator",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 10716,
                                "src": "12489:20:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_contract$_Arbitrator_$4021",
                                  "typeString": "contract Arbitrator"
                                }
                              },
                              "id": 12859,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "disputeStatus",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 4013,
                              "src": "12489:34:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_enum$_DisputeStatus_$3894_$",
                                "typeString": "function (uint256) view external returns (enum Arbitrator.DisputeStatus)"
                              }
                            },
                            "id": 12862,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "12489:55:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_DisputeStatus_$3894",
                              "typeString": "enum Arbitrator.DisputeStatus"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "==",
                          "rightExpression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12863,
                                "name": "Arbitrator",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 4021,
                                "src": "12548:10:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_Arbitrator_$4021_$",
                                  "typeString": "type(contract Arbitrator)"
                                }
                              },
                              "id": 12864,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "DisputeStatus",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 3894,
                              "src": "12548:24:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_enum$_DisputeStatus_$3894_$",
                                "typeString": "type(enum Arbitrator.DisputeStatus)"
                              }
                            },
                            "id": 12865,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "memberName": "Solved",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": null,
                            "src": "12548:31:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_DisputeStatus_$3894",
                              "typeString": "enum Arbitrator.DisputeStatus"
                            }
                          },
                          "src": "12489:90:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "src": "12466:113:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "5468652061677265656d656e74206973207374696c6c2064697370757465642e",
                        "id": 12868,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "12593:34:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_8fcea74ae55c0a3f53ceeb1eca84d1916ec38ddb2bf4883212b443315d707335",
                          "typeString": "literal_string \"The agreement is still disputed.\""
                        },
                        "value": "The agreement is still disputed."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_8fcea74ae55c0a3f53ceeb1eca84d1916ec38ddb2bf4883212b443315d707335",
                          "typeString": "literal_string \"The agreement is still disputed.\""
                        }
                      ],
                      "id": 12853,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "12445:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 12869,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12445:192:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12870,
                  "nodeType": "ExpressionStatement",
                  "src": "12445:192:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 12876,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "id": 12872,
                          "name": "_round",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 12828,
                          "src": "12655:6:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "<",
                        "rightExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12873,
                              "name": "_paidFees",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12838,
                              "src": "12664:9:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                              }
                            },
                            "id": 12874,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "stake",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11882,
                            "src": "12664:15:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                              "typeString": "uint256[] storage ref"
                            }
                          },
                          "id": 12875,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "length",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "12664:22:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "src": "12655:31:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "hexValue": "5468652073706563696669656420726f756e64206f6620746865207370656369666965642061677265656d656e7420646f6573206e6f742065786973742e",
                        "id": 12877,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "string",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "12688:64:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_stringliteral_ee11e2caa8ec68d849d23bc0101264cbcf37cf8d190466d6aef02ea2db135616",
                          "typeString": "literal_string \"The specified round of the specified agreement does not exist.\""
                        },
                        "value": "The specified round of the specified agreement does not exist."
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        {
                          "typeIdentifier": "t_stringliteral_ee11e2caa8ec68d849d23bc0101264cbcf37cf8d190466d6aef02ea2db135616",
                          "typeString": "literal_string \"The specified round of the specified agreement does not exist.\""
                        }
                      ],
                      "id": 12871,
                      "name": "require",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        20642,
                        20643
                      ],
                      "referencedDeclaration": 20643,
                      "src": "12647:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                        "typeString": "function (bool,string memory) pure"
                      }
                    },
                    "id": 12878,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12647:106:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12879,
                  "nodeType": "ExpressionStatement",
                  "src": "12647:106:39"
                },
                {
                  "assignments": [],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 12881,
                      "name": "_reward",
                      "nodeType": "VariableDeclaration",
                      "scope": 13009,
                      "src": "12764:12:39",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 12880,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "12764:4:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 12882,
                  "initialValue": null,
                  "nodeType": "VariableDeclarationStatement",
                  "src": "12764:12:39"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    },
                    "id": 12893,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "commonType": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "id": 12885,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "argumentTypes": null,
                        "id": 12883,
                        "name": "_round",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12828,
                        "src": "12790:6:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "==",
                      "rightExpression": {
                        "argumentTypes": null,
                        "hexValue": "30",
                        "id": 12884,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "12800:1:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_0_by_1",
                          "typeString": "int_const 0"
                        },
                        "value": "0"
                      },
                      "src": "12790:11:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "||",
                    "rightExpression": {
                      "argumentTypes": null,
                      "commonType": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "id": 12892,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "argumentTypes": null,
                        "id": 12886,
                        "name": "_round",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12828,
                        "src": "12805:6:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "==",
                      "rightExpression": {
                        "argumentTypes": null,
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 12891,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "id": 12887,
                              "name": "_paidFees",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 12838,
                              "src": "12815:9:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                              }
                            },
                            "id": 12888,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "stake",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 11882,
                            "src": "12815:15:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                              "typeString": "uint256[] storage ref"
                            }
                          },
                          "id": 12889,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "length",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": null,
                          "src": "12815:22:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "-",
                        "rightExpression": {
                          "argumentTypes": null,
                          "hexValue": "31",
                          "id": 12890,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "12840:1:39",
                          "subdenomination": null,
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_1_by_1",
                            "typeString": "int_const 1"
                          },
                          "value": "1"
                        },
                        "src": "12815:26:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "src": "12805:36:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "src": "12790:51:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "id": 12977,
                    "nodeType": "Block",
                    "src": "13140:349:39",
                    "statements": [
                      {
                        "assignments": [
                          12929
                        ],
                        "declarations": [
                          {
                            "constant": false,
                            "id": 12929,
                            "name": "_winningSide",
                            "nodeType": "VariableDeclaration",
                            "scope": 13009,
                            "src": "13165:17:39",
                            "stateVariable": false,
                            "storageLocation": "default",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "typeName": {
                              "id": 12928,
                              "name": "uint",
                              "nodeType": "ElementaryTypeName",
                              "src": "13165:4:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "value": null,
                            "visibility": "internal"
                          }
                        ],
                        "id": 12940,
                        "initialValue": {
                          "argumentTypes": null,
                          "condition": {
                            "argumentTypes": null,
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 12936,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "id": 12930,
                                  "name": "_paidFees",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12838,
                                  "src": "13185:9:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                    "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                  }
                                },
                                "id": 12931,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "ruling",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 11879,
                                "src": "13185:16:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                  "typeString": "uint256[] storage ref"
                                }
                              },
                              "id": 12933,
                              "indexExpression": {
                                "argumentTypes": null,
                                "id": 12932,
                                "name": "_round",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12828,
                                "src": "13202:6:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "13185:24:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "!=",
                            "rightExpression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "id": 12934,
                                "name": "agreement",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 12832,
                                "src": "13213:9:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                  "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                }
                              },
                              "id": 12935,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "ruling",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 10724,
                              "src": "13213:16:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "src": "13185:44:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "falseExpression": {
                            "argumentTypes": null,
                            "hexValue": "31",
                            "id": 12938,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "13236:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_1_by_1",
                              "typeString": "int_const 1"
                            },
                            "value": "1"
                          },
                          "id": 12939,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "Conditional",
                          "src": "13185:52:39",
                          "trueExpression": {
                            "argumentTypes": null,
                            "hexValue": "30",
                            "id": 12937,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "13232:1:39",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint8",
                            "typeString": "uint8"
                          }
                        },
                        "nodeType": "VariableDeclarationStatement",
                        "src": "13165:72:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12975,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "id": 12941,
                            "name": "_reward",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 12881,
                            "src": "13251:7:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "condition": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "id": 12949,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "argumentTypes": null,
                                "baseExpression": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12942,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12838,
                                      "src": "13261:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12943,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "totalContributedPerSide",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11890,
                                    "src": "13261:33:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                      "typeString": "uint256[2] storage ref[] storage ref"
                                    }
                                  },
                                  "id": 12945,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "id": 12944,
                                    "name": "_round",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 12828,
                                    "src": "13295:6:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "13261:41:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                    "typeString": "uint256[2] storage ref"
                                  }
                                },
                                "id": 12947,
                                "indexExpression": {
                                  "argumentTypes": null,
                                  "id": 12946,
                                  "name": "_winningSide",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12929,
                                  "src": "13303:12:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "13261:55:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "==",
                              "rightExpression": {
                                "argumentTypes": null,
                                "hexValue": "30",
                                "id": 12948,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "13320:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_0_by_1",
                                  "typeString": "int_const 0"
                                },
                                "value": "0"
                              },
                              "src": "13261:60:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            "falseExpression": {
                              "argumentTypes": null,
                              "components": [
                                {
                                  "argumentTypes": null,
                                  "commonType": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  },
                                  "id": 12972,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "argumentTypes": null,
                                    "components": [
                                      {
                                        "argumentTypes": null,
                                        "commonType": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        },
                                        "id": 12964,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftExpression": {
                                          "argumentTypes": null,
                                          "baseExpression": {
                                            "argumentTypes": null,
                                            "expression": {
                                              "argumentTypes": null,
                                              "id": 12951,
                                              "name": "_paidFees",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 12838,
                                              "src": "13330:9:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                              }
                                            },
                                            "id": 12952,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberName": "totalValue",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 11885,
                                            "src": "13330:20:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                                              "typeString": "uint256[] storage ref"
                                            }
                                          },
                                          "id": 12954,
                                          "indexExpression": {
                                            "argumentTypes": null,
                                            "id": 12953,
                                            "name": "_round",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12828,
                                            "src": "13351:6:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "IndexAccess",
                                          "src": "13330:28:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "nodeType": "BinaryOperation",
                                        "operator": "*",
                                        "rightExpression": {
                                          "argumentTypes": null,
                                          "baseExpression": {
                                            "argumentTypes": null,
                                            "baseExpression": {
                                              "argumentTypes": null,
                                              "baseExpression": {
                                                "argumentTypes": null,
                                                "expression": {
                                                  "argumentTypes": null,
                                                  "id": 12955,
                                                  "name": "_paidFees",
                                                  "nodeType": "Identifier",
                                                  "overloadedDeclarations": [],
                                                  "referencedDeclaration": 12838,
                                                  "src": "13361:9:39",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                                    "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                                  }
                                                },
                                                "id": 12956,
                                                "isConstant": false,
                                                "isLValue": true,
                                                "isPure": false,
                                                "lValueRequested": false,
                                                "memberName": "contributions",
                                                "nodeType": "MemberAccess",
                                                "referencedDeclaration": 11900,
                                                "src": "13361:23:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                                                  "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                                                }
                                              },
                                              "id": 12958,
                                              "indexExpression": {
                                                "argumentTypes": null,
                                                "id": 12957,
                                                "name": "_round",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 12828,
                                                "src": "13385:6:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_uint256",
                                                  "typeString": "uint256"
                                                }
                                              },
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "nodeType": "IndexAccess",
                                              "src": "13361:31:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$",
                                                "typeString": "mapping(address => uint256[2] storage ref)"
                                              }
                                            },
                                            "id": 12961,
                                            "indexExpression": {
                                              "argumentTypes": null,
                                              "expression": {
                                                "argumentTypes": null,
                                                "id": 12959,
                                                "name": "msg",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 20639,
                                                "src": "13393:3:39",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_magic_message",
                                                  "typeString": "msg"
                                                }
                                              },
                                              "id": 12960,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberName": "sender",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": null,
                                              "src": "13393:10:39",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_address",
                                                "typeString": "address"
                                              }
                                            },
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "nodeType": "IndexAccess",
                                            "src": "13361:43:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                              "typeString": "uint256[2] storage ref"
                                            }
                                          },
                                          "id": 12963,
                                          "indexExpression": {
                                            "argumentTypes": null,
                                            "id": 12962,
                                            "name": "_winningSide",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 12929,
                                            "src": "13405:12:39",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "IndexAccess",
                                          "src": "13361:57:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "src": "13330:88:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      }
                                    ],
                                    "id": 12965,
                                    "isConstant": false,
                                    "isInlineArray": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "TupleExpression",
                                    "src": "13329:90:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": "/",
                                  "rightExpression": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "baseExpression": {
                                        "argumentTypes": null,
                                        "expression": {
                                          "argumentTypes": null,
                                          "id": 12966,
                                          "name": "_paidFees",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 12838,
                                          "src": "13422:9:39",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                            "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                          }
                                        },
                                        "id": 12967,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberName": "totalContributedPerSide",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 11890,
                                        "src": "13422:33:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                                          "typeString": "uint256[2] storage ref[] storage ref"
                                        }
                                      },
                                      "id": 12969,
                                      "indexExpression": {
                                        "argumentTypes": null,
                                        "id": 12968,
                                        "name": "_round",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 12828,
                                        "src": "13456:6:39",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "nodeType": "IndexAccess",
                                      "src": "13422:41:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                        "typeString": "uint256[2] storage ref"
                                      }
                                    },
                                    "id": 12971,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "id": 12970,
                                      "name": "_winningSide",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12929,
                                      "src": "13464:12:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "13422:55:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "src": "13329:148:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                }
                              ],
                              "id": 12973,
                              "isConstant": false,
                              "isInlineArray": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "TupleExpression",
                              "src": "13328:150:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "id": 12974,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "Conditional",
                            "src": "13261:217:39",
                            "trueExpression": {
                              "argumentTypes": null,
                              "hexValue": "30",
                              "id": 12950,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "13324:1:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            },
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "13251:227:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12976,
                        "nodeType": "ExpressionStatement",
                        "src": "13251:227:39"
                      }
                    ]
                  },
                  "id": 12978,
                  "nodeType": "IfStatement",
                  "src": "12786:703:39",
                  "trueBody": {
                    "id": 12927,
                    "nodeType": "Block",
                    "src": "12843:291:39",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              "id": 12901,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "argumentTypes": null,
                                "commonType": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                "id": 12897,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "argumentTypes": null,
                                  "id": 12895,
                                  "name": "_round",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 12828,
                                  "src": "12889:6:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": "!=",
                                "rightExpression": {
                                  "argumentTypes": null,
                                  "hexValue": "30",
                                  "id": 12896,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "12899:1:39",
                                  "subdenomination": null,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_0_by_1",
                                    "typeString": "int_const 0"
                                  },
                                  "value": "0"
                                },
                                "src": "12889:11:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "||",
                              "rightExpression": {
                                "argumentTypes": null,
                                "id": 12900,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "UnaryOperation",
                                "operator": "!",
                                "prefix": true,
                                "src": "12904:19:39",
                                "subExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12898,
                                    "name": "agreement",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 12832,
                                    "src": "12905:9:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_Agreement_$10727_storage_ptr",
                                      "typeString": "struct MultiPartyAgreements.Agreement storage pointer"
                                    }
                                  },
                                  "id": 12899,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "disputed",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 10720,
                                  "src": "12905:18:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "src": "12889:34:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            {
                              "argumentTypes": null,
                              "hexValue": "5468657265206973206e6f7468696e6720746f2077697468647261772066726f6d2074686520666972737420726f756e6420696620746865206469737075746520776173207261697365642e",
                              "id": 12902,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "string",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "12925:78:39",
                              "subdenomination": null,
                              "typeDescriptions": {
                                "typeIdentifier": "t_stringliteral_8a6e811e961d063b066d1cec54e4d1e36149cc7cac4d4d7c1a318d6d434ac4c7",
                                "typeString": "literal_string \"There is nothing to withdraw from the first round if the dispute was raised.\""
                              },
                              "value": "There is nothing to withdraw from the first round if the dispute was raised."
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              {
                                "typeIdentifier": "t_stringliteral_8a6e811e961d063b066d1cec54e4d1e36149cc7cac4d4d7c1a318d6d434ac4c7",
                                "typeString": "literal_string \"There is nothing to withdraw from the first round if the dispute was raised.\""
                              }
                            ],
                            "id": 12894,
                            "name": "require",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [
                              20642,
                              20643
                            ],
                            "referencedDeclaration": 20643,
                            "src": "12881:7:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
                              "typeString": "function (bool,string memory) pure"
                            }
                          },
                          "id": 12903,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "12881:123:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 12904,
                        "nodeType": "ExpressionStatement",
                        "src": "12881:123:39"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 12925,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "id": 12905,
                            "name": "_reward",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 12881,
                            "src": "13018:7:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 12924,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "baseExpression": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12906,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12838,
                                      "src": "13028:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12907,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "contributions",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11900,
                                    "src": "13028:23:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                                      "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                                    }
                                  },
                                  "id": 12909,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "id": 12908,
                                    "name": "_round",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 12828,
                                    "src": "13052:6:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "13028:31:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$",
                                    "typeString": "mapping(address => uint256[2] storage ref)"
                                  }
                                },
                                "id": 12912,
                                "indexExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12910,
                                    "name": "msg",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 20639,
                                    "src": "13060:3:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_magic_message",
                                      "typeString": "msg"
                                    }
                                  },
                                  "id": 12911,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "sender",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "13060:10:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "13028:43:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                  "typeString": "uint256[2] storage ref"
                                }
                              },
                              "id": 12914,
                              "indexExpression": {
                                "argumentTypes": null,
                                "hexValue": "30",
                                "id": 12913,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "13072:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_0_by_1",
                                  "typeString": "int_const 0"
                                },
                                "value": "0"
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "13028:46:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "+",
                            "rightExpression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "baseExpression": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 12915,
                                      "name": "_paidFees",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 12838,
                                      "src": "13077:9:39",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                                        "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                                      }
                                    },
                                    "id": 12916,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "contributions",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 11900,
                                    "src": "13077:23:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                                      "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                                    }
                                  },
                                  "id": 12918,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "id": 12917,
                                    "name": "_round",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 12828,
                                    "src": "13101:6:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "13077:31:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$",
                                    "typeString": "mapping(address => uint256[2] storage ref)"
                                  }
                                },
                                "id": 12921,
                                "indexExpression": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "id": 12919,
                                    "name": "msg",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 20639,
                                    "src": "13109:3:39",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_magic_message",
                                      "typeString": "msg"
                                    }
                                  },
                                  "id": 12920,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "sender",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": null,
                                  "src": "13109:10:39",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_address",
                                    "typeString": "address"
                                  }
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "13077:43:39",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_uint256_$2_storage",
                                  "typeString": "uint256[2] storage ref"
                                }
                              },
                              "id": 12923,
                              "indexExpression": {
                                "argumentTypes": null,
                                "hexValue": "31",
                                "id": 12922,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "13121:1:39",
                                "subdenomination": null,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_1_by_1",
                                  "typeString": "int_const 1"
                                },
                                "value": "1"
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "13077:46:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "src": "13028:95:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "13018:105:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 12926,
                        "nodeType": "ExpressionStatement",
                        "src": "13018:105:39"
                      }
                    ]
                  }
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 12990,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "baseExpression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "id": 12979,
                            "name": "_paidFees",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 12838,
                            "src": "13499:9:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                              "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                            }
                          },
                          "id": 12984,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "contributions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 11900,
                          "src": "13499:23:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                            "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                          }
                        },
                        "id": 12985,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 12981,
                          "name": "_round",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 12828,
                          "src": "13523:6:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "13499:31:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$",
                          "typeString": "mapping(address => uint256[2] storage ref)"
                        }
                      },
                      "id": 12986,
                      "indexExpression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12982,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20639,
                          "src": "13531:3:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 12983,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "13531:10:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "nodeType": "IndexAccess",
                      "src": "13499:43:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$2_storage",
                        "typeString": "uint256[2] storage ref"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "components": [
                        {
                          "argumentTypes": null,
                          "hexValue": "30",
                          "id": 12987,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "13546:1:39",
                          "subdenomination": null,
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_0_by_1",
                            "typeString": "int_const 0"
                          },
                          "value": "0"
                        },
                        {
                          "argumentTypes": null,
                          "hexValue": "30",
                          "id": 12988,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "13549:1:39",
                          "subdenomination": null,
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_0_by_1",
                            "typeString": "int_const 0"
                          },
                          "value": "0"
                        }
                      ],
                      "id": 12989,
                      "isConstant": false,
                      "isInlineArray": true,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "nodeType": "TupleExpression",
                      "src": "13545:6:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint8_$2_memory_ptr",
                        "typeString": "uint8[2] memory"
                      }
                    },
                    "src": "13499:52:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$2_storage",
                      "typeString": "uint256[2] storage ref"
                    }
                  },
                  "id": 12991,
                  "nodeType": "ExpressionStatement",
                  "src": "13499:52:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 12997,
                        "name": "_reward",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12881,
                        "src": "13581:7:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 12992,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20639,
                          "src": "13561:3:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 12995,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "13561:10:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "id": 12996,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "transfer",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": null,
                      "src": "13561:19:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$",
                        "typeString": "function (uint256)"
                      }
                    },
                    "id": 12998,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "13561:28:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 12999,
                  "nodeType": "ExpressionStatement",
                  "src": "13561:28:39"
                },
                {
                  "eventCall": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 13001,
                        "name": "_agreementID",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12826,
                        "src": "13621:12:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 13002,
                        "name": "_round",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12828,
                        "src": "13635:6:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 13003,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 20639,
                          "src": "13643:3:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 13004,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "13643:10:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 13005,
                        "name": "_reward",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 12881,
                        "src": "13655:7:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 13000,
                      "name": "RewardWithdrawal",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11942,
                      "src": "13604:16:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_address_$_t_uint256_$returns$__$",
                        "typeString": "function (bytes32,uint256,address,uint256)"
                      }
                    },
                    "id": 13006,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "13604:59:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 13007,
                  "nodeType": "EmitStatement",
                  "src": "13599:64:39"
                }
              ]
            },
            "documentation": "@dev Withdraws the caller's reward for funding the specified round of the specified agreement.\n @param _agreementID The ID of the agreement.\n @param _round The round.",
            "id": 13009,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "withdrawReward",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 12829,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12826,
                  "name": "_agreementID",
                  "nodeType": "VariableDeclaration",
                  "scope": 13009,
                  "src": "12175:20:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 12825,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "12175:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12828,
                  "name": "_round",
                  "nodeType": "VariableDeclaration",
                  "scope": 13009,
                  "src": "12197:11:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12827,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "12197:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "12174:35:39"
            },
            "payable": false,
            "returnParameters": {
              "id": 12830,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "12217:0:39"
            },
            "scope": 13089,
            "src": "12151:1519:39",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 13062,
              "nodeType": "Block",
              "src": "14092:304:39",
              "statements": [
                {
                  "assignments": [
                    13032
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 13032,
                      "name": "_paidFees",
                      "nodeType": "VariableDeclaration",
                      "scope": 13063,
                      "src": "14102:26:39",
                      "stateVariable": false,
                      "storageLocation": "storage",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                        "typeString": "struct MultiPartyInsurableFees.PaidFees"
                      },
                      "typeName": {
                        "contractScope": null,
                        "id": 13031,
                        "name": "PaidFees",
                        "nodeType": "UserDefinedTypeName",
                        "referencedDeclaration": 11901,
                        "src": "14102:8:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 13036,
                  "initialValue": {
                    "argumentTypes": null,
                    "baseExpression": {
                      "argumentTypes": null,
                      "id": 13033,
                      "name": "paidFees",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11950,
                      "src": "14131:8:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PaidFees_$11901_storage_$",
                        "typeString": "mapping(bytes32 => struct MultiPartyInsurableFees.PaidFees storage ref)"
                      }
                    },
                    "id": 13035,
                    "indexExpression": {
                      "argumentTypes": null,
                      "id": 13034,
                      "name": "_agreementID",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13011,
                      "src": "14140:12:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "IndexAccess",
                    "src": "14131:22:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_PaidFees_$11901_storage",
                      "typeString": "struct MultiPartyInsurableFees.PaidFees storage ref"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "14102:51:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 13040,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 13037,
                      "name": "ruling",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13015,
                      "src": "14163:6:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                        "typeString": "uint256[] memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 13038,
                        "name": "_paidFees",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13032,
                        "src": "14172:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                        }
                      },
                      "id": 13039,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "ruling",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11879,
                      "src": "14172:16:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                        "typeString": "uint256[] storage ref"
                      }
                    },
                    "src": "14163:25:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                      "typeString": "uint256[] memory"
                    }
                  },
                  "id": 13041,
                  "nodeType": "ExpressionStatement",
                  "src": "14163:25:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 13045,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 13042,
                      "name": "_stake",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13018,
                      "src": "14198:6:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                        "typeString": "uint256[] memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 13043,
                        "name": "_paidFees",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13032,
                        "src": "14207:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                        }
                      },
                      "id": 13044,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "stake",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11882,
                      "src": "14207:15:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                        "typeString": "uint256[] storage ref"
                      }
                    },
                    "src": "14198:24:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                      "typeString": "uint256[] memory"
                    }
                  },
                  "id": 13046,
                  "nodeType": "ExpressionStatement",
                  "src": "14198:24:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 13050,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 13047,
                      "name": "totalValue",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13021,
                      "src": "14232:10:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                        "typeString": "uint256[] memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 13048,
                        "name": "_paidFees",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13032,
                        "src": "14245:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                        }
                      },
                      "id": 13049,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "totalValue",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11885,
                      "src": "14245:20:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                        "typeString": "uint256[] storage ref"
                      }
                    },
                    "src": "14232:33:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                      "typeString": "uint256[] memory"
                    }
                  },
                  "id": 13051,
                  "nodeType": "ExpressionStatement",
                  "src": "14232:33:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 13055,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 13052,
                      "name": "totalContributedPerSide",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13026,
                      "src": "14275:23:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_array$_t_uint256_$2_memory_$dyn_memory_ptr",
                        "typeString": "uint256[2] memory[] memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 13053,
                        "name": "_paidFees",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13032,
                        "src": "14301:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                        }
                      },
                      "id": 13054,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "totalContributedPerSide",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11890,
                      "src": "14301:33:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage",
                        "typeString": "uint256[2] storage ref[] storage ref"
                      }
                    },
                    "src": "14275:59:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_array$_t_uint256_$2_memory_$dyn_memory_ptr",
                      "typeString": "uint256[2] memory[] memory"
                    }
                  },
                  "id": 13056,
                  "nodeType": "ExpressionStatement",
                  "src": "14275:59:39"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 13060,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 13057,
                      "name": "loserFullyFunded",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13029,
                      "src": "14344:16:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr",
                        "typeString": "bool[] memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 13058,
                        "name": "_paidFees",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13032,
                        "src": "14363:9:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_PaidFees_$11901_storage_ptr",
                          "typeString": "struct MultiPartyInsurableFees.PaidFees storage pointer"
                        }
                      },
                      "id": 13059,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "loserFullyFunded",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 11893,
                      "src": "14363:26:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_bool_$dyn_storage",
                        "typeString": "bool[] storage ref"
                      }
                    },
                    "src": "14344:45:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr",
                      "typeString": "bool[] memory"
                    }
                  },
                  "id": 13061,
                  "nodeType": "ExpressionStatement",
                  "src": "14344:45:39"
                }
              ]
            },
            "documentation": "@dev Gets the info on fees paid for the specified agreement.\n @param _agreementID The ID of the agreement.\n @return The info.",
            "id": 13063,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getFeesInfo",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 13012,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13011,
                  "name": "_agreementID",
                  "nodeType": "VariableDeclaration",
                  "scope": 13063,
                  "src": "13888:20:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 13010,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "13888:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "13878:36:39"
            },
            "payable": false,
            "returnParameters": {
              "id": 13030,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13015,
                  "name": "ruling",
                  "nodeType": "VariableDeclaration",
                  "scope": 13063,
                  "src": "13946:13:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 13013,
                      "name": "uint",
                      "nodeType": "ElementaryTypeName",
                      "src": "13946:4:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 13014,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "13946:6:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13018,
                  "name": "_stake",
                  "nodeType": "VariableDeclaration",
                  "scope": 13063,
                  "src": "13969:13:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 13016,
                      "name": "uint",
                      "nodeType": "ElementaryTypeName",
                      "src": "13969:4:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 13017,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "13969:6:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13021,
                  "name": "totalValue",
                  "nodeType": "VariableDeclaration",
                  "scope": 13063,
                  "src": "13992:17:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 13019,
                      "name": "uint",
                      "nodeType": "ElementaryTypeName",
                      "src": "13992:4:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 13020,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "13992:6:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13026,
                  "name": "totalContributedPerSide",
                  "nodeType": "VariableDeclaration",
                  "scope": 13063,
                  "src": "14019:33:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_array$_t_uint256_$2_memory_$dyn_memory_ptr",
                    "typeString": "uint256[2][]"
                  },
                  "typeName": {
                    "baseType": {
                      "baseType": {
                        "id": 13022,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "14019:4:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "id": 13024,
                      "length": {
                        "argumentTypes": null,
                        "hexValue": "32",
                        "id": 13023,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "14024:1:39",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": null,
                          "typeString": null
                        },
                        "value": "2"
                      },
                      "nodeType": "ArrayTypeName",
                      "src": "14019:7:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$2_storage_ptr",
                        "typeString": "uint256[2]"
                      }
                    },
                    "id": 13025,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "14019:9:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_array$_t_uint256_$2_storage_$dyn_storage_ptr",
                      "typeString": "uint256[2][]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13029,
                  "name": "loserFullyFunded",
                  "nodeType": "VariableDeclaration",
                  "scope": 13063,
                  "src": "14062:23:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr",
                    "typeString": "bool[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 13027,
                      "name": "bool",
                      "nodeType": "ElementaryTypeName",
                      "src": "14062:4:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "id": 13028,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "14062:6:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bool_$dyn_storage_ptr",
                      "typeString": "bool[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "13936:155:39"
            },
            "scope": 13089,
            "src": "13858:538:39",
            "stateMutability": "view",
            "superFunction": 13160,
            "visibility": "external"
          },
          {
            "body": {
              "id": 13087,
              "nodeType": "Block",
              "src": "14835:91:39",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 13085,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 13076,
                      "name": "contributions",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 13074,
                      "src": "14845:13:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$2_memory_ptr",
                        "typeString": "uint256[2] memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "baseExpression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 13077,
                              "name": "paidFees",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11950,
                              "src": "14861:8:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_PaidFees_$11901_storage_$",
                                "typeString": "mapping(bytes32 => struct MultiPartyInsurableFees.PaidFees storage ref)"
                              }
                            },
                            "id": 13079,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 13078,
                              "name": "_agreementID",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 13065,
                              "src": "14870:12:39",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "14861:22:39",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_PaidFees_$11901_storage",
                              "typeString": "struct MultiPartyInsurableFees.PaidFees storage ref"
                            }
                          },
                          "id": 13080,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "contributions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 11900,
                          "src": "14861:36:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$_$dyn_storage",
                            "typeString": "mapping(address => uint256[2] storage ref)[] storage ref"
                          }
                        },
                        "id": 13082,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 13081,
                          "name": "_round",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 13067,
                          "src": "14898:6:39",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "14861:44:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$2_storage_$",
                          "typeString": "mapping(address => uint256[2] storage ref)"
                        }
                      },
                      "id": 13084,
                      "indexExpression": {
                        "argumentTypes": null,
                        "id": 13083,
                        "name": "_contributor",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 13069,
                        "src": "14906:12:39",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "IndexAccess",
                      "src": "14861:58:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$2_storage",
                        "typeString": "uint256[2] storage ref"
                      }
                    },
                    "src": "14845:74:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$2_memory_ptr",
                      "typeString": "uint256[2] memory"
                    }
                  },
                  "id": 13086,
                  "nodeType": "ExpressionStatement",
                  "src": "14845:74:39"
                }
              ]
            },
            "documentation": "@dev Gets the contributions by the specified contributor in the specified round of the specified agreement.\n @param _agreementID The ID of the agreement.\n @param _round The round.\n @param _contributor The address of the contributor.\n @return The contributions.",
            "id": 13088,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getContributions",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 13070,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13065,
                  "name": "_agreementID",
                  "nodeType": "VariableDeclaration",
                  "scope": 13088,
                  "src": "14733:20:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 13064,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "14733:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13067,
                  "name": "_round",
                  "nodeType": "VariableDeclaration",
                  "scope": 13088,
                  "src": "14755:11:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13066,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "14755:4:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13069,
                  "name": "_contributor",
                  "nodeType": "VariableDeclaration",
                  "scope": 13088,
                  "src": "14768:20:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13068,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "14768:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "14732:57:39"
            },
            "payable": false,
            "returnParameters": {
              "id": 13075,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13074,
                  "name": "contributions",
                  "nodeType": "VariableDeclaration",
                  "scope": 13088,
                  "src": "14812:21:39",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$2_memory_ptr",
                    "typeString": "uint256[2]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 13071,
                      "name": "uint",
                      "nodeType": "ElementaryTypeName",
                      "src": "14812:4:39",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 13073,
                    "length": {
                      "argumentTypes": null,
                      "hexValue": "32",
                      "id": 13072,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "14817:1:39",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": null,
                        "typeString": null
                      },
                      "value": "2"
                    },
                    "nodeType": "ArrayTypeName",
                    "src": "14812:7:39",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$2_storage_ptr",
                      "typeString": "uint256[2]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "14811:23:39"
            },
            "scope": 13089,
            "src": "14707:219:39",
            "stateMutability": "view",
            "superFunction": 13173,
            "visibility": "external"
          }
        ],
        "scope": 13090,
        "src": "275:14653:39"
      }
    ],
    "src": "0:14929:39"
  },
  "compiler": {
    "name": "solc",
    "version": "0.4.24+commit.e67f0147.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "2.0.1",
  "updatedAt": "2018-11-02T14:04:11.036Z"
}