kleros-interaction-2
Version:
Smart contracts interacting with Kleros.
545 lines • 1.1 MB
JSON
{
"contractName": "CentralizedCourt",
"abi": [
{
"constant": true,
"inputs": [],
"name": "deadline",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_disputeID",
"type": "uint256"
},
{
"name": "_extraData",
"type": "bytes"
}
],
"name": "appeal",
"outputs": [],
"payable": true,
"stateMutability": "payable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "uint256"
}
],
"name": "disputes",
"outputs": [
{
"name": "arbitrated",
"type": "address"
},
{
"name": "choices",
"type": "uint256"
},
{
"name": "fee",
"type": "uint256"
},
{
"name": "status",
"type": "uint8"
},
{
"components": [
{
"name": "winningChoice",
"type": "uint256"
},
{
"name": "winningCount",
"type": "uint256"
}
],
"name": "voteCounter",
"type": "tuple"
},
{
"name": "deadline",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "uint256"
}
],
"name": "members",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "MAX_MEMBER_COUNT",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "uint256"
}
],
"name": "requests",
"outputs": [
{
"name": "status",
"type": "uint8"
},
{
"name": "fee",
"type": "uint256"
},
{
"name": "deadline",
"type": "uint256"
},
{
"components": [
{
"name": "winningChoice",
"type": "uint256"
},
{
"name": "winningCount",
"type": "uint256"
}
],
"name": "voteCounter",
"type": "tuple"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
}
],
"name": "isMember",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
}
],
"name": "feeToCollect",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_disputeID",
"type": "uint256"
}
],
"name": "appealPeriod",
"outputs": [
{
"name": "start",
"type": "uint256"
},
{
"name": "end",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"name": "_arbitrationPrice",
"type": "uint256"
},
{
"name": "_members",
"type": "address[]"
},
{
"name": "_deadline",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"name": "_requestID",
"type": "uint256"
},
{
"indexed": false,
"name": "_requester",
"type": "address"
}
],
"name": "UpdatePriceRequestCreation",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "_disputeID",
"type": "uint256"
},
{
"indexed": true,
"name": "_arbitrable",
"type": "address"
}
],
"name": "DisputeCreation",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "_disputeID",
"type": "uint256"
},
{
"indexed": true,
"name": "_arbitrable",
"type": "address"
}
],
"name": "AppealPossible",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "_disputeID",
"type": "uint256"
},
{
"indexed": true,
"name": "_arbitrable",
"type": "address"
}
],
"name": "AppealDecision",
"type": "event"
},
{
"constant": false,
"inputs": [
{
"name": "_choices",
"type": "uint256"
},
{
"name": "_extraData",
"type": "bytes"
}
],
"name": "createDispute",
"outputs": [
{
"name": "disputeID",
"type": "uint256"
}
],
"payable": true,
"stateMutability": "payable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_disputeID",
"type": "uint256"
},
{
"name": "_ruling",
"type": "uint256"
}
],
"name": "voteRuling",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [],
"name": "withdraw",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_disputeID",
"type": "uint256"
}
],
"name": "timeoutDecision",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_disputeID",
"type": "uint256"
}
],
"name": "disputeStatus",
"outputs": [
{
"name": "status",
"type": "uint8"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_disputeID",
"type": "uint256"
}
],
"name": "currentRuling",
"outputs": [
{
"name": "ruling",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_disputeID",
"type": "uint256"
},
{
"name": "_extraData",
"type": "bytes"
}
],
"name": "appealCost",
"outputs": [
{
"name": "fee",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_requestID",
"type": "uint256"
}
],
"name": "requestStatus",
"outputs": [
{
"name": "status",
"type": "uint8"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_requestID",
"type": "uint256"
}
],
"name": "currentRequestRuling",
"outputs": [
{
"name": "ruling",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_arbitrationPrice",
"type": "uint256"
}
],
"name": "createUpdatePriceRequest",
"outputs": [
{
"name": "requestID",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_requestID",
"type": "uint256"
},
{
"name": "_ruling",
"type": "uint256"
}
],
"name": "voteUpdatePriceRequest",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_requestID",
"type": "uint256"
}
],
"name": "timeoutUpdatePriceRequest",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_extraData",
"type": "bytes"
}
],
"name": "arbitrationCost",
"outputs": [
{
"name": "fee",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
}
],
"bytecode": "0x60806040523480156200001157600080fd5b5060405162001ac138038062001ac1833981016040908152815160208301519183015191909201805190919060009060321015620000d657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f5175616e74697479206f66206d656d62657273206973206e6f7420737570706f60448201527f727465642e000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b5060005b82518160ff161015620002185760056000848360ff16815181101515620000fd57fe5b6020908102909101810151600160a060020a031682528101919091526040016000205460ff161580156200015757508251600090849060ff84169081106200014157fe5b90602001906020020151600160a060020a031614155b1515620001c557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f496e76616c696420636f757274206d656d62657220616464726573732e000000604482015290519081900360640190fd5b600160056000858460ff16815181101515620001dd57fe5b602090810291909101810151600160a060020a03168252810191909152604001600020805460ff1916911515919091179055600101620000da565b600084905582516200023290600390602086019062000240565b505060045550620002d49050565b82805482825590600052602060002090810192821562000298579160200282015b82811115620002985782518254600160a060020a031916600160a060020a0390911617825560209092019160019091019062000261565b50620002a6929150620002aa565b5090565b620002d191905b80821115620002a6578054600160a060020a0319168155600101620002b1565b90565b6117dd80620002e46000396000f3006080604052600436106101275763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166307af6fa8811461012c57806310f169e8146101465780631413240b146101825780631a3132021461019d5780631c3db16d146101c557806329dcb0cf146101ef5780632f174714146102045780633ccfd60b1461021c57806349912f8814610231578063564a565d146102825780635daf08ca146102f35780635e47046914610327578063681fc9211461033f57806381d12c5814610354578063a230c524146103a5578063a3d2f13c146103da578063a9b3738d146103f2578063aaa2c1891461040d578063afe15cfb1461042e578063c13517e11461045f578063f23f16e6146104b0578063f7434ea91461050e575b600080fd5b34801561013857600080fd5b50610144600435610567565b005b34801561015257600080fd5b5061015e6004356106ea565b6040518082600281111561016e57fe5b60ff16815260200191505060405180910390f35b34801561018e57600080fd5b50610144600435602435610718565b3480156101a957600080fd5b506101b5600435610b16565b6040518082600181111561016e57fe5b3480156101d157600080fd5b506101dd600435610b41565b60408051918252519081900360200190f35b3480156101fb57600080fd5b506101dd610b71565b34801561021057600080fd5b506101dd600435610b77565b34801561022857600080fd5b50610144610c59565b60408051602060046024803582810135601f8101859004850286018501909652858552610144958335953695604494919390910191908190840183828082843750949750610cf69650505050505050565b34801561028e57600080fd5b5061029a600435610db2565b6040518087600160a060020a0316600160a060020a031681526020018681526020018581526020018460028111156102ce57fe5b60ff168152602001838152602001828152602001965050505050505060405180910390f35b3480156102ff57600080fd5b5061030b600435610e1d565b60408051600160a060020a039092168252519081900360200190f35b34801561033357600080fd5b50610144600435610e45565b34801561034b57600080fd5b506101dd611014565b34801561036057600080fd5b5061036c600435611019565b6040518085600181111561037c57fe5b60ff16815260200184815260200183815260200182815260200194505050505060405180910390f35b3480156103b157600080fd5b506103c6600160a060020a036004351661106e565b604080519115158252519081900360200190f35b3480156103e657600080fd5b506101dd600435611083565b3480156103fe57600080fd5b506101446004356024356110b3565b34801561041957600080fd5b506101dd600160a060020a0360043516611403565b34801561043a57600080fd5b50610446600435611415565b6040805192835260208301919091528051918290030190f35b60408051602060046024803582810135601f81018590048502860185019096528585526101dd95833595369560449491939091019190819084018382808284375094975061141d9650505050505050565b3480156104bc57600080fd5b5060408051602060046024803582810135601f81018590048502860185019096528585526101dd9583359536956044949193909101919081908401838280828437509497506115199650505050505050565b34801561051a57600080fd5b506040805160206004803580820135601f81018490048402850184019095528484526101dd9436949293602493928401919081908401838280828437509497506115409650505050505050565b60008060018381548110151561057957fe5b9060005260206000209060080201915081600201544210151515610633576040805160e560020a62461bcd02815260206004820152604160248201527f43616e206f6e6c792074696d656f7574206172626974726174696f6e2075706460448201527f617465207072696365207265717565737420616674657220646561646c696e6560648201527f2e00000000000000000000000000000000000000000000000000000000000000608482015290519081900360a40190fd5b6000825460ff16600181111561064557fe5b146106c0576040805160e560020a62461bcd02815260206004820152603f60248201527f43616e206f6e6c792074696d656f7574206172626974726174696f6e2075706460448201527f6174652070726963652072657175657374206e6f74207265736f6c7665642e00606482015290519081900360840190fd5b50805460ff191660019081178255600582018054909114156106e55760018201546000555b505050565b60006002828154811015156106fb57fe5b60009182526020909120600a909102016003015460ff1692915050565b3360009081526005602052604081205481908190819060ff161515610775576040805160e560020a62461bcd0281526020600482015260176024820152600080516020611792833981519152604482015290519081900360640190fd5b8560028181548110151561078557fe5b600091825260208083203384526004600a90930201919091019052604090205460ff16156107fd576040805160e560020a62461bcd02815260206004820152601360248201527f43616e206f6e6c7920766f7465206f6e63652e00000000000000000000000000604482015290519081900360640190fd5b8660028181548110151561080d57fe5b90600052602060002090600a02016009015442101515610877576040805160e560020a62461bcd02815260206004820152601e60248201527f43616e206f6e6c7920766f7465206265666f726520646561646c696e652e0000604482015290519081900360640190fd5b600280548990811061088557fe5b90600052602060002090600a02019550856001015487111515156108f3576040805160e560020a62461bcd02815260206004820152600f60248201527f496e76616c69642072756c696e672e0000000000000000000000000000000000604482015290519081900360640190fd5b6000600387015460ff16600281111561090857fe5b14610983576040805160e560020a62461bcd02815260206004820152602a60248201527f43616e206f6e6c7920766f746520666f72206469737075746573206e6f74207960448201527f657420736f6c7665642e00000000000000000000000000000000000000000000606482015290519081900360840190fd5b33600081815260048801602090815260408083208054600160ff1990911681179091558b845260058b0180845282852080548301815583518085019094529583528284018d815260088d018054808501825590875285872094516002909102909401805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0390951694909417845551929091019190915560078a0154928b9052905290546006880196501115610a4f5760008781526005870160205260409020546001860155868555610a70565b600087815260058701602052604090205460018601541415610a7057600085555b600354600088815260058801602052604090205460029091041015610b0c576003546002870154811515610aa057fe5b049350600092505b60035460ff84161015610b0357836006600060038660ff16815481101515610acc57fe5b6000918252602080832090910154600160a060020a0316835282019290925260400190208054909101905560019290920191610aa8565b610b0c88611547565b5050505050505050565b6000600182815481101515610b2757fe5b600091825260209091206008909102015460ff1692915050565b6000806000600284815481101515610b5557fe5b600091825260209091206006600a909202010154949350505050565b60045481565b33600090815260056020526040812054819060ff161515610bd0576040805160e560020a62461bcd0281526020600482015260176024820152600080516020611792833981519152604482015290519081900360640190fd5b6001805490610be19082810161161c565b9150600182815481101515610bf257fe5b6000918252602091829020600454420160026008909302909101918201556001810185905560408051858152339381019390935280519193507f9011098ae2ed7c0cfb6491712d3cf106db25f4a32a124ac7e39f5d4925e7cd25928290030190a150919050565b3360009081526005602052604081205460ff161515610cb0576040805160e560020a62461bcd0281526020600482015260176024820152600080516020611792833981519152604482015290519081900360640190fd5b5033600081815260066020526040808220805490839055905190929183156108fc02918491818181858888f19350505050158015610cf2573d6000803e3d6000fd5b5050565b8181610d028282611519565b341015610d7f576040805160e560020a62461bcd02815260206004820152602560248201527f4e6f7420656e6f7567682045544820746f20636f7665722061707065616c206360448201527f6f7374732e000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b604051339085907f9c9b64db9e130f48381bf697abf638e73117dbfbfd7a4484f2da3ba188f4187d90600090a350505050565b6002805482908110610dc057fe5b6000918252602091829020600a9091020180546001820154600283015460038401546040805180820190915260068601548152600786015496810196909652600990940154600160a060020a0390931695509093909260ff169186565b6003805482908110610e2b57fe5b600091825260209091200154600160a060020a0316905081565b6000806000600284815481101515610e5957fe5b90600052602060002090600a0201925082600901544210151515610eed576040805160e560020a62461bcd02815260206004820152602960248201527f43616e206f6e6c792074696d656f75742064697370757465732061667465722060448201527f646561646c696e652e0000000000000000000000000000000000000000000000606482015290519081900360840190fd5b6000600384015460ff166002811115610f0257fe5b14610f7d576040805160e560020a62461bcd02815260206004820152602760248201527f43616e206f6e6c792074696d656f7574206469737075746573206e6f7420726560448201527f736f6c7665642e00000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b6008830154600010156110055760088301546002840154811515610f9d57fe5b049150600090505b600883015460ff82161015611005578160066000856008018460ff16815481101515610fcd57fe5b60009182526020808320600290920290910154600160a060020a03168352820192909252604001902080549091019055600101610fa5565b61100e84611547565b50505050565b603281565b600180548290811061102757fe5b600091825260209182902060089091020180546001820154600283015460408051808201909152600585015481526006909401549484019490945260ff9091169350919084565b60056020526000908152604090205460ff1681565b600080600060018481548110151561109757fe5b6000918252602090912060056008909202010154949350505050565b33600090815260056020526040812054819060ff16151561110c576040805160e560020a62461bcd0281526020600482015260176024820152600080516020611792833981519152604482015290519081900360640190fd5b60038310611164576040805160e560020a62461bcd02815260206004820152600f60248201527f496e76616c6964206f7074696f6e2e0000000000000000000000000000000000604482015290519081900360640190fd5b600180548590811061117257fe5b906000526020600020906008020191504282600201541115156111df576040805160e560020a62461bcd02815260206004820152601e60248201527f43616e206f6e6c7920766f7465206265666f726520646561646c696e652e0000604482015290519081900360640190fd5b33600090815260038301602052604090205460ff1615611249576040805160e560020a62461bcd02815260206004820152601360248201527f43616e206f6e6c7920766f7465206f6e63652e00000000000000000000000000604482015290519081900360640190fd5b6000825460ff16600181111561125b57fe5b146112d6576040805160e560020a62461bcd02815260206004820152602a60248201527f43616e206f6e6c7920766f7465206f6e207265717565737473206e6f7420796560448201527f7420646563696465642e00000000000000000000000000000000000000000000606482015290519081900360840190fd5b5033600081815260038301602090815260408083208054600160ff199091168117909155868452600486018084528285208054830181558351808501909452958352828401888152600788018054808501825590875285872094516002909102909401805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0390951694909417845551929091019190915560068501549286905290529054600583019110156113a257600083815260048301602052604090205460018201558281556113c3565b6000838152600483016020526040902054600182015414156113c357600081555b60035460008481526004840160205260409020546002909104101561100e57815460ff1916600190811783558154141561100e5750600101546000555050565b60066020526000908152604090205481565b600080915091565b60008054819034101561147a576040805160e560020a62461bcd02815260206004820152601a60248201527f446964206e6f742073656e6420656e6f7567682065746865722e000000000000604482015290519081900360640190fd5b600280549061148c9060018301611648565b915060028281548110151561149d57fe5b60009182526020822060045442016009600a9093029091019182015560018101869055805473ffffffffffffffffffffffffffffffffffffffff19163390811782553460028301556040519193509184917f141dfc18aa6a56fc816f44f0e9e2f1ebc92b15ab167770e17db5b084c10ed9959190a35092915050565b7f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff92915050565b5060005490565b600080600060028481548110151561155b57fe5b600091825260208220600a90910201805473ffffffffffffffffffffffffffffffffffffffff198116825560038201805460ff19166002179055600682018054604080517f311a6c56000000000000000000000000000000000000000000000000000000008152600481018b9052602481019290925251939750909550600160a060020a039091169350839263311a6c569260448084019382900301818387803b15801561160857600080fd5b505af1158015610b0c573d6000803e3d6000fd5b8154818355818111156106e5576008028160080283600052602060002091820191016106e59190611674565b8154818355818111156106e557600a0281600a0283600052602060002091820191016106e591906116c5565b6116c291905b808211156116be57805460ff191681556000600182018190556002820181905560058201819055600682018190556116b56007830182611735565b5060080161167a565b5090565b90565b6116c291905b808211156116be57805473ffffffffffffffffffffffffffffffffffffffff191681556000600182018190556002820181905560038201805460ff1916905560068201819055600782018190556117256008830182611735565b5060006009820155600a016116cb565b50805460008255600202906000526020600020908101906117569190611759565b50565b6116c291905b808211156116be57805473ffffffffffffffffffffffffffffffffffffffff191681556000600182015560020161175f560041646472657373206e6f7420617574686f72697a65642e000000000000000000a165627a7a723058200321b5d6aa1f8cd65f388eb03e7ac6fb766f21b162fff04cb320de11b76226620029",
"deployedBytecode": "0x6080604052600436106101275763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166307af6fa8811461012c57806310f169e8146101465780631413240b146101825780631a3132021461019d5780631c3db16d146101c557806329dcb0cf146101ef5780632f174714146102045780633ccfd60b1461021c57806349912f8814610231578063564a565d146102825780635daf08ca146102f35780635e47046914610327578063681fc9211461033f57806381d12c5814610354578063a230c524146103a5578063a3d2f13c146103da578063a9b3738d146103f2578063aaa2c1891461040d578063afe15cfb1461042e578063c13517e11461045f578063f23f16e6146104b0578063f7434ea91461050e575b600080fd5b34801561013857600080fd5b50610144600435610567565b005b34801561015257600080fd5b5061015e6004356106ea565b6040518082600281111561016e57fe5b60ff16815260200191505060405180910390f35b34801561018e57600080fd5b50610144600435602435610718565b3480156101a957600080fd5b506101b5600435610b16565b6040518082600181111561016e57fe5b3480156101d157600080fd5b506101dd600435610b41565b60408051918252519081900360200190f35b3480156101fb57600080fd5b506101dd610b71565b34801561021057600080fd5b506101dd600435610b77565b34801561022857600080fd5b50610144610c59565b60408051602060046024803582810135601f8101859004850286018501909652858552610144958335953695604494919390910191908190840183828082843750949750610cf69650505050505050565b34801561028e57600080fd5b5061029a600435610db2565b6040518087600160a060020a0316600160a060020a031681526020018681526020018581526020018460028111156102ce57fe5b60ff168152602001838152602001828152602001965050505050505060405180910390f35b3480156102ff57600080fd5b5061030b600435610e1d565b60408051600160a060020a039092168252519081900360200190f35b34801561033357600080fd5b50610144600435610e45565b34801561034b57600080fd5b506101dd611014565b34801561036057600080fd5b5061036c600435611019565b6040518085600181111561037c57fe5b60ff16815260200184815260200183815260200182815260200194505050505060405180910390f35b3480156103b157600080fd5b506103c6600160a060020a036004351661106e565b604080519115158252519081900360200190f35b3480156103e657600080fd5b506101dd600435611083565b3480156103fe57600080fd5b506101446004356024356110b3565b34801561041957600080fd5b506101dd600160a060020a0360043516611403565b34801561043a57600080fd5b50610446600435611415565b6040805192835260208301919091528051918290030190f35b60408051602060046024803582810135601f81018590048502860185019096528585526101dd95833595369560449491939091019190819084018382808284375094975061141d9650505050505050565b3480156104bc57600080fd5b5060408051602060046024803582810135601f81018590048502860185019096528585526101dd9583359536956044949193909101919081908401838280828437509497506115199650505050505050565b34801561051a57600080fd5b506040805160206004803580820135601f81018490048402850184019095528484526101dd9436949293602493928401919081908401838280828437509497506115409650505050505050565b60008060018381548110151561057957fe5b9060005260206000209060080201915081600201544210151515610633576040805160e560020a62461bcd02815260206004820152604160248201527f43616e206f6e6c792074696d656f7574206172626974726174696f6e2075706460448201527f617465207072696365207265717565737420616674657220646561646c696e6560648201527f2e00000000000000000000000000000000000000000000000000000000000000608482015290519081900360a40190fd5b6000825460ff16600181111561064557fe5b146106c0576040805160e560020a62461bcd02815260206004820152603f60248201527f43616e206f6e6c792074696d656f7574206172626974726174696f6e2075706460448201527f6174652070726963652072657175657374206e6f74207265736f6c7665642e00606482015290519081900360840190fd5b50805460ff191660019081178255600582018054909114156106e55760018201546000555b505050565b60006002828154811015156106fb57fe5b60009182526020909120600a909102016003015460ff1692915050565b3360009081526005602052604081205481908190819060ff161515610775576040805160e560020a62461bcd0281526020600482015260176024820152600080516020611792833981519152604482015290519081900360640190fd5b8560028181548110151561078557fe5b600091825260208083203384526004600a90930201919091019052604090205460ff16156107fd576040805160e560020a62461bcd02815260206004820152601360248201527f43616e206f6e6c7920766f7465206f6e63652e00000000000000000000000000604482015290519081900360640190fd5b8660028181548110151561080d57fe5b90600052602060002090600a02016009015442101515610877576040805160e560020a62461bcd02815260206004820152601e60248201527f43616e206f6e6c7920766f7465206265666f726520646561646c696e652e0000604482015290519081900360640190fd5b600280548990811061088557fe5b90600052602060002090600a02019550856001015487111515156108f3576040805160e560020a62461bcd02815260206004820152600f60248201527f496e76616c69642072756c696e672e0000000000000000000000000000000000604482015290519081900360640190fd5b6000600387015460ff16600281111561090857fe5b14610983576040805160e560020a62461bcd02815260206004820152602a60248201527f43616e206f6e6c7920766f746520666f72206469737075746573206e6f74207960448201527f657420736f6c7665642e00000000000000000000000000000000000000000000606482015290519081900360840190fd5b33600081815260048801602090815260408083208054600160ff1990911681179091558b845260058b0180845282852080548301815583518085019094529583528284018d815260088d018054808501825590875285872094516002909102909401805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0390951694909417845551929091019190915560078a0154928b9052905290546006880196501115610a4f5760008781526005870160205260409020546001860155868555610a70565b600087815260058701602052604090205460018601541415610a7057600085555b600354600088815260058801602052604090205460029091041015610b0c576003546002870154811515610aa057fe5b049350600092505b60035460ff84161015610b0357836006600060038660ff16815481101515610acc57fe5b6000918252602080832090910154600160a060020a0316835282019290925260400190208054909101905560019290920191610aa8565b610b0c88611547565b5050505050505050565b6000600182815481101515610b2757fe5b600091825260209091206008909102015460ff1692915050565b6000806000600284815481101515610b5557fe5b600091825260209091206006600a909202010154949350505050565b60045481565b33600090815260056020526040812054819060ff161515610bd0576040805160e560020a62461bcd0281526020600482015260176024820152600080516020611792833981519152604482015290519081900360640190fd5b6001805490610be19082810161161c565b9150600182815481101515610bf257fe5b6000918252602091829020600454420160026008909302909101918201556001810185905560408051858152339381019390935280519193507f9011098ae2ed7c0cfb6491712d3cf106db25f4a32a124ac7e39f5d4925e7cd25928290030190a150919050565b3360009081526005602052604081205460ff161515610cb0576040805160e560020a62461bcd0281526020600482015260176024820152600080516020611792833981519152604482015290519081900360640190fd5b5033600081815260066020526040808220805490839055905190929183156108fc02918491818181858888f19350505050158015610cf2573d6000803e3d6000fd5b5050565b8181610d028282611519565b341015610d7f576040805160e560020a62461bcd02815260206004820152602560248201527f4e6f7420656e6f7567682045544820746f20636f7665722061707065616c206360448201527f6f7374732e000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b604051339085907f9c9b64db9e130f48381bf697abf638e73117dbfbfd7a4484f2da3ba188f4187d90600090a350505050565b6002805482908110610dc057fe5b6000918252602091829020600a9091020180546001820154600283015460038401546040805180820190915260068601548152600786015496810196909652600990940154600160a060020a0390931695509093909260ff169186565b6003805482908110610e2b57fe5b600091825260209091200154600160a060020a0316905081565b6000806000600284815481101515610e5957fe5b90600052602060002090600a0201925082600901544210151515610eed576040805160e560020a62461bcd02815260206004820152602960248201527f43616e206f6e6c792074696d656f75742064697370757465732061667465722060448201527f646561646c696e652e0000000000000000000000000000000000000000000000606482015290519081900360840190fd5b6000600384015460ff166002811115610f0257fe5b14610f7d576040805160e560020a62461bcd02815260206004820152602760248201527f43616e206f6e6c792074696d656f7574206469737075746573206e6f7420726560448201527f736f6c7665642e00000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b6008830154600010156110055760088301546002840154811515610f9d57fe5b049150600090505b600883015460ff82161015611005578160066000856008018460ff16815481101515610fcd57fe5b60009182526020808320600290920290910154600160a060020a03168352820192909252604001902080549091019055600101610fa5565b61100e84611547565b50505050565b603281565b600180548290811061102757fe5b600091825260209182902060089091020180546001820154600283015460408051808201909152600585015481526006909401549484019490945260ff9091169350919084565b60056020526000908152604090205460ff1681565b600080600060018481548110151561109757fe5b6000918252602090912060056008909202010154949350505050565b33600090815260056020526040812054819060ff16151561110c576040805160e560020a62461bcd0281526020600482015260176024820152600080516020611792833981519152604482015290519081900360640190fd5b60038310611164576040805160e560020a62461bcd02815260206004820152600f60248201527f496e76616c6964206f7074696f6e2e0000000000000000000000000000000000604482015290519081900360640190fd5b600180548590811061117257fe5b906000526020600020906008020191504282600201541115156111df576040805160e560020a62461bcd02815260206004820152601e60248201527f43616e206f6e6c7920766f7465206265666f726520646561646c696e652e0000604482015290519081900360640190fd5b33600090815260038301602052604090205460ff1615611249576040805160e560020a62461bcd02815260206004820152601360248201527f43616e206f6e6c7920766f7465206f6e63652e00000000000000000000000000604482015290519081900360640190fd5b6000825460ff16600181111561125b57fe5b146112d6576040805160e560020a62461bcd02815260206004820152602a60248201527f43616e206f6e6c7920766f7465206f6e207265717565737473206e6f7420796560448201527f7420646563696465642e00000000000000000000000000000000000000000000606482015290519081900360840190fd5b5033600081815260038301602090815260408083208054600160ff199091168117909155868452600486018084528285208054830181558351808501909452958352828401888152600788018054808501825590875285872094516002909102909401805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0390951694909417845551929091019190915560068501549286905290529054600583019110156113a257600083815260048301602052604090205460018201558281556113c3565b6000838152600483016020526040902054600182015414156113c357600081555b60035460008481526004840160205260409020546002909104101561100e57815460ff1916600190811783558154141561100e5750600101546000555050565b60066020526000908152604090205481565b600080915091565b60008054819034101561147a576040805160e560020a62461bcd02815260206004820152601a60248201527f446964206e6f742073656e6420656e6f7567682065746865722e000000000000604482015290519081900360640190fd5b600280549061148c9060018301611648565b915060028281548110151561149d57fe5b60009182526020822060045442016009600a9093029091019182015560018101869055805473ffffffffffffffffffffffffffffffffffffffff19163390811782553460028301556040519193509184917f141dfc18aa6a56fc816f44f0e9e2f1ebc92b15ab167770e17db5b084c10ed9959190a35092915050565b7f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff92915050565b5060005490565b600080600060028481548110151561155b57fe5b600091825260208220600a90910201805473ffffffffffffffffffffffffffffffffffffffff198116825560038201805460ff19166002179055600682018054604080517f311a6c56000000000000000000000000000000000000000000000000000000008152600481018b9052602481019290925251939750909550600160a060020a039091169350839263311a6c569260448084019382900301818387803b15801561160857600080fd5b505af1158015610b0c573d6000803e3d6000fd5b8154818355818111156106e5576008028160080283600052602060002091820191016106e59190611674565b8154818355818111156106e557600a0281600a0283600052602060002091820191016106e591906116c5565b6116c291905b808211156116be57805460ff191681556000600182018190556002820181905560058201819055600682018190556116b56007830182611735565b5060080161167a565b5090565b90565b6116c291905b808211156116be57805473ffffffffffffffffffffffffffffffffffffffff191681556000600182018190556002820181905560038201805460ff1916905560068201819055600782018190556117256008830182611735565b5060006009820155600a016116cb565b50805460008255600202906000526020600020908101906117569190611759565b50565b6116c291905b808211156116be57805473ffffffffffffffffffffffffffffffffffffffff191681556000600182015560020161175f560041646472657373206e6f7420617574686f72697a65642e000000000000000000a165627a7a723058200321b5d6aa1f8cd65f388eb03e7ac6fb766f21b162fff04cb320de11b76226620029",
"sourceMap": "365:12512:13:-;;;3056:497;8:9:-1;5:2;;;30:1;27;20:12;5:2;3056:497:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3154:15;;3056:497;;;3245:7;;2338:2;-1:-1:-1;3154:35:13;3146:85;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3255:1:13;3241:202;3262:8;:15;3258:1;:19;;;3241:202;;;3306:8;:21;3315:8;3324:1;3315:11;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3306:21:13;;;;;;;;;;;-1:-1:-1;3306:21:13;;;;3305:22;:51;;;;-1:-1:-1;3331:11:13;;3354:1;;3331:8;;:11;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3331:25:13;;;3305:51;3297:93;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3428:4;3404:8;:21;3413:8;3422:1;3413:11;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3404:21:13;;;;;;;;;;;-1:-1:-1;3404:21:13;:28;;-1:-1:-1;;3404:28:13;;;;;;;;;;-1:-1:-1;3279:3:13;3241:202;;;3452:16;:36;;;3498:18;;;;:7;;:18;;;;;:::i;:::-;-1:-1:-1;;3526:8:13;:20;-1:-1:-1;365:12512:13;;-1:-1:-1;365:12512:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;365:12512:13;-1:-1:-1;;;;;365:12512:13;;;;;;;;;;;-1:-1:-1;365:12512:13;;;;;;;-1:-1:-1;365:12512:13;;;-1:-1:-1;365:12512:13;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;;365:12512:13;;;;;;;;;:::o;:::-;;;;;;;",
"deployedSourceMap": "365:12512:13:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11989:603;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;11989:603:13;;;;;;;7778:133;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7778:133:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4691:1322;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;4691:1322:13;;;;;;;8906:138;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;8906:138:13;;;;;;;;;;;;;;;;;8080:241;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;8080:241:13;;;;;;;;;;;;;;;;;;;;;2173:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2173:20:13;;;;9752:398;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9752:398:13;;;;;6689:177;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6689:177:13;;;;3011:178:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3011:178:9;;-1:-1:-1;3011:178:9;;-1:-1:-1;;;;;;;3011:178:9;2112:25:13;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2112:25:13;;;;;;;;;;-1:-1:-1;;;;;2112:25:13;-1:-1:-1;;;;;2112:25:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2143:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2143:24:13;;;;;;;;;-1:-1:-1;;;;;2143:24:13;;;;;;;;;;;;;;7024:592;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7024:592:13;;;;;2298:42;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2298:42:13;;;;2064:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2064:41:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2199;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2199:41:13;-1:-1:-1;;;;;2199:41:13;;;;;;;;;;;;;;;;;;;;;;;9239:264;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9239:264:13;;;;;10437:1383;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;10437:1383:13;;;;;;;2246:45;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2246:45:13;-1:-1:-1;;;;;2246:45:13;;;;;3874:83:9;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;3874:83:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;3909:533:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3909:533:13;;-1:-1:-1;3909:533:13;;-1:-1:-1;;;;;;;3909:533:13;8612:126;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;8612:126:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8612:126:13;;-1:-1:-1;8612:126:13;;-1:-1:-1;;;;;;;8612:126:13;12762:113;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12762:113:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12762:113:13;;-1:-1:-1;12762:113:13;;-1:-1:-1;;;;;;;12762:113:13;11989:603;12058:39;12432:31;12100:8;12109:10;12100:20;;;;;;;;;;;;;;;;;;;;12058:62;;12145:7;:16;;;12138:3;:23;;12130:101;;;;;;;-1:-1:-1;;;;;12130:101:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12267:26;12249:14;;;;;:44;;;;;;;;12241:120;;;;;-1:-1:-1;;;;;12241:120:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12380:42:13;;-1:-1:-1;;12380:42:13;12397:25;12380:42;;;;;12466:19;;;12499:25;;12466:19;;12499:30;12496:90;;;12564:11;;;;12545:16;:30;12496:90;11989:603;;;:::o;7778:133::-;7838:20;7877:8;7886:10;7877:20;;;;;;;;;;;;;;;;;;;;;;;:27;;;;;;7778:133;-1:-1:-1;;7778:133:13:o;4691:1322::-;2401:10;4829:23;2392:20;;;:8;:20;;;;;;4829:23;;;;;;2392:20;;2384:56;;;;;;;-1:-1:-1;;;;;2384:56:13;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2384:56:13;;;;;;;;;;;;;;;4780:10;2524:8;2533:10;2524:20;;;;;;;;;;;;;;;;;;2554:10;2524:41;;:29;:20;;;;;:29;;;;:41;;;;;;;;2523:42;2515:74;;;;;-1:-1:-1;;;;;2515:74:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;4807:10;2678:8;2687:10;2678:20;;;;;;;;;;;;;;;;;;;;:29;;;2672:3;:35;2664:78;;;;;;;-1:-1:-1;;;;;2664:78:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;4855:8;:20;;4864:10;;4855:20;;;;;;;;;;;;;;;;4829:46;;4902:7;:15;;;4893:7;:24;;4885:52;;;;;;;-1:-1:-1;;;;;4885:52:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;4973:21;4955:14;;;;;;:39;;;;;;;;;4947:94;;;;;-1:-1:-1;;;;;4947:94:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5069:10;5052:28;;;;:16;;;:28;;;;;;;;:35;;5083:4;-1:-1:-1;;5052:35:13;;;;;;;;5097:26;;;:17;;;:26;;;;;;:31;;;;;;5171:90;;;;;;;;;;;;;;;;;5139:13;;;27:10:-1;;23:18;;;45:23;;5139:132:13;;;;;;;;;;;;;;;;;-1:-1:-1;;5139:132:13;-1:-1:-1;;;;;5139:132:13;;;;;;;;;;;;;;;;;;5377:24;;;;5348:26;;;;;;;;5316:19;;;;-1:-1:-1;5348:53:13;5345:330;;;5443:26;;;;:17;;;:26;;;;;;5416:24;;;:53;5483:35;;;5345:330;;;5568:26;;;;:17;;;:26;;;;;;5540:24;;;;:54;5536:139;;;5638:1;5610:29;;5536:139;5718:7;:14;5688:26;;;;:17;;;:26;;;;;;5733:1;5718:16;;;-1:-1:-1;5685:322:13;;;5820:7;:14;5808:11;;;;:26;;;;;;;;5792:42;;5862:1;5852:11;;5848:110;5869:7;:14;5865:18;;;;5848:110;;;5935:8;5907:12;:24;5920:7;5928:1;5920:10;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5920:10:13;5907:24;;;;;;;;;;;;:36;;;;;;;5920:10;5885:3;;;;;5848:110;;;5971:25;5985:10;5971:13;:25::i;:::-;2599:1;2450;4691:1322;;;;;;:::o;8906:138::-;8966:25;9010:8;9019:10;9010:20;;;;;;;;;;;;;;;;;;;;;;;:27;;;;8906:138;-1:-1:-1;;8906:138:13:o;8080:241::-;8140:11;8163:23;8219:31;8189:8;8198:10;8189:20;;;;;;;;;;;;;;;;;;8253:19;8189:20;;;;;8253:19;8289:25;;8080:241;-1:-1:-1;;;;8080:241:13:o;2173:20::-;;;;:::o;9752:398::-;2401:10;9841:14;2392:20;;;:8;:20;;;;;;9841:14;;2392:20;;2384:56;;;;;;;-1:-1:-1;;;;;2384:56:13;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2384:56:13;;;;;;;;;;;;;;;9880:8;:17;;;;;;;;;:::i;:::-;9868:29;;9949:8;9958:9;9949:19;;;;;;;;;;;;;;;;;;;10003:8;;9997:3;:14;9978:16;9949:19;;;;;;;9978:16;;;:33;10021:11;;;:31;;;10068:49;;;;;;10106:10;10068:49;;;;;;;;;9949:19;;-1:-1:-1;10068:49:13;;;;;;;;9752:398;;;;:::o;6689:177::-;2401:10;6742:13;2392:20;;;:8;:20;;;;;;;;2384:56;;;;;;;-1:-1:-1;;;;;2384:56:13;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2384:56:13;;;;;;;;;;;;;;;-1:-1:-1;6771:10:13;6758:24;;;;:12;:24;;;;;;;;6792:28;;;;6830:29;;6758:24;;6771:10;6830:29;;;;;6758:24;;6830:29;6758:24;6830:29;6758:24;6771:10;6830:29;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6830:29:13;6689:177;:::o;3011:178:9:-;3086:10;3097;1031:34;1042:10;1054;1031;:34::i;:::-;1018:9;:47;;1010:97;;;;;-1:-1:-1;;;;;1010:97:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3132:50;;3170:10;;3147;;3132:50;;;;;3011:178;;;;:::o;2112:25:13:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2112:25:13;;;;-1:-1:-1;2112:25:13;;;;;;;;:::o;2143:24::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2143:24:13;;-1:-1:-1;2143:24:13;:::o;7024:592::-;7083:23;7370:13;7437:7;7109:8;7118:10;7109:20;;;;;;;;;;;;;;;;;;;;7083:46;;7154:7;:16;;;7147:3;:23;;7139:77;;;;;;;-1:-1:-1;;;;;7139:77:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7252:21;7234:14;;;;;;:39;;;;;;;;;7226:91;;;;;-1:-1:-1;;;;;7226:91:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7331:13;;;:20;7354:1;-1:-1:-1;7328:246:13;;;7398:13;;;:20;7386:11;;;;:32;;;;;;;;7370:48;;7447:1;7437:11;;7433:131;7454:13;;;:20;7450:24;;;;7433:131;;;7541:8;7499:12;:38;7512:7;:13;;7526:1;7512:16;;;;;;;;;;;;;;;;;;;;;;;;;;;:24;-1:-1:-1;;;;;7512:24:13;7499:38;;;;;;;;;;;;:50;;;;;;;7512:24;7476:3;7433:131;;;7584:25;7598:10;7584:13;:25::i;:::-;7024:592;;;;:::o;2298:42::-;2338:2;2298:42;:::o;2064:41::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2064:41:13;;;:::o;2199:::-;;;;;;;;;;;;;;;:::o;9239:264::-;9306:11;9329:39;9401:31;9371:8;9380:10;9371:20;;;;;;;;;;;;;;;;;;9435:19;9371:20;;;;;9435:19;9471:25;;9239:264;-1:-1:-1;;;;9239:264:13:o;10437:1383::-;2401:10;10582:39;2392:20;;;:8;:20;;;;;;10582:39;;2392:20;;2384:56;;;;;;;-1:-1:-1;;;;;2384:56:13;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2384:56:13;;;;;;;;;;;;;;;10551:1;10541:11;;10533:39;;;;;-1:-1:-1;;;;;10533:39:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;10624:8;:20;;10633:10;;10624:20;;;;;;;;;;;;;;;;10582:62;;10681:3;10662:7;:16;;;:22;10654:65;;;;;;;-1:-1:-1;;;;;10654:65:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;10755:10;10738:28;;;;:16;;;:28;;;;;;;;10737:29;10729:61;;;;;-1:-1:-1;;;;;10729:61:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;10826:26;10808:14;;;;;:44;;;;;;;;10800:99;;;;;-1:-1:-1;;;;;10800:99:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10927:10:13;10910:28;;;;:16;;;:28;;;;;;;;:35;;10941:4;-1:-1:-1;;10910:35:13;;;;;;;;10955:26;;;:17;;;:26;;;;;;:31;;;;;;11029:90;;;;;;;;;;;;;;;;;10997:13;;;27:10:-1;;23:18;;;45:23;;10997:132:13;;;;;;;;;;;;;;;;;-1:-1:-1;;10997:132:13;-1:-1:-1;;;;;10997:132:13;;;;;;;;;;;;;;;;;;11235:24;;;;11206:26;;;;;;;;11174:19;;;;-1:-1:-1;11203:330:13;;;11301:26;;;;:17;;;:26;;;;;;11274:24;;;:53;11341:35;;;11203:330;;;11426:26;;;;:17;;;:26;;;;;;11398:24;;;;:54;11394:139;;;11496:1;11468:29;;11394:139;11576:7;:14;11546:26;;;;:17;;;:26;;;;;;11591:1;11576:16;;;-1:-1:-1;11543:271:13;;;11650:42;;-1:-1:-1;;11650:42:13;11667:25;11650:42;;;;;11709:25;;:30;11706:98;;;-1:-1:-1;11778:11:13;;;11759:16;:30;-1:-1:-1;;10437:1383:13:o;2246:45::-;;;;;;;;;;;;;:::o;3874:83:9:-;3933:10;3945:8;3874:83;;;:::o;3909:533:13:-;3988:14;4036:16;;3988:14;;4023:9;:29;;4015:68;;;;;-1:-1:-1;;;;;4015:68:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;4106:8;:17;;;;;;;;;:::i;:::-;4094:29;;4159:8;4168:9;4159:19;;;;;;;;;;;;;;;;;4213:8;;4207:3;:14;4188:16;4159:19;;;;;;;4188:16;;;:33;4231:15;;;:26;;;4267:43;;-1:-1:-1;;4267:43:13;4299:10;4267:43;;;;;4334:9;4320:11;;;:23;4359:50;;4159:19;;-1:-1:-1;4299:10:13;4375:9;;4359:50;;4159:19;4359:50;3909:533;;;;;:::o;8612:126::-;540:12;8612:126;;;;:::o;12762:113::-;-1:-1:-1;12825:8:13;12852:16;;12762:113::o;6150:443::-;6209:23;6265:31;6328:21;6235:8;6244:10;6235:20;;;;;;;;;;;;;;;;;;;;;;6352:18;;-1:-1:-1;;6380:36:13;;;;6484:14;;;:37;;-1:-1:-1;;6484:37:13;6501:20;6484:37;;;6299:19;;;6560:25;;6532:54;;;;;;;;;;;;;;;;;;;;6235:20;;-1:-1:-1;6299:19:13;;-1:-1:-1;;;;;;6352:18:13;;;;-1:-1:-1;6352:18:13;;6532:15;;:54;;;;;;;;;;6235:20;6352:18;6532:54;;;5:2:-1;;;;30:1;27;20:12;5:2;6532:54:13;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;365:12512:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;365:12512:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;365:12512:13;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;365:12512:13;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;365:12512:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;365:12512:13;;;;;;;;;;;",
"source": "/**\n * @title Arbitration Standard\n * @author Gabriel Oliveira Mendanha - <gabrielmendanha@icloud.com>\n * Bug Bounties: This code hasn't undertaken a bug bounty program yet.\n */\n\n\npragma solidity ^0.4.15;\n\nimport \"./Arbitrator.sol\";\n\n/** @title Centralized Court\n * This is a centralized court deciding the result of disputes.\n * No appeals are possible.\n */\n\ncontract CentralizedCourt is Arbitrator {\n\n uint arbitrationPrice; // Not public because arbitrationCost already acts as an accessor.\n uint constant NOT_PAYABLE_VALUE = (2**256-2)/2; // High value to be sure that the appeal is too expensive.\n\n struct VoteCounter {\n uint winningChoice; // The choice which currently has the highest amount of votes. Is 0 in case of a tie.\n uint winningCount; // The number of votes for winningChoice. Or for the choices which are tied.\n }\n\n struct Vote {\n address account; // The juror who casted the vote.\n uint ruling; // The ruling which was given.\n }\n\n enum PriceRequestStatus {Waiting, Solved}\n\n struct ArbitrationPriceRequest {\n PriceRequestStatus status;\n uint fee; // The new minimum fee to be paid for the arbitration service.\n uint deadline;\n mapping (address => bool) hasVoted;\n mapping (uint => uint) voteCount; // voteCount[choice] is the number of votes for choice.\n VoteCounter voteCounter;\n Vote[] votes;\n }\n\n struct Dispute {\n Arbitrable arbitrated;\n uint choices;\n uint fee;\n DisputeStatus status;\n mapping (address => bool) hasVoted;\n mapping (uint => uint) voteCount; // voteCount[choice] is the number of votes for choice.\n VoteCounter voteCounter;\n Vote[] votes;\n uint deadline;\n }\n\n /** @dev To be raised when an request to update the arbitration price is created.\n * @param _requestID ID of the request.\n * @param _requester The address that created the request.\n */\n event UpdatePriceRequestCreation(uint _requestID, address _requester);\n\n ArbitrationPriceRequest[] public requests;\n\n Dispute[] public disputes;\n address[] public members;\n uint public deadline;\n mapping (address => bool) public isMember;\n mapping (address => uint) public feeToCollect;\n\n uint constant public MAX_MEMBER_COUNT = 50;\n\n modifier onlyCourtMember() {\n require(isMember[msg.sender], \"Address not authorized.\");\n _;\n }\n\n modifier whoHasNotVoted(uint _disputeID) {\n require(!disputes[_disputeID].hasVoted[msg.sender], \"Can only vote once.\");\n _;\n }\n\n modifier beforeDeadline(uint _disputeID) {\n require(now < disputes[_disputeID].deadline, \"Can only vote before d