{
  "abi": [
    {
      "inputs": [],
      "name": "BondEscalationResolutionModule_AgainstTurnToEqualize",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "BondEscalationResolutionModule_AlreadyResolved",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "BondEscalationResolutionModule_ForTurnToEqualize",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "BondEscalationResolutionModule_MustBeResolved",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "BondEscalationResolutionModule_NotEscalated",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "BondEscalationResolutionModule_NotResolved",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "BondEscalationResolutionModule_PledgingPhaseNotOver",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "BondEscalationResolutionModule_PledgingPhaseOver",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "Module_OnlyOracle",
      "type": "error"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "_disputeId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "_requestId",
          "type": "bytes32"
        }
      ],
      "name": "DisputeEscalated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "_requestId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "_disputeId",
          "type": "bytes32"
        },
        {
          "indexed": false,
          "internalType": "enum IOracle.DisputeStatus",
          "name": "_status",
          "type": "uint8"
        }
      ],
      "name": "DisputeResolved",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "_requestId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "_disputeId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "_pledger",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "contract IERC20",
          "name": "_token",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "_pledgeReleased",
          "type": "uint256"
        }
      ],
      "name": "PledgeClaimedDisputerLost",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "_requestId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "_disputeId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "_pledger",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "contract IERC20",
          "name": "_token",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "_pledgeReleased",
          "type": "uint256"
        }
      ],
      "name": "PledgeClaimedDisputerWon",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "_requestId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "_disputeId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "_pledger",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "contract IERC20",
          "name": "_token",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "_pledgeReleased",
          "type": "uint256"
        }
      ],
      "name": "PledgeClaimedNoResolution",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "_pledger",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "_requestId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "_disputeId",
          "type": "bytes32"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "_pledgedAmount",
          "type": "uint256"
        }
      ],
      "name": "PledgedAgainstDispute",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "_pledger",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "_requestId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "_disputeId",
          "type": "bytes32"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "_pledgedAmount",
          "type": "uint256"
        }
      ],
      "name": "PledgedForDispute",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "_requestId",
          "type": "bytes32"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "_finalizer",
          "type": "address"
        }
      ],
      "name": "RequestFinalized",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "_requestId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "_disputeId",
          "type": "bytes32"
        }
      ],
      "name": "ResolutionStarted",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "BASE",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "_base",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_requestId",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "_disputeId",
          "type": "bytes32"
        }
      ],
      "name": "claimPledge",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_requestId",
          "type": "bytes32"
        }
      ],
      "name": "decodeRequestData",
      "outputs": [
        {
          "components": [
            {
              "internalType": "contract IBondEscalationAccounting",
              "name": "accountingExtension",
              "type": "address"
            },
            {
              "internalType": "contract IERC20",
              "name": "bondToken",
              "type": "address"
            },
            {
              "internalType": "uint256",
              "name": "percentageDiff",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "pledgeThreshold",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "timeUntilDeadline",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "timeToBreakInequality",
              "type": "uint256"
            }
          ],
          "internalType": "struct IBondEscalationResolutionModule.RequestParameters",
          "name": "_params",
          "type": "tuple"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_disputeId",
          "type": "bytes32"
        }
      ],
      "name": "escalations",
      "outputs": [
        {
          "internalType": "enum IBondEscalationResolutionModule.Resolution",
          "name": "_resolution",
          "type": "uint8"
        },
        {
          "internalType": "uint128",
          "name": "_startTime",
          "type": "uint128"
        },
        {
          "internalType": "uint256",
          "name": "_pledgesFor",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_pledgesAgainst",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_requestId",
          "type": "bytes32"
        },
        {
          "internalType": "address",
          "name": "_finalizer",
          "type": "address"
        }
      ],
      "name": "finalizeRequest",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_disputeId",
          "type": "bytes32"
        }
      ],
      "name": "inequalityData",
      "outputs": [
        {
          "internalType": "enum IBondEscalationResolutionModule.InequalityStatus",
          "name": "_inequalityStatus",
          "type": "uint8"
        },
        {
          "internalType": "uint256",
          "name": "_time",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "moduleName",
      "outputs": [
        {
          "internalType": "string",
          "name": "_moduleName",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "oracle",
      "outputs": [
        {
          "internalType": "address",
          "name": "_oracle",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_requestId",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "_disputeId",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "_pledgeAmount",
          "type": "uint256"
        }
      ],
      "name": "pledgeAgainstDispute",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_requestId",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "_disputeId",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "_pledgeAmount",
          "type": "uint256"
        }
      ],
      "name": "pledgeForDispute",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_disputeId",
          "type": "bytes32"
        },
        {
          "internalType": "address",
          "name": "_pledger",
          "type": "address"
        }
      ],
      "name": "pledgesAgainstDispute",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "_pledgesAgainstDispute",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_disputeId",
          "type": "bytes32"
        },
        {
          "internalType": "address",
          "name": "_pledger",
          "type": "address"
        }
      ],
      "name": "pledgesForDispute",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "_pledgesForDispute",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_requestId",
          "type": "bytes32"
        }
      ],
      "name": "requestData",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "_requestData",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_disputeId",
          "type": "bytes32"
        }
      ],
      "name": "resolveDispute",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_requestId",
          "type": "bytes32"
        },
        {
          "internalType": "bytes",
          "name": "_data",
          "type": "bytes"
        }
      ],
      "name": "setupRequest",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "_disputeId",
          "type": "bytes32"
        }
      ],
      "name": "startResolution",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": {
    "object": "0x",
    "sourceMap": "",
    "linkReferences": {}
  },
  "deployedBytecode": {
    "object": "0x",
    "sourceMap": "",
    "linkReferences": {}
  },
  "methodIdentifiers": {
    "BASE()": "ec342ad0",
    "claimPledge(bytes32,bytes32)": "15dff0b2",
    "decodeRequestData(bytes32)": "4d610a46",
    "escalations(bytes32)": "4cf3ad6a",
    "finalizeRequest(bytes32,address)": "309de607",
    "inequalityData(bytes32)": "f1c2fb31",
    "moduleName()": "93f0899a",
    "oracle()": "7dc0d1d0",
    "pledgeAgainstDispute(bytes32,bytes32,uint256)": "325fff12",
    "pledgeForDispute(bytes32,bytes32,uint256)": "d0f27f78",
    "pledgesAgainstDispute(bytes32,address)": "ef940cef",
    "pledgesForDispute(bytes32,address)": "076404dc",
    "requestData(bytes32)": "3661346b",
    "resolveDispute(bytes32)": "c8218e3e",
    "setupRequest(bytes32,bytes)": "2e76be2a",
    "startResolution(bytes32)": "d96dd0e7"
  },
  "rawMetadata": "{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"BondEscalationResolutionModule_AgainstTurnToEqualize\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BondEscalationResolutionModule_AlreadyResolved\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BondEscalationResolutionModule_ForTurnToEqualize\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BondEscalationResolutionModule_MustBeResolved\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BondEscalationResolutionModule_NotEscalated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BondEscalationResolutionModule_NotResolved\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BondEscalationResolutionModule_PledgingPhaseNotOver\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BondEscalationResolutionModule_PledgingPhaseOver\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_OnlyOracle\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_disputeId\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_requestId\",\"type\":\"bytes32\"}],\"name\":\"DisputeEscalated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_requestId\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_disputeId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"enum IOracle.DisputeStatus\",\"name\":\"_status\",\"type\":\"uint8\"}],\"name\":\"DisputeResolved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_requestId\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_disputeId\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_pledger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"contract IERC20\",\"name\":\"_token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_pledgeReleased\",\"type\":\"uint256\"}],\"name\":\"PledgeClaimedDisputerLost\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_requestId\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_disputeId\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_pledger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"contract IERC20\",\"name\":\"_token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_pledgeReleased\",\"type\":\"uint256\"}],\"name\":\"PledgeClaimedDisputerWon\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_requestId\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_disputeId\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_pledger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"contract IERC20\",\"name\":\"_token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_pledgeReleased\",\"type\":\"uint256\"}],\"name\":\"PledgeClaimedNoResolution\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_pledger\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_requestId\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_disputeId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_pledgedAmount\",\"type\":\"uint256\"}],\"name\":\"PledgedAgainstDispute\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_pledger\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_requestId\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_disputeId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_pledgedAmount\",\"type\":\"uint256\"}],\"name\":\"PledgedForDispute\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_requestId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_finalizer\",\"type\":\"address\"}],\"name\":\"RequestFinalized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_requestId\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"_disputeId\",\"type\":\"bytes32\"}],\"name\":\"ResolutionStarted\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"BASE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_base\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_requestId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_disputeId\",\"type\":\"bytes32\"}],\"name\":\"claimPledge\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_requestId\",\"type\":\"bytes32\"}],\"name\":\"decodeRequestData\",\"outputs\":[{\"components\":[{\"internalType\":\"contract IBondEscalationAccounting\",\"name\":\"accountingExtension\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"bondToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"percentageDiff\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"pledgeThreshold\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"timeUntilDeadline\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"timeToBreakInequality\",\"type\":\"uint256\"}],\"internalType\":\"struct IBondEscalationResolutionModule.RequestParameters\",\"name\":\"_params\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_disputeId\",\"type\":\"bytes32\"}],\"name\":\"escalations\",\"outputs\":[{\"internalType\":\"enum IBondEscalationResolutionModule.Resolution\",\"name\":\"_resolution\",\"type\":\"uint8\"},{\"internalType\":\"uint128\",\"name\":\"_startTime\",\"type\":\"uint128\"},{\"internalType\":\"uint256\",\"name\":\"_pledgesFor\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_pledgesAgainst\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_requestId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_finalizer\",\"type\":\"address\"}],\"name\":\"finalizeRequest\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_disputeId\",\"type\":\"bytes32\"}],\"name\":\"inequalityData\",\"outputs\":[{\"internalType\":\"enum IBondEscalationResolutionModule.InequalityStatus\",\"name\":\"_inequalityStatus\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"_time\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"moduleName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"_moduleName\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"oracle\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_oracle\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_requestId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_disputeId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_pledgeAmount\",\"type\":\"uint256\"}],\"name\":\"pledgeAgainstDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_requestId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"_disputeId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_pledgeAmount\",\"type\":\"uint256\"}],\"name\":\"pledgeForDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_disputeId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_pledger\",\"type\":\"address\"}],\"name\":\"pledgesAgainstDispute\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_pledgesAgainstDispute\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_disputeId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_pledger\",\"type\":\"address\"}],\"name\":\"pledgesForDispute\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_pledgesForDispute\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_requestId\",\"type\":\"bytes32\"}],\"name\":\"requestData\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"_requestData\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_disputeId\",\"type\":\"bytes32\"}],\"name\":\"resolveDispute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_requestId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"setupRequest\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_disputeId\",\"type\":\"bytes32\"}],\"name\":\"startResolution\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"This is a resolution module, similar in its mechanics to the BondEscalationModule.\",\"events\":{\"DisputeEscalated(bytes32,bytes32)\":{\"params\":{\"_disputeId\":\"The ID of the dispute that was escalated.\",\"_requestId\":\"The ID of the request associated with the dispute.\"}},\"DisputeResolved(bytes32,bytes32,uint8)\":{\"params\":{\"_disputeId\":\"The id for the dispute that was resolved\",\"_requestId\":\"The id for the request that was disputed\",\"_status\":\"The final result of the resolution\"}},\"PledgeClaimedDisputerLost(bytes32,bytes32,address,address,uint256)\":{\"params\":{\"_disputeId\":\"The ID of the dispute the user opposed.\",\"_pledgeReleased\":\"The amount of tokens the user claimed.\",\"_pledger\":\"The address of the user that claimed his pledges.\",\"_requestId\":\"The ID of the request associated with the dispute.\",\"_token\":\"The token the user claimed his pledges in.\"}},\"PledgeClaimedDisputerWon(bytes32,bytes32,address,address,uint256)\":{\"params\":{\"_disputeId\":\"The ID of the dispute the user supported.\",\"_pledgeReleased\":\"The amount of tokens the user claimed.\",\"_pledger\":\"The address of the user that claimed his pledges.\",\"_requestId\":\"The ID of the request associated with the dispute.\",\"_token\":\"The token the user claimed his pledges in.\"}},\"PledgeClaimedNoResolution(bytes32,bytes32,address,address,uint256)\":{\"params\":{\"_disputeId\":\"The ID of the dispute the user supported or opposed.\",\"_pledgeReleased\":\"The amount of tokens the user claimed.\",\"_pledger\":\"The address of the user that claimed his pledges.\",\"_requestId\":\"The ID of the request associated with the dispute.\",\"_token\":\"The token the user claimed his pledges in.\"}},\"PledgedAgainstDispute(address,bytes32,bytes32,uint256)\":{\"params\":{\"_disputeId\":\"The ID of the dispute the user pledged against.\",\"_pledgedAmount\":\"The amount of tokens the user pledged.\",\"_pledger\":\"The address of the user that pledged.\",\"_requestId\":\"The ID of the request associated with the dispute.\"}},\"PledgedForDispute(address,bytes32,bytes32,uint256)\":{\"params\":{\"_disputeId\":\"The ID of the dispute the user pledged in favor of.\",\"_pledgedAmount\":\"The amount of tokens the user pledged.\",\"_pledger\":\"The address of the user that pledged.\",\"_requestId\":\"The ID of the request associated with the dispute.\"}},\"RequestFinalized(bytes32,address)\":{\"params\":{\"_finalizer\":\"The address that initiated the finalization\",\"_requestId\":\"The ID of the request that was finalized\"}},\"ResolutionStarted(bytes32,bytes32)\":{\"params\":{\"_disputeId\":\"The id for the dispute that the resolution was started for\",\"_requestId\":\"The id for the request for the dispute\"}}},\"kind\":\"dev\",\"methods\":{\"BASE()\":{\"returns\":{\"_base\":\"The base to avoid over/underflow\"}},\"claimPledge(bytes32,bytes32)\":{\"details\":\"Winning pledgers will claim their pledges along with their reward. In case of no resolution, users can      claim their pledges back. Losing pledgers will go to the rewards of the winning pledgers.\",\"params\":{\"_disputeId\":\"The ID of the dispute the user wants to claim pledges from.\",\"_requestId\":\"The ID of the request associated with dispute.\"}},\"decodeRequestData(bytes32)\":{\"params\":{\"_requestId\":\"The ID of the request\"},\"returns\":{\"_params\":\"The struct containing the parameters for the request\"}},\"escalations(bytes32)\":{\"params\":{\"_disputeId\":\"The ID of the dispute.\"},\"returns\":{\"_pledgesAgainst\":\"The amount of pledges against the dispute.\",\"_pledgesFor\":\"The amount of pledges in favor of the dispute.\",\"_resolution\":\"The current resolution of the dispute.\",\"_startTime\":\" The time at which the dispute was escalated.\"}},\"finalizeRequest(bytes32,address)\":{\"params\":{\"_finalizer\":\"The address that initiated the finalization\",\"_requestId\":\"The ID of the request being finalized\"}},\"inequalityData(bytes32)\":{\"params\":{\"_disputeId\":\"The ID of the dispute.\"},\"returns\":{\"_inequalityStatus\":\"The current status of the inequality.\",\"_time\":\"            The time at which the inequality was last updated.\"}},\"moduleName()\":{\"returns\":{\"_moduleName\":\"The name of the module.\"}},\"oracle()\":{\"returns\":{\"_oracle\":\"The address of the oracle\"}},\"pledgeAgainstDispute(bytes32,bytes32,uint256)\":{\"params\":{\"_disputeId\":\"The ID of the dispute to pledge against of.\",\"_pledgeAmount\":\"The amount of pledges to pledge.\",\"_requestId\":\"The ID of the request associated with the dispute.\"}},\"pledgeForDispute(bytes32,bytes32,uint256)\":{\"params\":{\"_disputeId\":\"The ID of the dispute to pledge in favor of.\",\"_pledgeAmount\":\"The amount of pledges to pledge.\",\"_requestId\":\"The ID of the request associated with the dispute.\"}},\"pledgesAgainstDispute(bytes32,address)\":{\"params\":{\"_disputeId\":\"The ID of the dispute.\",\"_pledger\":\"The address of the user.\"},\"returns\":{\"_pledgesAgainstDispute\":\"The amount pledged by a user against a given dispute.\"}},\"pledgesForDispute(bytes32,address)\":{\"params\":{\"_disputeId\":\"The ID of the dispute.\",\"_pledger\":\"The address of the user.\"},\"returns\":{\"_pledgesForDispute\":\"The amount pledged by a user for a given dispute.\"}},\"requestData(bytes32)\":{\"params\":{\"_requestId\":\"The id of the request\"},\"returns\":{\"_requestData\":\"The data of the request\"}},\"resolveDispute(bytes32)\":{\"params\":{\"_disputeId\":\"The ID of the dispute being resolved\"}},\"setupRequest(bytes32,bytes)\":{\"params\":{\"_data\":\"The data of the request\",\"_requestId\":\"The ID of the request\"}},\"startResolution(bytes32)\":{\"params\":{\"_disputeId\":\"The ID of the dispute\"}}},\"title\":\"BondEscalationResolutionModule\",\"version\":1},\"userdoc\":{\"errors\":{\"BondEscalationResolutionModule_AgainstTurnToEqualize()\":[{\"notice\":\"Thrown when trying to pledge for a dispute during the opposing side's pledging turn.\"}],\"BondEscalationResolutionModule_AlreadyResolved()\":[{\"notice\":\"Thrown when the user tries to resolve a dispute that has already been resolved.\"}],\"BondEscalationResolutionModule_ForTurnToEqualize()\":[{\"notice\":\"Thrown when trying to pledge against a dispute during the supporting side's pledging turn.\"}],\"BondEscalationResolutionModule_MustBeResolved()\":[{\"notice\":\"Thrown when trying to pledge after the inequality timer has passed.\"}],\"BondEscalationResolutionModule_NotEscalated()\":[{\"notice\":\"Thrown when the user tries to pledge for or resolve a non-existent dispute.\"}],\"BondEscalationResolutionModule_NotResolved()\":[{\"notice\":\"Thrown when trying to claim a pledge for a dispute that has not been resolved yet.\"}],\"BondEscalationResolutionModule_PledgingPhaseNotOver()\":[{\"notice\":\"Thrown when trying to resolve a dispute before the pledging phase is over.\"}],\"BondEscalationResolutionModule_PledgingPhaseOver()\":[{\"notice\":\"Thrown when trying to pledge after the pledging phase is over.\"}],\"Module_OnlyOracle()\":[{\"notice\":\"Thrown when the caller is not the oracle\"}]},\"events\":{\"DisputeEscalated(bytes32,bytes32)\":{\"notice\":\"Emitted when a dispute is escalated.\"},\"DisputeResolved(bytes32,bytes32,uint8)\":{\"notice\":\"Emitted when a dispute has been resolved\"},\"PledgeClaimedDisputerLost(bytes32,bytes32,address,address,uint256)\":{\"notice\":\"Emitted when a user claims his pledges after a lost dispute.\"},\"PledgeClaimedDisputerWon(bytes32,bytes32,address,address,uint256)\":{\"notice\":\"Emitted when a user claims his pledges after a successful dispute.\"},\"PledgeClaimedNoResolution(bytes32,bytes32,address,address,uint256)\":{\"notice\":\"Emitted when a user claims his pledges after a dispute with no resolution.\"},\"PledgedAgainstDispute(address,bytes32,bytes32,uint256)\":{\"notice\":\"Emitted when a user pledges against a dispute.\"},\"PledgedForDispute(address,bytes32,bytes32,uint256)\":{\"notice\":\"Emitted when a user pledges in favor of a dispute.\"},\"RequestFinalized(bytes32,address)\":{\"notice\":\"Emitted when a request is finalized\"},\"ResolutionStarted(bytes32,bytes32)\":{\"notice\":\"Emitted when a resolution is started\"}},\"kind\":\"user\",\"methods\":{\"BASE()\":{\"notice\":\"Base to avoid over/underflow\"},\"claimPledge(bytes32,bytes32)\":{\"notice\":\"Allows user to claim his corresponding pledges after a dispute is resolved.\"},\"decodeRequestData(bytes32)\":{\"notice\":\"Returns the decoded data for a request\"},\"escalations(bytes32)\":{\"notice\":\"Returns the bond escalation progress and the balance of pledges for and against a given dispute.\"},\"finalizeRequest(bytes32,address)\":{\"notice\":\"Finalizes a given request and executes any additional logic set by the chosen modules\"},\"inequalityData(bytes32)\":{\"notice\":\"Returns the inequality status and its last update time of a given dispute.\"},\"moduleName()\":{\"notice\":\"Returns the name of the module.\"},\"oracle()\":{\"notice\":\"Returns the address of the oracle\"},\"pledgeAgainstDispute(bytes32,bytes32,uint256)\":{\"notice\":\"Allows users to pledge against a given dispute. This means the user believes the proposed answer is         correct and therefore wants the disputer to lose his dispute.\"},\"pledgeForDispute(bytes32,bytes32,uint256)\":{\"notice\":\"Allows users to pledge in favor of a given dispute. This means the user believes the proposed answer is         incorrect and therefore wants the disputer to win his dispute.\"},\"pledgesAgainstDispute(bytes32,address)\":{\"notice\":\"Returns the amount pledged by a user against a given dispute.\"},\"pledgesForDispute(bytes32,address)\":{\"notice\":\"Returns the amount pledged by a user for a given dispute.\"},\"requestData(bytes32)\":{\"notice\":\"Returns the data of the request associated with the provided id\"},\"resolveDispute(bytes32)\":{\"notice\":\"Resolves a dispute\"},\"setupRequest(bytes32,bytes)\":{\"notice\":\"Stores the request data and runs module-specific hooks\"},\"startResolution(bytes32)\":{\"notice\":\"Starts the resolution process\"}},\"notice\":\"Handles the bond escalation resolution process for disputes, in which sides take turns pledging for or against a dispute by bonding tokens.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"solidity/interfaces/modules/resolution/IBondEscalationResolutionModule.sol\":\"IBondEscalationResolutionModule\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":10000},\"remappings\":[\":@defi-wonderland/=node_modules/@defi-wonderland/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\",\":solmate/=node_modules/solmate/src/\"]},\"sources\":{\"node_modules/@defi-wonderland/prophet-core-contracts/solidity/interfaces/IModule.sol\":{\"keccak256\":\"0x72c2f68e8c2b749d9ae745269c706b137a640d6bd6f65f966238b547d61e3a05\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4edb1aae7c4abd875d2da44a2dd83781c3c0a3d059edf2d1f2be1c44f865456f\",\"dweb:/ipfs/QmbEHy8tENha1ANEEZADpH4THmqC8aHyCXxFYPw4tS5mf4\"]},\"node_modules/@defi-wonderland/prophet-core-contracts/solidity/interfaces/IOracle.sol\":{\"keccak256\":\"0x606262b4bb3b1447b1f6afef8a1b49088956b168a4b066f6f60da4712b95d3cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a763cdb6ba9f12a93e3d5238d6d3235c5c0c229df94793927f9d2abe00542823\",\"dweb:/ipfs/QmbAbfVyCiHvNvhHxc5r8tK5GUuVBATo15Ma5MirhZPtE6\"]},\"node_modules/@defi-wonderland/prophet-core-contracts/solidity/interfaces/modules/dispute/IDisputeModule.sol\":{\"keccak256\":\"0x21707db43d55ba040893ef0ffefa7f9740c6e03b94d750637e6b2c047a16baa4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ae582ca2fdd6fc82c650333066c95a917221282ad7ef15ea62fb4a31e4ed864d\",\"dweb:/ipfs/QmdxvkpNCK46uYv31TxAtxCiRPSoxbT4hrs94WQfR4ctTM\"]},\"node_modules/@defi-wonderland/prophet-core-contracts/solidity/interfaces/modules/finality/IFinalityModule.sol\":{\"keccak256\":\"0xf6f465732ee119879e3317227f9cf6468055f4f98acdb4365f5b4eacda32948e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://82e1928a7bbc5bce95e1b83d917e1470c72a0bec7494f6f42471b21c0f2b641e\",\"dweb:/ipfs/QmSjaBsNhzCfQd5xwZa98LNYSZ1TqAqo6inRTGD31ua4L8\"]},\"node_modules/@defi-wonderland/prophet-core-contracts/solidity/interfaces/modules/request/IRequestModule.sol\":{\"keccak256\":\"0xefa5dd3334a1676cca1c1860c66c16adb1e399917742476d15de8737b5cb0032\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://03bcff0500f4054b5f71b0badd1779f8dfaa7fc74fc64788991438a1d9d2d14d\",\"dweb:/ipfs/QmdDjbGPgBfbbyT26Xtt9uBD7nYnhSK43fa9skfuBrfjCc\"]},\"node_modules/@defi-wonderland/prophet-core-contracts/solidity/interfaces/modules/resolution/IResolutionModule.sol\":{\"keccak256\":\"0x36e75a87661b234be605a7455c88eaf4e7cbc9f5b4ea08133dd6d9d5af8d6bc6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://232536c4e8b2e9114035e57360976ff24931459fb22a026114d392d3e315ea67\",\"dweb:/ipfs/QmPYKU5RDGMqTZZzCCvVy7ssush4EQGgCCbzbeGpnejGno\"]},\"node_modules/@defi-wonderland/prophet-core-contracts/solidity/interfaces/modules/response/IResponseModule.sol\":{\"keccak256\":\"0xd0610065a22a8d3323427d871a73b835e4d0dffb3afe4bb7e8bbee81b8b9ed1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8c72dcbd36f11e87fc21c922684e5524f0c83830dc945ac92614ea1cd770a1bf\",\"dweb:/ipfs/QmfYnQfSDd2jS9QEAdpmDF6wVXWqitQpmJsSeEHs1mtUQP\"]},\"node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"solidity/interfaces/extensions/IAccountingExtension.sol\":{\"keccak256\":\"0x31b990f92e67ce2b480ca97fcc54d44dddaa82fa60259439d8556bfbb7963d0e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://23e6ef2026bf40ef58f625b7377c70e4988902ae14df333e9be35129a57a87f0\",\"dweb:/ipfs/QmW1RfXvujkVHqXazdeTKshba9rX6kzSCRfZKBwLi38Ue5\"]},\"solidity/interfaces/extensions/IBondEscalationAccounting.sol\":{\"keccak256\":\"0xbb8a09dc8120dce27ef6365377acc387e0ef230969b993590cc81aaa096e36d0\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://31c592b9527e6be74502d7ec135a77bb2802662c75df3a05f916fa050fe34747\",\"dweb:/ipfs/QmQBj39ptDdwMzhjgMzkJHNWbL7Ek41YNhMZaKDtKBG7oc\"]},\"solidity/interfaces/modules/dispute/IBondEscalationModule.sol\":{\"keccak256\":\"0x092ef0770e8587b1828891addecd270a0d49de18df36093480e006842dd3ef20\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://93939711123171337804d8acfe5aab8c1924b997cede75d16e13e7e61bf62f08\",\"dweb:/ipfs/QmQp8T8FXe5aJ6oJdUFRnzAoKarmmRihEF9aZiJWdaBwdt\"]},\"solidity/interfaces/modules/resolution/IBondEscalationResolutionModule.sol\":{\"keccak256\":\"0x238d8d6cb8453dbce0904f461f3e11668b2d204c92bac5000bbb84d92b340e6a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9f1b326dc0027d825b9a2e00b3531569f8b8371c35696688d96d45efcb6dfd35\",\"dweb:/ipfs/QmR6TpT8KYpLoojwzfJRfHryPJ6rAWzagQQVSvQe1mbXaT\"]}},\"version\":1}",
  "metadata": {
    "compiler": {
      "version": "0.8.19+commit.7dd6d404"
    },
    "language": "Solidity",
    "output": {
      "abi": [
        {
          "inputs": [],
          "type": "error",
          "name": "BondEscalationResolutionModule_AgainstTurnToEqualize"
        },
        {
          "inputs": [],
          "type": "error",
          "name": "BondEscalationResolutionModule_AlreadyResolved"
        },
        {
          "inputs": [],
          "type": "error",
          "name": "BondEscalationResolutionModule_ForTurnToEqualize"
        },
        {
          "inputs": [],
          "type": "error",
          "name": "BondEscalationResolutionModule_MustBeResolved"
        },
        {
          "inputs": [],
          "type": "error",
          "name": "BondEscalationResolutionModule_NotEscalated"
        },
        {
          "inputs": [],
          "type": "error",
          "name": "BondEscalationResolutionModule_NotResolved"
        },
        {
          "inputs": [],
          "type": "error",
          "name": "BondEscalationResolutionModule_PledgingPhaseNotOver"
        },
        {
          "inputs": [],
          "type": "error",
          "name": "BondEscalationResolutionModule_PledgingPhaseOver"
        },
        {
          "inputs": [],
          "type": "error",
          "name": "Module_OnlyOracle"
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_disputeId",
              "type": "bytes32",
              "indexed": true
            },
            {
              "internalType": "bytes32",
              "name": "_requestId",
              "type": "bytes32",
              "indexed": true
            }
          ],
          "type": "event",
          "name": "DisputeEscalated",
          "anonymous": false
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_requestId",
              "type": "bytes32",
              "indexed": true
            },
            {
              "internalType": "bytes32",
              "name": "_disputeId",
              "type": "bytes32",
              "indexed": true
            },
            {
              "internalType": "enum IOracle.DisputeStatus",
              "name": "_status",
              "type": "uint8",
              "indexed": false
            }
          ],
          "type": "event",
          "name": "DisputeResolved",
          "anonymous": false
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_requestId",
              "type": "bytes32",
              "indexed": true
            },
            {
              "internalType": "bytes32",
              "name": "_disputeId",
              "type": "bytes32",
              "indexed": true
            },
            {
              "internalType": "address",
              "name": "_pledger",
              "type": "address",
              "indexed": true
            },
            {
              "internalType": "contract IERC20",
              "name": "_token",
              "type": "address",
              "indexed": false
            },
            {
              "internalType": "uint256",
              "name": "_pledgeReleased",
              "type": "uint256",
              "indexed": false
            }
          ],
          "type": "event",
          "name": "PledgeClaimedDisputerLost",
          "anonymous": false
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_requestId",
              "type": "bytes32",
              "indexed": true
            },
            {
              "internalType": "bytes32",
              "name": "_disputeId",
              "type": "bytes32",
              "indexed": true
            },
            {
              "internalType": "address",
              "name": "_pledger",
              "type": "address",
              "indexed": true
            },
            {
              "internalType": "contract IERC20",
              "name": "_token",
              "type": "address",
              "indexed": false
            },
            {
              "internalType": "uint256",
              "name": "_pledgeReleased",
              "type": "uint256",
              "indexed": false
            }
          ],
          "type": "event",
          "name": "PledgeClaimedDisputerWon",
          "anonymous": false
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_requestId",
              "type": "bytes32",
              "indexed": true
            },
            {
              "internalType": "bytes32",
              "name": "_disputeId",
              "type": "bytes32",
              "indexed": true
            },
            {
              "internalType": "address",
              "name": "_pledger",
              "type": "address",
              "indexed": true
            },
            {
              "internalType": "contract IERC20",
              "name": "_token",
              "type": "address",
              "indexed": false
            },
            {
              "internalType": "uint256",
              "name": "_pledgeReleased",
              "type": "uint256",
              "indexed": false
            }
          ],
          "type": "event",
          "name": "PledgeClaimedNoResolution",
          "anonymous": false
        },
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "_pledger",
              "type": "address",
              "indexed": true
            },
            {
              "internalType": "bytes32",
              "name": "_requestId",
              "type": "bytes32",
              "indexed": true
            },
            {
              "internalType": "bytes32",
              "name": "_disputeId",
              "type": "bytes32",
              "indexed": true
            },
            {
              "internalType": "uint256",
              "name": "_pledgedAmount",
              "type": "uint256",
              "indexed": false
            }
          ],
          "type": "event",
          "name": "PledgedAgainstDispute",
          "anonymous": false
        },
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "_pledger",
              "type": "address",
              "indexed": true
            },
            {
              "internalType": "bytes32",
              "name": "_requestId",
              "type": "bytes32",
              "indexed": true
            },
            {
              "internalType": "bytes32",
              "name": "_disputeId",
              "type": "bytes32",
              "indexed": true
            },
            {
              "internalType": "uint256",
              "name": "_pledgedAmount",
              "type": "uint256",
              "indexed": false
            }
          ],
          "type": "event",
          "name": "PledgedForDispute",
          "anonymous": false
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_requestId",
              "type": "bytes32",
              "indexed": true
            },
            {
              "internalType": "address",
              "name": "_finalizer",
              "type": "address",
              "indexed": false
            }
          ],
          "type": "event",
          "name": "RequestFinalized",
          "anonymous": false
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_requestId",
              "type": "bytes32",
              "indexed": true
            },
            {
              "internalType": "bytes32",
              "name": "_disputeId",
              "type": "bytes32",
              "indexed": true
            }
          ],
          "type": "event",
          "name": "ResolutionStarted",
          "anonymous": false
        },
        {
          "inputs": [],
          "stateMutability": "view",
          "type": "function",
          "name": "BASE",
          "outputs": [
            {
              "internalType": "uint256",
              "name": "_base",
              "type": "uint256"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_requestId",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "_disputeId",
              "type": "bytes32"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "claimPledge"
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_requestId",
              "type": "bytes32"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "decodeRequestData",
          "outputs": [
            {
              "internalType": "struct IBondEscalationResolutionModule.RequestParameters",
              "name": "_params",
              "type": "tuple",
              "components": [
                {
                  "internalType": "contract IBondEscalationAccounting",
                  "name": "accountingExtension",
                  "type": "address"
                },
                {
                  "internalType": "contract IERC20",
                  "name": "bondToken",
                  "type": "address"
                },
                {
                  "internalType": "uint256",
                  "name": "percentageDiff",
                  "type": "uint256"
                },
                {
                  "internalType": "uint256",
                  "name": "pledgeThreshold",
                  "type": "uint256"
                },
                {
                  "internalType": "uint256",
                  "name": "timeUntilDeadline",
                  "type": "uint256"
                },
                {
                  "internalType": "uint256",
                  "name": "timeToBreakInequality",
                  "type": "uint256"
                }
              ]
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_disputeId",
              "type": "bytes32"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "escalations",
          "outputs": [
            {
              "internalType": "enum IBondEscalationResolutionModule.Resolution",
              "name": "_resolution",
              "type": "uint8"
            },
            {
              "internalType": "uint128",
              "name": "_startTime",
              "type": "uint128"
            },
            {
              "internalType": "uint256",
              "name": "_pledgesFor",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "_pledgesAgainst",
              "type": "uint256"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_requestId",
              "type": "bytes32"
            },
            {
              "internalType": "address",
              "name": "_finalizer",
              "type": "address"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "finalizeRequest"
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_disputeId",
              "type": "bytes32"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "inequalityData",
          "outputs": [
            {
              "internalType": "enum IBondEscalationResolutionModule.InequalityStatus",
              "name": "_inequalityStatus",
              "type": "uint8"
            },
            {
              "internalType": "uint256",
              "name": "_time",
              "type": "uint256"
            }
          ]
        },
        {
          "inputs": [],
          "stateMutability": "view",
          "type": "function",
          "name": "moduleName",
          "outputs": [
            {
              "internalType": "string",
              "name": "_moduleName",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [],
          "stateMutability": "view",
          "type": "function",
          "name": "oracle",
          "outputs": [
            {
              "internalType": "address",
              "name": "_oracle",
              "type": "address"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_requestId",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "_disputeId",
              "type": "bytes32"
            },
            {
              "internalType": "uint256",
              "name": "_pledgeAmount",
              "type": "uint256"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "pledgeAgainstDispute"
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_requestId",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "_disputeId",
              "type": "bytes32"
            },
            {
              "internalType": "uint256",
              "name": "_pledgeAmount",
              "type": "uint256"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "pledgeForDispute"
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_disputeId",
              "type": "bytes32"
            },
            {
              "internalType": "address",
              "name": "_pledger",
              "type": "address"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "pledgesAgainstDispute",
          "outputs": [
            {
              "internalType": "uint256",
              "name": "_pledgesAgainstDispute",
              "type": "uint256"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_disputeId",
              "type": "bytes32"
            },
            {
              "internalType": "address",
              "name": "_pledger",
              "type": "address"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "pledgesForDispute",
          "outputs": [
            {
              "internalType": "uint256",
              "name": "_pledgesForDispute",
              "type": "uint256"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_requestId",
              "type": "bytes32"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "requestData",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "_requestData",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_disputeId",
              "type": "bytes32"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "resolveDispute"
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_requestId",
              "type": "bytes32"
            },
            {
              "internalType": "bytes",
              "name": "_data",
              "type": "bytes"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "setupRequest"
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "_disputeId",
              "type": "bytes32"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "startResolution"
        }
      ],
      "devdoc": {
        "kind": "dev",
        "methods": {
          "BASE()": {
            "returns": {
              "_base": "The base to avoid over/underflow"
            }
          },
          "claimPledge(bytes32,bytes32)": {
            "details": "Winning pledgers will claim their pledges along with their reward. In case of no resolution, users can      claim their pledges back. Losing pledgers will go to the rewards of the winning pledgers.",
            "params": {
              "_disputeId": "The ID of the dispute the user wants to claim pledges from.",
              "_requestId": "The ID of the request associated with dispute."
            }
          },
          "decodeRequestData(bytes32)": {
            "params": {
              "_requestId": "The ID of the request"
            },
            "returns": {
              "_params": "The struct containing the parameters for the request"
            }
          },
          "escalations(bytes32)": {
            "params": {
              "_disputeId": "The ID of the dispute."
            },
            "returns": {
              "_pledgesAgainst": "The amount of pledges against the dispute.",
              "_pledgesFor": "The amount of pledges in favor of the dispute.",
              "_resolution": "The current resolution of the dispute.",
              "_startTime": " The time at which the dispute was escalated."
            }
          },
          "finalizeRequest(bytes32,address)": {
            "params": {
              "_finalizer": "The address that initiated the finalization",
              "_requestId": "The ID of the request being finalized"
            }
          },
          "inequalityData(bytes32)": {
            "params": {
              "_disputeId": "The ID of the dispute."
            },
            "returns": {
              "_inequalityStatus": "The current status of the inequality.",
              "_time": "            The time at which the inequality was last updated."
            }
          },
          "moduleName()": {
            "returns": {
              "_moduleName": "The name of the module."
            }
          },
          "oracle()": {
            "returns": {
              "_oracle": "The address of the oracle"
            }
          },
          "pledgeAgainstDispute(bytes32,bytes32,uint256)": {
            "params": {
              "_disputeId": "The ID of the dispute to pledge against of.",
              "_pledgeAmount": "The amount of pledges to pledge.",
              "_requestId": "The ID of the request associated with the dispute."
            }
          },
          "pledgeForDispute(bytes32,bytes32,uint256)": {
            "params": {
              "_disputeId": "The ID of the dispute to pledge in favor of.",
              "_pledgeAmount": "The amount of pledges to pledge.",
              "_requestId": "The ID of the request associated with the dispute."
            }
          },
          "pledgesAgainstDispute(bytes32,address)": {
            "params": {
              "_disputeId": "The ID of the dispute.",
              "_pledger": "The address of the user."
            },
            "returns": {
              "_pledgesAgainstDispute": "The amount pledged by a user against a given dispute."
            }
          },
          "pledgesForDispute(bytes32,address)": {
            "params": {
              "_disputeId": "The ID of the dispute.",
              "_pledger": "The address of the user."
            },
            "returns": {
              "_pledgesForDispute": "The amount pledged by a user for a given dispute."
            }
          },
          "requestData(bytes32)": {
            "params": {
              "_requestId": "The id of the request"
            },
            "returns": {
              "_requestData": "The data of the request"
            }
          },
          "resolveDispute(bytes32)": {
            "params": {
              "_disputeId": "The ID of the dispute being resolved"
            }
          },
          "setupRequest(bytes32,bytes)": {
            "params": {
              "_data": "The data of the request",
              "_requestId": "The ID of the request"
            }
          },
          "startResolution(bytes32)": {
            "params": {
              "_disputeId": "The ID of the dispute"
            }
          }
        },
        "version": 1
      },
      "userdoc": {
        "kind": "user",
        "methods": {
          "BASE()": {
            "notice": "Base to avoid over/underflow"
          },
          "claimPledge(bytes32,bytes32)": {
            "notice": "Allows user to claim his corresponding pledges after a dispute is resolved."
          },
          "decodeRequestData(bytes32)": {
            "notice": "Returns the decoded data for a request"
          },
          "escalations(bytes32)": {
            "notice": "Returns the bond escalation progress and the balance of pledges for and against a given dispute."
          },
          "finalizeRequest(bytes32,address)": {
            "notice": "Finalizes a given request and executes any additional logic set by the chosen modules"
          },
          "inequalityData(bytes32)": {
            "notice": "Returns the inequality status and its last update time of a given dispute."
          },
          "moduleName()": {
            "notice": "Returns the name of the module."
          },
          "oracle()": {
            "notice": "Returns the address of the oracle"
          },
          "pledgeAgainstDispute(bytes32,bytes32,uint256)": {
            "notice": "Allows users to pledge against a given dispute. This means the user believes the proposed answer is         correct and therefore wants the disputer to lose his dispute."
          },
          "pledgeForDispute(bytes32,bytes32,uint256)": {
            "notice": "Allows users to pledge in favor of a given dispute. This means the user believes the proposed answer is         incorrect and therefore wants the disputer to win his dispute."
          },
          "pledgesAgainstDispute(bytes32,address)": {
            "notice": "Returns the amount pledged by a user against a given dispute."
          },
          "pledgesForDispute(bytes32,address)": {
            "notice": "Returns the amount pledged by a user for a given dispute."
          },
          "requestData(bytes32)": {
            "notice": "Returns the data of the request associated with the provided id"
          },
          "resolveDispute(bytes32)": {
            "notice": "Resolves a dispute"
          },
          "setupRequest(bytes32,bytes)": {
            "notice": "Stores the request data and runs module-specific hooks"
          },
          "startResolution(bytes32)": {
            "notice": "Starts the resolution process"
          }
        },
        "version": 1
      }
    },
    "settings": {
      "remappings": [
        "@defi-wonderland/=node_modules/@defi-wonderland/",
        "@openzeppelin/=node_modules/@openzeppelin/",
        "ds-test/=node_modules/ds-test/src/",
        "forge-std/=node_modules/forge-std/src/",
        "solmate/=node_modules/solmate/src/"
      ],
      "optimizer": {
        "enabled": true,
        "runs": 10000
      },
      "metadata": {
        "bytecodeHash": "ipfs"
      },
      "compilationTarget": {
        "solidity/interfaces/modules/resolution/IBondEscalationResolutionModule.sol": "IBondEscalationResolutionModule"
      },
      "libraries": {}
    },
    "sources": {
      "node_modules/@defi-wonderland/prophet-core-contracts/solidity/interfaces/IModule.sol": {
        "keccak256": "0x72c2f68e8c2b749d9ae745269c706b137a640d6bd6f65f966238b547d61e3a05",
        "urls": [
          "bzz-raw://4edb1aae7c4abd875d2da44a2dd83781c3c0a3d059edf2d1f2be1c44f865456f",
          "dweb:/ipfs/QmbEHy8tENha1ANEEZADpH4THmqC8aHyCXxFYPw4tS5mf4"
        ],
        "license": "MIT"
      },
      "node_modules/@defi-wonderland/prophet-core-contracts/solidity/interfaces/IOracle.sol": {
        "keccak256": "0x606262b4bb3b1447b1f6afef8a1b49088956b168a4b066f6f60da4712b95d3cf",
        "urls": [
          "bzz-raw://a763cdb6ba9f12a93e3d5238d6d3235c5c0c229df94793927f9d2abe00542823",
          "dweb:/ipfs/QmbAbfVyCiHvNvhHxc5r8tK5GUuVBATo15Ma5MirhZPtE6"
        ],
        "license": "MIT"
      },
      "node_modules/@defi-wonderland/prophet-core-contracts/solidity/interfaces/modules/dispute/IDisputeModule.sol": {
        "keccak256": "0x21707db43d55ba040893ef0ffefa7f9740c6e03b94d750637e6b2c047a16baa4",
        "urls": [
          "bzz-raw://ae582ca2fdd6fc82c650333066c95a917221282ad7ef15ea62fb4a31e4ed864d",
          "dweb:/ipfs/QmdxvkpNCK46uYv31TxAtxCiRPSoxbT4hrs94WQfR4ctTM"
        ],
        "license": "MIT"
      },
      "node_modules/@defi-wonderland/prophet-core-contracts/solidity/interfaces/modules/finality/IFinalityModule.sol": {
        "keccak256": "0xf6f465732ee119879e3317227f9cf6468055f4f98acdb4365f5b4eacda32948e",
        "urls": [
          "bzz-raw://82e1928a7bbc5bce95e1b83d917e1470c72a0bec7494f6f42471b21c0f2b641e",
          "dweb:/ipfs/QmSjaBsNhzCfQd5xwZa98LNYSZ1TqAqo6inRTGD31ua4L8"
        ],
        "license": "MIT"
      },
      "node_modules/@defi-wonderland/prophet-core-contracts/solidity/interfaces/modules/request/IRequestModule.sol": {
        "keccak256": "0xefa5dd3334a1676cca1c1860c66c16adb1e399917742476d15de8737b5cb0032",
        "urls": [
          "bzz-raw://03bcff0500f4054b5f71b0badd1779f8dfaa7fc74fc64788991438a1d9d2d14d",
          "dweb:/ipfs/QmdDjbGPgBfbbyT26Xtt9uBD7nYnhSK43fa9skfuBrfjCc"
        ],
        "license": "MIT"
      },
      "node_modules/@defi-wonderland/prophet-core-contracts/solidity/interfaces/modules/resolution/IResolutionModule.sol": {
        "keccak256": "0x36e75a87661b234be605a7455c88eaf4e7cbc9f5b4ea08133dd6d9d5af8d6bc6",
        "urls": [
          "bzz-raw://232536c4e8b2e9114035e57360976ff24931459fb22a026114d392d3e315ea67",
          "dweb:/ipfs/QmPYKU5RDGMqTZZzCCvVy7ssush4EQGgCCbzbeGpnejGno"
        ],
        "license": "MIT"
      },
      "node_modules/@defi-wonderland/prophet-core-contracts/solidity/interfaces/modules/response/IResponseModule.sol": {
        "keccak256": "0xd0610065a22a8d3323427d871a73b835e4d0dffb3afe4bb7e8bbee81b8b9ed1b",
        "urls": [
          "bzz-raw://8c72dcbd36f11e87fc21c922684e5524f0c83830dc945ac92614ea1cd770a1bf",
          "dweb:/ipfs/QmfYnQfSDd2jS9QEAdpmDF6wVXWqitQpmJsSeEHs1mtUQP"
        ],
        "license": "MIT"
      },
      "node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol": {
        "keccak256": "0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305",
        "urls": [
          "bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5",
          "dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"
        ],
        "license": "MIT"
      },
      "solidity/interfaces/extensions/IAccountingExtension.sol": {
        "keccak256": "0x31b990f92e67ce2b480ca97fcc54d44dddaa82fa60259439d8556bfbb7963d0e",
        "urls": [
          "bzz-raw://23e6ef2026bf40ef58f625b7377c70e4988902ae14df333e9be35129a57a87f0",
          "dweb:/ipfs/QmW1RfXvujkVHqXazdeTKshba9rX6kzSCRfZKBwLi38Ue5"
        ],
        "license": "MIT"
      },
      "solidity/interfaces/extensions/IBondEscalationAccounting.sol": {
        "keccak256": "0xbb8a09dc8120dce27ef6365377acc387e0ef230969b993590cc81aaa096e36d0",
        "urls": [
          "bzz-raw://31c592b9527e6be74502d7ec135a77bb2802662c75df3a05f916fa050fe34747",
          "dweb:/ipfs/QmQBj39ptDdwMzhjgMzkJHNWbL7Ek41YNhMZaKDtKBG7oc"
        ],
        "license": "AGPL-3.0-only"
      },
      "solidity/interfaces/modules/dispute/IBondEscalationModule.sol": {
        "keccak256": "0x092ef0770e8587b1828891addecd270a0d49de18df36093480e006842dd3ef20",
        "urls": [
          "bzz-raw://93939711123171337804d8acfe5aab8c1924b997cede75d16e13e7e61bf62f08",
          "dweb:/ipfs/QmQp8T8FXe5aJ6oJdUFRnzAoKarmmRihEF9aZiJWdaBwdt"
        ],
        "license": "AGPL-3.0-only"
      },
      "solidity/interfaces/modules/resolution/IBondEscalationResolutionModule.sol": {
        "keccak256": "0x238d8d6cb8453dbce0904f461f3e11668b2d204c92bac5000bbb84d92b340e6a",
        "urls": [
          "bzz-raw://9f1b326dc0027d825b9a2e00b3531569f8b8371c35696688d96d45efcb6dfd35",
          "dweb:/ipfs/QmR6TpT8KYpLoojwzfJRfHryPJ6rAWzagQQVSvQe1mbXaT"
        ],
        "license": "MIT"
      }
    },
    "version": 1
  },
  "ast": {
    "absolutePath": "solidity/interfaces/modules/resolution/IBondEscalationResolutionModule.sol",
    "id": 43718,
    "exportedSymbols": {
      "IBondEscalationAccounting": [
        42784
      ],
      "IBondEscalationResolutionModule": [
        43717
      ],
      "IERC20": [
        2822
      ],
      "IResolutionModule": [
        2399
      ]
    },
    "nodeType": "SourceUnit",
    "src": "32:13910:72",
    "nodes": [
      {
        "id": 43483,
        "nodeType": "PragmaDirective",
        "src": "32:24:72",
        "nodes": [],
        "literals": [
          "solidity",
          "^",
          "0.8",
          ".19"
        ]
      },
      {
        "id": 43485,
        "nodeType": "ImportDirective",
        "src": "58:137:72",
        "nodes": [],
        "absolutePath": "node_modules/@defi-wonderland/prophet-core-contracts/solidity/interfaces/modules/resolution/IResolutionModule.sol",
        "file": "@defi-wonderland/prophet-core-contracts/solidity/interfaces/modules/resolution/IResolutionModule.sol",
        "nameLocation": "-1:-1:-1",
        "scope": 43718,
        "sourceUnit": 2400,
        "symbolAliases": [
          {
            "foreign": {
              "id": 43484,
              "name": "IResolutionModule",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "referencedDeclaration": 2399,
              "src": "66:17:72",
              "typeDescriptions": {}
            },
            "nameLocation": "-1:-1:-1"
          }
        ],
        "unitAlias": ""
      },
      {
        "id": 43487,
        "nodeType": "ImportDirective",
        "src": "196:70:72",
        "nodes": [],
        "absolutePath": "node_modules/@openzeppelin/contracts/token/ERC20/IERC20.sol",
        "file": "@openzeppelin/contracts/token/ERC20/IERC20.sol",
        "nameLocation": "-1:-1:-1",
        "scope": 43718,
        "sourceUnit": 2823,
        "symbolAliases": [
          {
            "foreign": {
              "id": 43486,
              "name": "IERC20",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "referencedDeclaration": 2822,
              "src": "204:6:72",
              "typeDescriptions": {}
            },
            "nameLocation": "-1:-1:-1"
          }
        ],
        "unitAlias": ""
      },
      {
        "id": 43489,
        "nodeType": "ImportDirective",
        "src": "267:89:72",
        "nodes": [],
        "absolutePath": "solidity/interfaces/extensions/IBondEscalationAccounting.sol",
        "file": "../../extensions/IBondEscalationAccounting.sol",
        "nameLocation": "-1:-1:-1",
        "scope": 43718,
        "sourceUnit": 42785,
        "symbolAliases": [
          {
            "foreign": {
              "id": 43488,
              "name": "IBondEscalationAccounting",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "referencedDeclaration": 42784,
              "src": "275:25:72",
              "typeDescriptions": {}
            },
            "nameLocation": "-1:-1:-1"
          }
        ],
        "unitAlias": ""
      },
      {
        "id": 43717,
        "nodeType": "ContractDefinition",
        "src": "649:13292:72",
        "nodes": [
          {
            "id": 43499,
            "nodeType": "EventDefinition",
            "src": "1095:79:72",
            "nodes": [],
            "anonymous": false,
            "documentation": {
              "id": 43493,
              "nodeType": "StructuredDocumentation",
              "src": "889:203:72",
              "text": " @notice Emitted when a dispute is escalated.\n @param _disputeId The ID of the dispute that was escalated.\n @param _requestId The ID of the request associated with the dispute."
            },
            "eventSelector": "7254cc6b4800558f14c86ca68de039141a8c9b844cdde07ccfd8d1ad32add0d4",
            "name": "DisputeEscalated",
            "nameLocation": "1101:16:72",
            "parameters": {
              "id": 43498,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43495,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "_disputeId",
                  "nameLocation": "1134:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43499,
                  "src": "1118:26:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43494,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1118:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43497,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "_requestId",
                  "nameLocation": "1162:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43499,
                  "src": "1146:26:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43496,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1146:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1117:56:72"
            }
          },
          {
            "id": 43510,
            "nodeType": "EventDefinition",
            "src": "1547:138:72",
            "nodes": [],
            "anonymous": false,
            "documentation": {
              "id": 43500,
              "nodeType": "StructuredDocumentation",
              "src": "1178:366:72",
              "text": " @notice Emitted when a user pledges in favor of a dispute.\n @param _pledger       The address of the user that pledged.\n @param _requestId     The ID of the request associated with the dispute.\n @param _disputeId     The ID of the dispute the user pledged in favor of.\n @param _pledgedAmount The amount of tokens the user pledged."
            },
            "eventSelector": "a9af81e4f33c7084dbc899560ab7e5a7208985341f876e4fd141e53656948e5d",
            "name": "PledgedForDispute",
            "nameLocation": "1553:17:72",
            "parameters": {
              "id": 43509,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43502,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "_pledger",
                  "nameLocation": "1592:8:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43510,
                  "src": "1576:24:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 43501,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1576:7:72",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43504,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "_requestId",
                  "nameLocation": "1618:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43510,
                  "src": "1602:26:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43503,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1602:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43506,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "_disputeId",
                  "nameLocation": "1646:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43510,
                  "src": "1630:26:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43505,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1630:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43508,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "_pledgedAmount",
                  "nameLocation": "1666:14:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43510,
                  "src": "1658:22:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 43507,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1658:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1570:114:72"
            }
          },
          {
            "id": 43521,
            "nodeType": "EventDefinition",
            "src": "2050:142:72",
            "nodes": [],
            "anonymous": false,
            "documentation": {
              "id": 43511,
              "nodeType": "StructuredDocumentation",
              "src": "1689:358:72",
              "text": " @notice Emitted when a user pledges against a dispute.\n @param _pledger       The address of the user that pledged.\n @param _requestId     The ID of the request associated with the dispute.\n @param _disputeId     The ID of the dispute the user pledged against.\n @param _pledgedAmount The amount of tokens the user pledged."
            },
            "eventSelector": "12fb8ac1b6aec408dcd02480fd2989dc125647ee9f5de9bc4cb5d323a334ec90",
            "name": "PledgedAgainstDispute",
            "nameLocation": "2056:21:72",
            "parameters": {
              "id": 43520,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43513,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "_pledger",
                  "nameLocation": "2099:8:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43521,
                  "src": "2083:24:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 43512,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2083:7:72",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43515,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "_requestId",
                  "nameLocation": "2125:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43521,
                  "src": "2109:26:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43514,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2109:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43517,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "_disputeId",
                  "nameLocation": "2153:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43521,
                  "src": "2137:26:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43516,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2137:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43519,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "_pledgedAmount",
                  "nameLocation": "2173:14:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43521,
                  "src": "2165:22:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 43518,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2165:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2077:114:72"
            }
          },
          {
            "id": 43535,
            "nodeType": "EventDefinition",
            "src": "2658:177:72",
            "nodes": [],
            "anonymous": false,
            "documentation": {
              "id": 43522,
              "nodeType": "StructuredDocumentation",
              "src": "2196:459:72",
              "text": " @notice Emitted when a user claims his pledges after a successful dispute.\n @param _requestId      The ID of the request associated with the dispute.\n @param _disputeId      The ID of the dispute the user supported.\n @param _pledger        The address of the user that claimed his pledges.\n @param _token          The token the user claimed his pledges in.\n @param _pledgeReleased The amount of tokens the user claimed."
            },
            "eventSelector": "9f1880abedc93d28d7617e71c5fdb584b015a30266e3b627a7600f2049600e49",
            "name": "PledgeClaimedDisputerWon",
            "nameLocation": "2664:24:72",
            "parameters": {
              "id": 43534,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43524,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "_requestId",
                  "nameLocation": "2710:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43535,
                  "src": "2694:26:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43523,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2694:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43526,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "_disputeId",
                  "nameLocation": "2742:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43535,
                  "src": "2726:26:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43525,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2726:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43528,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "_pledger",
                  "nameLocation": "2774:8:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43535,
                  "src": "2758:24:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 43527,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2758:7:72",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43531,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "_token",
                  "nameLocation": "2795:6:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43535,
                  "src": "2788:13:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_IERC20_$2822",
                    "typeString": "contract IERC20"
                  },
                  "typeName": {
                    "id": 43530,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 43529,
                      "name": "IERC20",
                      "nameLocations": [
                        "2788:6:72"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 2822,
                      "src": "2788:6:72"
                    },
                    "referencedDeclaration": 2822,
                    "src": "2788:6:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_IERC20_$2822",
                      "typeString": "contract IERC20"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43533,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "_pledgeReleased",
                  "nameLocation": "2815:15:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43535,
                  "src": "2807:23:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 43532,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2807:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2688:146:72"
            }
          },
          {
            "id": 43549,
            "nodeType": "EventDefinition",
            "src": "3293:178:72",
            "nodes": [],
            "anonymous": false,
            "documentation": {
              "id": 43536,
              "nodeType": "StructuredDocumentation",
              "src": "2839:451:72",
              "text": " @notice Emitted when a user claims his pledges after a lost dispute.\n @param _requestId      The ID of the request associated with the dispute.\n @param _disputeId      The ID of the dispute the user opposed.\n @param _pledger        The address of the user that claimed his pledges.\n @param _token          The token the user claimed his pledges in.\n @param _pledgeReleased The amount of tokens the user claimed."
            },
            "eventSelector": "463c38d924bd1031eca8fa19d48beb9daf29e22ec2a6a86427d042853ff07f79",
            "name": "PledgeClaimedDisputerLost",
            "nameLocation": "3299:25:72",
            "parameters": {
              "id": 43548,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43538,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "_requestId",
                  "nameLocation": "3346:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43549,
                  "src": "3330:26:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43537,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3330:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43540,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "_disputeId",
                  "nameLocation": "3378:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43549,
                  "src": "3362:26:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43539,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3362:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43542,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "_pledger",
                  "nameLocation": "3410:8:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43549,
                  "src": "3394:24:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 43541,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "3394:7:72",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43545,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "_token",
                  "nameLocation": "3431:6:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43549,
                  "src": "3424:13:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_IERC20_$2822",
                    "typeString": "contract IERC20"
                  },
                  "typeName": {
                    "id": 43544,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 43543,
                      "name": "IERC20",
                      "nameLocations": [
                        "3424:6:72"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 2822,
                      "src": "3424:6:72"
                    },
                    "referencedDeclaration": 2822,
                    "src": "3424:6:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_IERC20_$2822",
                      "typeString": "contract IERC20"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43547,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "_pledgeReleased",
                  "nameLocation": "3451:15:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43549,
                  "src": "3443:23:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 43546,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3443:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3324:146:72"
            }
          },
          {
            "id": 43563,
            "nodeType": "EventDefinition",
            "src": "3956:178:72",
            "nodes": [],
            "anonymous": false,
            "documentation": {
              "id": 43550,
              "nodeType": "StructuredDocumentation",
              "src": "3475:478:72",
              "text": " @notice Emitted when a user claims his pledges after a dispute with no resolution.\n @param _requestId      The ID of the request associated with the dispute.\n @param _disputeId      The ID of the dispute the user supported or opposed.\n @param _pledger        The address of the user that claimed his pledges.\n @param _token          The token the user claimed his pledges in.\n @param _pledgeReleased The amount of tokens the user claimed."
            },
            "eventSelector": "e4e6a266498257f8c68a2fd6cc5fd56d8c0774cfec41a36972c4c4cf7ad173dd",
            "name": "PledgeClaimedNoResolution",
            "nameLocation": "3962:25:72",
            "parameters": {
              "id": 43562,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43552,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "_requestId",
                  "nameLocation": "4009:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43563,
                  "src": "3993:26:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43551,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3993:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43554,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "_disputeId",
                  "nameLocation": "4041:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43563,
                  "src": "4025:26:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43553,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "4025:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43556,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "_pledger",
                  "nameLocation": "4073:8:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43563,
                  "src": "4057:24:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 43555,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "4057:7:72",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43559,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "_token",
                  "nameLocation": "4094:6:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43563,
                  "src": "4087:13:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_IERC20_$2822",
                    "typeString": "contract IERC20"
                  },
                  "typeName": {
                    "id": 43558,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 43557,
                      "name": "IERC20",
                      "nameLocations": [
                        "4087:6:72"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 2822,
                      "src": "4087:6:72"
                    },
                    "referencedDeclaration": 2822,
                    "src": "4087:6:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_IERC20_$2822",
                      "typeString": "contract IERC20"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43561,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "_pledgeReleased",
                  "nameLocation": "4114:15:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43563,
                  "src": "4106:23:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 43560,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "4106:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3987:146:72"
            }
          },
          {
            "id": 43566,
            "nodeType": "ErrorDefinition",
            "src": "4416:55:72",
            "nodes": [],
            "documentation": {
              "id": 43564,
              "nodeType": "StructuredDocumentation",
              "src": "4311:102:72",
              "text": " @notice Thrown when the user tries to resolve a dispute that has already been resolved."
            },
            "errorSelector": "c9fc24e2",
            "name": "BondEscalationResolutionModule_AlreadyResolved",
            "nameLocation": "4422:46:72",
            "parameters": {
              "id": 43565,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "4468:2:72"
            }
          },
          {
            "id": 43569,
            "nodeType": "ErrorDefinition",
            "src": "4583:51:72",
            "nodes": [],
            "documentation": {
              "id": 43567,
              "nodeType": "StructuredDocumentation",
              "src": "4475:105:72",
              "text": " @notice Thrown when trying to claim a pledge for a dispute that has not been resolved yet."
            },
            "errorSelector": "566c1444",
            "name": "BondEscalationResolutionModule_NotResolved",
            "nameLocation": "4589:42:72",
            "parameters": {
              "id": 43568,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "4631:2:72"
            }
          },
          {
            "id": 43572,
            "nodeType": "ErrorDefinition",
            "src": "4739:52:72",
            "nodes": [],
            "documentation": {
              "id": 43570,
              "nodeType": "StructuredDocumentation",
              "src": "4638:98:72",
              "text": " @notice Thrown when the user tries to pledge for or resolve a non-existent dispute."
            },
            "errorSelector": "66f284ba",
            "name": "BondEscalationResolutionModule_NotEscalated",
            "nameLocation": "4745:43:72",
            "parameters": {
              "id": 43571,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "4788:2:72"
            }
          },
          {
            "id": 43575,
            "nodeType": "ErrorDefinition",
            "src": "4883:57:72",
            "nodes": [],
            "documentation": {
              "id": 43573,
              "nodeType": "StructuredDocumentation",
              "src": "4795:85:72",
              "text": " @notice Thrown when trying to pledge after the pledging phase is over."
            },
            "errorSelector": "2f4b3b76",
            "name": "BondEscalationResolutionModule_PledgingPhaseOver",
            "nameLocation": "4889:48:72",
            "parameters": {
              "id": 43574,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "4937:2:72"
            }
          },
          {
            "id": 43578,
            "nodeType": "ErrorDefinition",
            "src": "5044:60:72",
            "nodes": [],
            "documentation": {
              "id": 43576,
              "nodeType": "StructuredDocumentation",
              "src": "4944:97:72",
              "text": " @notice Thrown when trying to resolve a dispute before the pledging phase is over."
            },
            "errorSelector": "93d9e9c3",
            "name": "BondEscalationResolutionModule_PledgingPhaseNotOver",
            "nameLocation": "5050:51:72",
            "parameters": {
              "id": 43577,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "5101:2:72"
            }
          },
          {
            "id": 43581,
            "nodeType": "ErrorDefinition",
            "src": "5201:54:72",
            "nodes": [],
            "documentation": {
              "id": 43579,
              "nodeType": "StructuredDocumentation",
              "src": "5108:90:72",
              "text": " @notice Thrown when trying to pledge after the inequality timer has passed."
            },
            "errorSelector": "cafa63c5",
            "name": "BondEscalationResolutionModule_MustBeResolved",
            "nameLocation": "5207:45:72",
            "parameters": {
              "id": 43580,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "5252:2:72"
            }
          },
          {
            "id": 43584,
            "nodeType": "ErrorDefinition",
            "src": "5369:61:72",
            "nodes": [],
            "documentation": {
              "id": 43582,
              "nodeType": "StructuredDocumentation",
              "src": "5259:107:72",
              "text": " @notice Thrown when trying to pledge for a dispute during the opposing side's pledging turn."
            },
            "errorSelector": "df00e0d2",
            "name": "BondEscalationResolutionModule_AgainstTurnToEqualize",
            "nameLocation": "5375:52:72",
            "parameters": {
              "id": 43583,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "5427:2:72"
            }
          },
          {
            "id": 43587,
            "nodeType": "ErrorDefinition",
            "src": "5550:57:72",
            "nodes": [],
            "documentation": {
              "id": 43585,
              "nodeType": "StructuredDocumentation",
              "src": "5434:113:72",
              "text": " @notice Thrown when trying to pledge against a dispute during the supporting side's pledging turn."
            },
            "errorSelector": "e8888e8c",
            "name": "BondEscalationResolutionModule_ForTurnToEqualize",
            "nameLocation": "5556:48:72",
            "parameters": {
              "id": 43586,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "5604:2:72"
            }
          },
          {
            "id": 43591,
            "nodeType": "EnumDefinition",
            "src": "7081:91:72",
            "nodes": [],
            "canonicalName": "IBondEscalationResolutionModule.InequalityStatus",
            "members": [
              {
                "id": 43588,
                "name": "Equalized",
                "nameLocation": "7109:9:72",
                "nodeType": "EnumValue",
                "src": "7109:9:72"
              },
              {
                "id": 43589,
                "name": "ForTurnToEqualize",
                "nameLocation": "7124:17:72",
                "nodeType": "EnumValue",
                "src": "7124:17:72"
              },
              {
                "id": 43590,
                "name": "AgainstTurnToEqualize",
                "nameLocation": "7147:21:72",
                "nodeType": "EnumValue",
                "src": "7147:21:72"
              }
            ],
            "name": "InequalityStatus",
            "nameLocation": "7086:16:72"
          },
          {
            "id": 43596,
            "nodeType": "EnumDefinition",
            "src": "7478:89:72",
            "nodes": [],
            "canonicalName": "IBondEscalationResolutionModule.Resolution",
            "members": [
              {
                "id": 43592,
                "name": "Unresolved",
                "nameLocation": "7500:10:72",
                "nodeType": "EnumValue",
                "src": "7500:10:72"
              },
              {
                "id": 43593,
                "name": "DisputerWon",
                "nameLocation": "7516:11:72",
                "nodeType": "EnumValue",
                "src": "7516:11:72"
              },
              {
                "id": 43594,
                "name": "DisputerLost",
                "nameLocation": "7533:12:72",
                "nodeType": "EnumValue",
                "src": "7533:12:72"
              },
              {
                "id": 43595,
                "name": "NoResolution",
                "nameLocation": "7551:12:72",
                "nodeType": "EnumValue",
                "src": "7551:12:72"
              }
            ],
            "name": "Resolution",
            "nameLocation": "7483:10:72"
          },
          {
            "id": 43611,
            "nodeType": "StructDefinition",
            "src": "8585:226:72",
            "nodes": [],
            "canonicalName": "IBondEscalationResolutionModule.RequestParameters",
            "members": [
              {
                "constant": false,
                "id": 43599,
                "mutability": "mutable",
                "name": "accountingExtension",
                "nameLocation": "8642:19:72",
                "nodeType": "VariableDeclaration",
                "scope": 43611,
                "src": "8616:45:72",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_contract$_IBondEscalationAccounting_$42784",
                  "typeString": "contract IBondEscalationAccounting"
                },
                "typeName": {
                  "id": 43598,
                  "nodeType": "UserDefinedTypeName",
                  "pathNode": {
                    "id": 43597,
                    "name": "IBondEscalationAccounting",
                    "nameLocations": [
                      "8616:25:72"
                    ],
                    "nodeType": "IdentifierPath",
                    "referencedDeclaration": 42784,
                    "src": "8616:25:72"
                  },
                  "referencedDeclaration": 42784,
                  "src": "8616:25:72",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_IBondEscalationAccounting_$42784",
                    "typeString": "contract IBondEscalationAccounting"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 43602,
                "mutability": "mutable",
                "name": "bondToken",
                "nameLocation": "8674:9:72",
                "nodeType": "VariableDeclaration",
                "scope": 43611,
                "src": "8667:16:72",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_contract$_IERC20_$2822",
                  "typeString": "contract IERC20"
                },
                "typeName": {
                  "id": 43601,
                  "nodeType": "UserDefinedTypeName",
                  "pathNode": {
                    "id": 43600,
                    "name": "IERC20",
                    "nameLocations": [
                      "8667:6:72"
                    ],
                    "nodeType": "IdentifierPath",
                    "referencedDeclaration": 2822,
                    "src": "8667:6:72"
                  },
                  "referencedDeclaration": 2822,
                  "src": "8667:6:72",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_IERC20_$2822",
                    "typeString": "contract IERC20"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 43604,
                "mutability": "mutable",
                "name": "percentageDiff",
                "nameLocation": "8697:14:72",
                "nodeType": "VariableDeclaration",
                "scope": 43611,
                "src": "8689:22:72",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 43603,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "8689:7:72",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 43606,
                "mutability": "mutable",
                "name": "pledgeThreshold",
                "nameLocation": "8725:15:72",
                "nodeType": "VariableDeclaration",
                "scope": 43611,
                "src": "8717:23:72",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 43605,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "8717:7:72",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 43608,
                "mutability": "mutable",
                "name": "timeUntilDeadline",
                "nameLocation": "8754:17:72",
                "nodeType": "VariableDeclaration",
                "scope": 43611,
                "src": "8746:25:72",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 43607,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "8746:7:72",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 43610,
                "mutability": "mutable",
                "name": "timeToBreakInequality",
                "nameLocation": "8785:21:72",
                "nodeType": "VariableDeclaration",
                "scope": 43611,
                "src": "8777:29:72",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 43609,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "8777:7:72",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "visibility": "internal"
              }
            ],
            "name": "RequestParameters",
            "nameLocation": "8592:17:72",
            "scope": 43717,
            "visibility": "public"
          },
          {
            "id": 43617,
            "nodeType": "StructDefinition",
            "src": "9061:84:72",
            "nodes": [],
            "canonicalName": "IBondEscalationResolutionModule.InequalityData",
            "members": [
              {
                "constant": false,
                "id": 43614,
                "mutability": "mutable",
                "name": "inequalityStatus",
                "nameLocation": "9106:16:72",
                "nodeType": "VariableDeclaration",
                "scope": 43617,
                "src": "9089:33:72",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_enum$_InequalityStatus_$43591",
                  "typeString": "enum IBondEscalationResolutionModule.InequalityStatus"
                },
                "typeName": {
                  "id": 43613,
                  "nodeType": "UserDefinedTypeName",
                  "pathNode": {
                    "id": 43612,
                    "name": "InequalityStatus",
                    "nameLocations": [
                      "9089:16:72"
                    ],
                    "nodeType": "IdentifierPath",
                    "referencedDeclaration": 43591,
                    "src": "9089:16:72"
                  },
                  "referencedDeclaration": 43591,
                  "src": "9089:16:72",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_InequalityStatus_$43591",
                    "typeString": "enum IBondEscalationResolutionModule.InequalityStatus"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 43616,
                "mutability": "mutable",
                "name": "time",
                "nameLocation": "9136:4:72",
                "nodeType": "VariableDeclaration",
                "scope": 43617,
                "src": "9128:12:72",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 43615,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "9128:7:72",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "visibility": "internal"
              }
            ],
            "name": "InequalityData",
            "nameLocation": "9068:14:72",
            "scope": 43717,
            "visibility": "public"
          },
          {
            "id": 43627,
            "nodeType": "StructDefinition",
            "src": "9554:125:72",
            "nodes": [],
            "canonicalName": "IBondEscalationResolutionModule.Escalation",
            "members": [
              {
                "constant": false,
                "id": 43620,
                "mutability": "mutable",
                "name": "resolution",
                "nameLocation": "9589:10:72",
                "nodeType": "VariableDeclaration",
                "scope": 43627,
                "src": "9578:21:72",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_enum$_Resolution_$43596",
                  "typeString": "enum IBondEscalationResolutionModule.Resolution"
                },
                "typeName": {
                  "id": 43619,
                  "nodeType": "UserDefinedTypeName",
                  "pathNode": {
                    "id": 43618,
                    "name": "Resolution",
                    "nameLocations": [
                      "9578:10:72"
                    ],
                    "nodeType": "IdentifierPath",
                    "referencedDeclaration": 43596,
                    "src": "9578:10:72"
                  },
                  "referencedDeclaration": 43596,
                  "src": "9578:10:72",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_Resolution_$43596",
                    "typeString": "enum IBondEscalationResolutionModule.Resolution"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 43622,
                "mutability": "mutable",
                "name": "startTime",
                "nameLocation": "9613:9:72",
                "nodeType": "VariableDeclaration",
                "scope": 43627,
                "src": "9605:17:72",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint128",
                  "typeString": "uint128"
                },
                "typeName": {
                  "id": 43621,
                  "name": "uint128",
                  "nodeType": "ElementaryTypeName",
                  "src": "9605:7:72",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint128",
                    "typeString": "uint128"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 43624,
                "mutability": "mutable",
                "name": "pledgesFor",
                "nameLocation": "9636:10:72",
                "nodeType": "VariableDeclaration",
                "scope": 43627,
                "src": "9628:18:72",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 43623,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "9628:7:72",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 43626,
                "mutability": "mutable",
                "name": "pledgesAgainst",
                "nameLocation": "9660:14:72",
                "nodeType": "VariableDeclaration",
                "scope": 43627,
                "src": "9652:22:72",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 43625,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "9652:7:72",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "visibility": "internal"
              }
            ],
            "name": "Escalation",
            "nameLocation": "9561:10:72",
            "scope": 43717,
            "visibility": "public"
          },
          {
            "id": 43633,
            "nodeType": "FunctionDefinition",
            "src": "9970:54:72",
            "nodes": [],
            "documentation": {
              "id": 43628,
              "nodeType": "StructuredDocumentation",
              "src": "9859:108:72",
              "text": " @notice Base to avoid over/underflow\n @return _base The base to avoid over/underflow"
            },
            "functionSelector": "ec342ad0",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "BASE",
            "nameLocation": "9979:4:72",
            "parameters": {
              "id": 43629,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "9983:2:72"
            },
            "returnParameters": {
              "id": 43632,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43631,
                  "mutability": "mutable",
                  "name": "_base",
                  "nameLocation": "10017:5:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43633,
                  "src": "10009:13:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 43630,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "10009:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "10008:15:72"
            },
            "scope": 43717,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 43648,
            "nodeType": "FunctionDefinition",
            "src": "10484:166:72",
            "nodes": [],
            "documentation": {
              "id": 43634,
              "nodeType": "StructuredDocumentation",
              "src": "10028:453:72",
              "text": " @notice Returns the bond escalation progress and the balance of pledges for and against a given dispute.\n @param _disputeId The ID of the dispute.\n @return _resolution The current resolution of the dispute.\n @return _startTime  The time at which the dispute was escalated.\n @return _pledgesFor The amount of pledges in favor of the dispute.\n @return _pledgesAgainst The amount of pledges against the dispute."
            },
            "functionSelector": "4cf3ad6a",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "escalations",
            "nameLocation": "10493:11:72",
            "parameters": {
              "id": 43637,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43636,
                  "mutability": "mutable",
                  "name": "_disputeId",
                  "nameLocation": "10513:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43648,
                  "src": "10505:18:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43635,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "10505:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "10504:20:72"
            },
            "returnParameters": {
              "id": 43647,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43640,
                  "mutability": "mutable",
                  "name": "_resolution",
                  "nameLocation": "10571:11:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43648,
                  "src": "10560:22:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_Resolution_$43596",
                    "typeString": "enum IBondEscalationResolutionModule.Resolution"
                  },
                  "typeName": {
                    "id": 43639,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 43638,
                      "name": "Resolution",
                      "nameLocations": [
                        "10560:10:72"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 43596,
                      "src": "10560:10:72"
                    },
                    "referencedDeclaration": 43596,
                    "src": "10560:10:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_Resolution_$43596",
                      "typeString": "enum IBondEscalationResolutionModule.Resolution"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43642,
                  "mutability": "mutable",
                  "name": "_startTime",
                  "nameLocation": "10592:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43648,
                  "src": "10584:18:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint128",
                    "typeString": "uint128"
                  },
                  "typeName": {
                    "id": 43641,
                    "name": "uint128",
                    "nodeType": "ElementaryTypeName",
                    "src": "10584:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint128",
                      "typeString": "uint128"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43644,
                  "mutability": "mutable",
                  "name": "_pledgesFor",
                  "nameLocation": "10612:11:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43648,
                  "src": "10604:19:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 43643,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "10604:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43646,
                  "mutability": "mutable",
                  "name": "_pledgesAgainst",
                  "nameLocation": "10633:15:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43648,
                  "src": "10625:23:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 43645,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "10625:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "10559:90:72"
            },
            "scope": 43717,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 43659,
            "nodeType": "FunctionDefinition",
            "src": "10961:118:72",
            "nodes": [],
            "documentation": {
              "id": 43649,
              "nodeType": "StructuredDocumentation",
              "src": "10654:304:72",
              "text": " @notice Returns the inequality status and its last update time of a given dispute.\n @param _disputeId The ID of the dispute.\n @return _inequalityStatus The current status of the inequality.\n @return _time             The time at which the inequality was last updated."
            },
            "functionSelector": "f1c2fb31",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "inequalityData",
            "nameLocation": "10970:14:72",
            "parameters": {
              "id": 43652,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43651,
                  "mutability": "mutable",
                  "name": "_disputeId",
                  "nameLocation": "10993:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43659,
                  "src": "10985:18:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43650,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "10985:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "10984:20:72"
            },
            "returnParameters": {
              "id": 43658,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43655,
                  "mutability": "mutable",
                  "name": "_inequalityStatus",
                  "nameLocation": "11045:17:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43659,
                  "src": "11028:34:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_InequalityStatus_$43591",
                    "typeString": "enum IBondEscalationResolutionModule.InequalityStatus"
                  },
                  "typeName": {
                    "id": 43654,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 43653,
                      "name": "InequalityStatus",
                      "nameLocations": [
                        "11028:16:72"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 43591,
                      "src": "11028:16:72"
                    },
                    "referencedDeclaration": 43591,
                    "src": "11028:16:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_InequalityStatus_$43591",
                      "typeString": "enum IBondEscalationResolutionModule.InequalityStatus"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43657,
                  "mutability": "mutable",
                  "name": "_time",
                  "nameLocation": "11072:5:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43659,
                  "src": "11064:13:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 43656,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "11064:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11027:51:72"
            },
            "scope": 43717,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 43669,
            "nodeType": "FunctionDefinition",
            "src": "11352:116:72",
            "nodes": [],
            "documentation": {
              "id": 43660,
              "nodeType": "StructuredDocumentation",
              "src": "11083:266:72",
              "text": " @notice Returns the amount pledged by a user for a given dispute.\n @param _disputeId The ID of the dispute.\n @param _pledger   The address of the user.\n @return _pledgesForDispute The amount pledged by a user for a given dispute."
            },
            "functionSelector": "076404dc",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "pledgesForDispute",
            "nameLocation": "11361:17:72",
            "parameters": {
              "id": 43665,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43662,
                  "mutability": "mutable",
                  "name": "_disputeId",
                  "nameLocation": "11387:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43669,
                  "src": "11379:18:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43661,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "11379:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43664,
                  "mutability": "mutable",
                  "name": "_pledger",
                  "nameLocation": "11407:8:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43669,
                  "src": "11399:16:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 43663,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "11399:7:72",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11378:38:72"
            },
            "returnParameters": {
              "id": 43668,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43667,
                  "mutability": "mutable",
                  "name": "_pledgesForDispute",
                  "nameLocation": "11448:18:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43669,
                  "src": "11440:26:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 43666,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "11440:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11439:28:72"
            },
            "scope": 43717,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 43679,
            "nodeType": "FunctionDefinition",
            "src": "11753:136:72",
            "nodes": [],
            "documentation": {
              "id": 43670,
              "nodeType": "StructuredDocumentation",
              "src": "11472:278:72",
              "text": " @notice Returns the amount pledged by a user against a given dispute.\n @param _disputeId The ID of the dispute.\n @param _pledger   The address of the user.\n @return _pledgesAgainstDispute The amount pledged by a user against a given dispute."
            },
            "functionSelector": "ef940cef",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "pledgesAgainstDispute",
            "nameLocation": "11762:21:72",
            "parameters": {
              "id": 43675,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43672,
                  "mutability": "mutable",
                  "name": "_disputeId",
                  "nameLocation": "11797:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43679,
                  "src": "11789:18:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43671,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "11789:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43674,
                  "mutability": "mutable",
                  "name": "_pledger",
                  "nameLocation": "11821:8:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43679,
                  "src": "11813:16:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 43673,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "11813:7:72",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11783:50:72"
            },
            "returnParameters": {
              "id": 43678,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43677,
                  "mutability": "mutable",
                  "name": "_pledgesAgainstDispute",
                  "nameLocation": "11865:22:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43679,
                  "src": "11857:30:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 43676,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "11857:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11856:32:72"
            },
            "scope": 43717,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 43688,
            "nodeType": "FunctionDefinition",
            "src": "12076:104:72",
            "nodes": [],
            "documentation": {
              "id": 43680,
              "nodeType": "StructuredDocumentation",
              "src": "11893:180:72",
              "text": " @notice Returns the decoded data for a request\n @param _requestId The ID of the request\n @return _params The struct containing the parameters for the request"
            },
            "functionSelector": "4d610a46",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "decodeRequestData",
            "nameLocation": "12085:17:72",
            "parameters": {
              "id": 43683,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43682,
                  "mutability": "mutable",
                  "name": "_requestId",
                  "nameLocation": "12111:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43688,
                  "src": "12103:18:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43681,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "12103:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12102:20:72"
            },
            "returnParameters": {
              "id": 43687,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43686,
                  "mutability": "mutable",
                  "name": "_params",
                  "nameLocation": "12171:7:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43688,
                  "src": "12146:32:72",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RequestParameters_$43611_memory_ptr",
                    "typeString": "struct IBondEscalationResolutionModule.RequestParameters"
                  },
                  "typeName": {
                    "id": 43685,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 43684,
                      "name": "RequestParameters",
                      "nameLocations": [
                        "12146:17:72"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 43611,
                      "src": "12146:17:72"
                    },
                    "referencedDeclaration": 43611,
                    "src": "12146:17:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RequestParameters_$43611_storage_ptr",
                      "typeString": "struct IBondEscalationResolutionModule.RequestParameters"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12145:34:72"
            },
            "scope": 43717,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 43698,
            "nodeType": "FunctionDefinition",
            "src": "12773:98:72",
            "nodes": [],
            "documentation": {
              "id": 43689,
              "nodeType": "StructuredDocumentation",
              "src": "12356:414:72",
              "text": " @notice Allows users to pledge in favor of a given dispute. This means the user believes the proposed answer is\n         incorrect and therefore wants the disputer to win his dispute.\n @param _requestId    The ID of the request associated with the dispute.\n @param _disputeId    The ID of the dispute to pledge in favor of.\n @param _pledgeAmount The amount of pledges to pledge."
            },
            "functionSelector": "d0f27f78",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "pledgeForDispute",
            "nameLocation": "12782:16:72",
            "parameters": {
              "id": 43696,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43691,
                  "mutability": "mutable",
                  "name": "_requestId",
                  "nameLocation": "12807:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43698,
                  "src": "12799:18:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43690,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "12799:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43693,
                  "mutability": "mutable",
                  "name": "_disputeId",
                  "nameLocation": "12827:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43698,
                  "src": "12819:18:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43692,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "12819:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43695,
                  "mutability": "mutable",
                  "name": "_pledgeAmount",
                  "nameLocation": "12847:13:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43698,
                  "src": "12839:21:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 43694,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "12839:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12798:63:72"
            },
            "returnParameters": {
              "id": 43697,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "12870:0:72"
            },
            "scope": 43717,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 43708,
            "nodeType": "FunctionDefinition",
            "src": "13286:102:72",
            "nodes": [],
            "documentation": {
              "id": 43699,
              "nodeType": "StructuredDocumentation",
              "src": "12875:408:72",
              "text": " @notice Allows users to pledge against a given dispute. This means the user believes the proposed answer is\n         correct and therefore wants the disputer to lose his dispute.\n @param _requestId    The ID of the request associated with the dispute.\n @param _disputeId    The ID of the dispute to pledge against of.\n @param _pledgeAmount The amount of pledges to pledge."
            },
            "functionSelector": "325fff12",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "pledgeAgainstDispute",
            "nameLocation": "13295:20:72",
            "parameters": {
              "id": 43706,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43701,
                  "mutability": "mutable",
                  "name": "_requestId",
                  "nameLocation": "13324:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43708,
                  "src": "13316:18:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43700,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "13316:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43703,
                  "mutability": "mutable",
                  "name": "_disputeId",
                  "nameLocation": "13344:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43708,
                  "src": "13336:18:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43702,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "13336:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43705,
                  "mutability": "mutable",
                  "name": "_pledgeAmount",
                  "nameLocation": "13364:13:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43708,
                  "src": "13356:21:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 43704,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "13356:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "13315:63:72"
            },
            "returnParameters": {
              "id": 43707,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "13387:0:72"
            },
            "scope": 43717,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 43716,
            "nodeType": "FunctionDefinition",
            "src": "13869:70:72",
            "nodes": [],
            "documentation": {
              "id": 43709,
              "nodeType": "StructuredDocumentation",
              "src": "13392:474:72",
              "text": " @notice Allows user to claim his corresponding pledges after a dispute is resolved.\n @dev Winning pledgers will claim their pledges along with their reward. In case of no resolution, users can\n      claim their pledges back. Losing pledgers will go to the rewards of the winning pledgers.\n @param _requestId The ID of the request associated with dispute.\n @param _disputeId The ID of the dispute the user wants to claim pledges from."
            },
            "functionSelector": "15dff0b2",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "claimPledge",
            "nameLocation": "13878:11:72",
            "parameters": {
              "id": 43714,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 43711,
                  "mutability": "mutable",
                  "name": "_requestId",
                  "nameLocation": "13898:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43716,
                  "src": "13890:18:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43710,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "13890:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 43713,
                  "mutability": "mutable",
                  "name": "_disputeId",
                  "nameLocation": "13918:10:72",
                  "nodeType": "VariableDeclaration",
                  "scope": 43716,
                  "src": "13910:18:72",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 43712,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "13910:7:72",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "13889:40:72"
            },
            "returnParameters": {
              "id": 43715,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "13938:0:72"
            },
            "scope": 43717,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          }
        ],
        "abstract": false,
        "baseContracts": [
          {
            "baseName": {
              "id": 43491,
              "name": "IResolutionModule",
              "nameLocations": [
                "694:17:72"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 2399,
              "src": "694:17:72"
            },
            "id": 43492,
            "nodeType": "InheritanceSpecifier",
            "src": "694:17:72"
          }
        ],
        "canonicalName": "IBondEscalationResolutionModule",
        "contractDependencies": [],
        "contractKind": "interface",
        "documentation": {
          "id": 43490,
          "nodeType": "StructuredDocumentation",
          "src": "358:290:72",
          "text": " @title BondEscalationResolutionModule\n @notice Handles the bond escalation resolution process for disputes, in which sides take turns pledging for or against a dispute by bonding tokens.\n @dev This is a resolution module, similar in its mechanics to the BondEscalationModule."
        },
        "fullyImplemented": false,
        "linearizedBaseContracts": [
          43717,
          2399,
          1782
        ],
        "name": "IBondEscalationResolutionModule",
        "nameLocation": "659:31:72",
        "scope": 43718,
        "usedErrors": [
          1745,
          43566,
          43569,
          43572,
          43575,
          43578,
          43581,
          43584,
          43587
        ]
      }
    ],
    "license": "MIT"
  },
  "id": 72
}