{ "_format": "hh-sol-artifact-1", "contractName": "OnePoolReward", "sourceName": "contracts/reward/OnePoolReward.sol", "abi": [ { "inputs": [ { "internalType": "uint256", "name": "lifetimeMonthes", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint256", "name": "pricingIndex", "type": "uint256" }, { "indexed": true, "internalType": "address", "name": "beneficiary", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "DistributeReward", "type": "event" }, { "inputs": [], "name": "accumulatedReward", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "activeDonation", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "pricingIndex", "type": "uint256" }, { "internalType": "address payable", "name": "beneficiary", "type": "address" }, { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "name": "claimMineReward", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "claimedReward", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "beforeLength", "type": "uint256" }, { "internalType": "uint256", "name": "rewardSectors", "type": "uint256" } ], "name": "fillReward", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "firstValidChunk", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "market_", "type": "address" }, { "internalType": "address", "name": "mine_", "type": "address" } ], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "initialized", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "lastUpdateTimestamp", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "lastValidChunk", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "lifetimeInSeconds", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "market", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "mine", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "nextChunkDonation", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "refresh", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "timeoutHead", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "timeoutRecords", "outputs": [ { "internalType": "uint64", "name": "numPriceChunks", "type": "uint64" }, { "internalType": "uint64", "name": "timeoutTimestamp", "type": "uint64" }, { "internalType": "uint256", "name": "donation", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ], "bytecode": "0x60a060405234801561001057600080fd5b50604051610cee380380610cee83398101604081905261002f91610050565b61003d601f62015180610069565b6100479082610069565b60805250610096565b60006020828403121561006257600080fd5b5051919050565b600081600019048311821515161561009157634e487b7160e01b600052601160045260246000fd5b500290565b608051610c2f6100bf600039600081816102fe0152818161056b0152610a2f0152610c2f6000f3fe6080604052600436106101025760003560e01c806359e967001161009557806380fad3251161006457806380fad325146102b657806399f4b251146102cc578063b7375ddb146102ec578063b7a3c04c14610320578063f8ac93e81461034057600080fd5b806359e967001461023a5780636baff3d31461024d57806377bd602b1461026357806380f556051461027957600080fd5b806322ee4cb8116100d157806322ee4cb8146101d657806328fedefe146101ec578063485cc95514610202578063514ccef01461022457600080fd5b80630dbbe0a21461012657806314bcec9f14610172578063158ef93e1461019657806318ca1b2b146101c057600080fd5b366101215734600960008282546101199190610ab5565b925050819055005b600080fd5b34801561013257600080fd5b50610146610141366004610ace565b610355565b6040805167ffffffffffffffff9485168152939092166020840152908201526060015b60405180910390f35b34801561017e57600080fd5b5061018860085481565b604051908152602001610169565b3480156101a257600080fd5b506000546101b09060ff1681565b6040519015158152602001610169565b3480156101cc57600080fd5b5061018860055481565b3480156101e257600080fd5b5061018860045481565b3480156101f857600080fd5b5061018860035481565b34801561020e57600080fd5b5061022261021d366004610afc565b61039a565b005b34801561023057600080fd5b5061018860075481565b610222610248366004610b35565b61043c565b34801561025957600080fd5b5061018860095481565b34801561026f57600080fd5b50610188600a5481565b34801561028557600080fd5b5060005461029e9061010090046001600160a01b031681565b6040516001600160a01b039091168152602001610169565b3480156102c257600080fd5b5061018860065481565b3480156102d857600080fd5b5060015461029e906001600160a01b031681565b3480156102f857600080fd5b506101887f000000000000000000000000000000000000000000000000000000000000000081565b34801561032c57600080fd5b5061022261033b366004610b57565b610667565b34801561034c57600080fd5b50610222610788565b6002818154811061036557600080fd5b60009182526020909120600290910201805460019091015467ffffffffffffffff8083169350600160401b9092049091169083565b60005460ff16156103fd5760405162461bcd60e51b815260206004820152602260248201527f496e697469616c697a61626c653a20616c726561647920696e697469616c697a604482015261195960f21b60648201526084015b60405180910390fd5b600080546001600160a81b0319166101006001600160a01b039485160217600190811790915580546001600160a01b0319169190921617905542600855565b60005461010090046001600160a01b0316336001600160a01b0316146104a45760405162461bcd60e51b815260206004820152601f60248201527f53656e64657220646f6573206e6f742068617665207065726d697373696f6e0060448201526064016103f4565b6104ac610788565b60006104b88284610ab5565b905060006101006104cb61040080610b8f565b6104d790610400610b8f565b6104e2906008610b8f565b6104ec9190610bae565b6104f69085610bae565b9050600061010061050961040080610b8f565b61051590610400610b8f565b610520906008610b8f565b61052a9190610bae565b6105349084610bae565b905081811115610660576000604051806060016040528084846105579190610bd0565b67ffffffffffffffff1681526020016105907f000000000000000000000000000000000000000000000000000000000000000042610ab5565b67ffffffffffffffff9081168252600980546020938401526002805460018101825560008281528651919092027f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace81018054968801518616600160401b026001600160801b031990971692909516919091179490941790925560408401517f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5acf9093019290925560058590559054600a80549394509092909190610654908490610ab5565b90915550506000600955505b5050505050565b6001546001600160a01b0316336001600160a01b0316146106ca5760405162461bcd60e51b815260206004820152601f60248201527f53656e64657220646f6573206e6f742068617665207065726d697373696f6e0060448201526064016103f4565b6004548310156106d957505050565b6106e1610788565b60006007546006546106f39190610bd0565b9050478111156107005750475b8015610782576040516001600160a01b0384169082156108fc029083906000818181858888f1935050505015801561073c573d6000803e3d6000fd5b50826001600160a01b0316847f83617a1b0f847971f005bd162dde513cfe93df96e6293c3bbb5fe9c40629dd4c8360405161077991815260200190565b60405180910390a35b50505050565b60025460008190036107a6574260088190556107a390610963565b50565b426002600354815481106107bc576107bc610be3565b6000918252602090912060029091020154600160401b900467ffffffffffffffff161161095e576108226002600354815481106107fb576107fb610be3565b6000918252602090912060029091020154600160401b900467ffffffffffffffff16610963565b60026003548154811061083757610837610be3565b600091825260208220600290910201546004805467ffffffffffffffff909216929091610865908490610ab5565b9250508190555060026003548154811061088157610881610be3565b906000526020600020906002020160010154600a60008282546108a49190610bd0565b925050819055506040518060600160405280600067ffffffffffffffff168152602001600067ffffffffffffffff16815260200160008152506002600354815481106108f2576108f2610be3565b60009182526020808320845160029093020180549185015167ffffffffffffffff908116600160401b026001600160801b03199093169316929092171781556040909201516001928301556003805490919061094f908490610ab5565b909155505060035481036107a6575b6107a3425b600854811161096f5750565b600061097d601f600c610b8f565b61098a9062015180610b8f565b61099661040080610b8f565b6109a290610400610b8f565b670de0b6b3a7640000600a6109b961040080610b8f565b6109c590610400610b8f565b6109d0906008610b8f565b6004546005546109e09190610bd0565b6008546109ed9089610bd0565b6109f79190610b8f565b610a019190610b8f565b610a0b9190610b8f565b610a159190610b8f565b610a1f9190610bae565b610a299190610bae565b905060007f000000000000000000000000000000000000000000000000000000000000000060085484610a5c9190610bd0565b600a54610a699190610b8f565b610a739190610bae565b9050610a7f8183610ab5565b60066000828254610a909190610ab5565b90915550505060089190915550565b634e487b7160e01b600052601160045260246000fd5b80820180821115610ac857610ac8610a9f565b92915050565b600060208284031215610ae057600080fd5b5035919050565b6001600160a01b03811681146107a357600080fd5b60008060408385031215610b0f57600080fd5b8235610b1a81610ae7565b91506020830135610b2a81610ae7565b809150509250929050565b60008060408385031215610b4857600080fd5b50508035926020909101359150565b600080600060608486031215610b6c57600080fd5b833592506020840135610b7e81610ae7565b929592945050506040919091013590565b6000816000190483118215151615610ba957610ba9610a9f565b500290565b600082610bcb57634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610ac857610ac8610a9f565b634e487b7160e01b600052603260045260246000fdfea2646970667358221220621c542b85b6dbf17c53edcf1485b2df56304d74304d582cac0f8d9daf46655264736f6c63430008100033", "deployedBytecode": "0x6080604052600436106101025760003560e01c806359e967001161009557806380fad3251161006457806380fad325146102b657806399f4b251146102cc578063b7375ddb146102ec578063b7a3c04c14610320578063f8ac93e81461034057600080fd5b806359e967001461023a5780636baff3d31461024d57806377bd602b1461026357806380f556051461027957600080fd5b806322ee4cb8116100d157806322ee4cb8146101d657806328fedefe146101ec578063485cc95514610202578063514ccef01461022457600080fd5b80630dbbe0a21461012657806314bcec9f14610172578063158ef93e1461019657806318ca1b2b146101c057600080fd5b366101215734600960008282546101199190610ab5565b925050819055005b600080fd5b34801561013257600080fd5b50610146610141366004610ace565b610355565b6040805167ffffffffffffffff9485168152939092166020840152908201526060015b60405180910390f35b34801561017e57600080fd5b5061018860085481565b604051908152602001610169565b3480156101a257600080fd5b506000546101b09060ff1681565b6040519015158152602001610169565b3480156101cc57600080fd5b5061018860055481565b3480156101e257600080fd5b5061018860045481565b3480156101f857600080fd5b5061018860035481565b34801561020e57600080fd5b5061022261021d366004610afc565b61039a565b005b34801561023057600080fd5b5061018860075481565b610222610248366004610b35565b61043c565b34801561025957600080fd5b5061018860095481565b34801561026f57600080fd5b50610188600a5481565b34801561028557600080fd5b5060005461029e9061010090046001600160a01b031681565b6040516001600160a01b039091168152602001610169565b3480156102c257600080fd5b5061018860065481565b3480156102d857600080fd5b5060015461029e906001600160a01b031681565b3480156102f857600080fd5b506101887f000000000000000000000000000000000000000000000000000000000000000081565b34801561032c57600080fd5b5061022261033b366004610b57565b610667565b34801561034c57600080fd5b50610222610788565b6002818154811061036557600080fd5b60009182526020909120600290910201805460019091015467ffffffffffffffff8083169350600160401b9092049091169083565b60005460ff16156103fd5760405162461bcd60e51b815260206004820152602260248201527f496e697469616c697a61626c653a20616c726561647920696e697469616c697a604482015261195960f21b60648201526084015b60405180910390fd5b600080546001600160a81b0319166101006001600160a01b039485160217600190811790915580546001600160a01b0319169190921617905542600855565b60005461010090046001600160a01b0316336001600160a01b0316146104a45760405162461bcd60e51b815260206004820152601f60248201527f53656e64657220646f6573206e6f742068617665207065726d697373696f6e0060448201526064016103f4565b6104ac610788565b60006104b88284610ab5565b905060006101006104cb61040080610b8f565b6104d790610400610b8f565b6104e2906008610b8f565b6104ec9190610bae565b6104f69085610bae565b9050600061010061050961040080610b8f565b61051590610400610b8f565b610520906008610b8f565b61052a9190610bae565b6105349084610bae565b905081811115610660576000604051806060016040528084846105579190610bd0565b67ffffffffffffffff1681526020016105907f000000000000000000000000000000000000000000000000000000000000000042610ab5565b67ffffffffffffffff9081168252600980546020938401526002805460018101825560008281528651919092027f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace81018054968801518616600160401b026001600160801b031990971692909516919091179490941790925560408401517f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5acf9093019290925560058590559054600a80549394509092909190610654908490610ab5565b90915550506000600955505b5050505050565b6001546001600160a01b0316336001600160a01b0316146106ca5760405162461bcd60e51b815260206004820152601f60248201527f53656e64657220646f6573206e6f742068617665207065726d697373696f6e0060448201526064016103f4565b6004548310156106d957505050565b6106e1610788565b60006007546006546106f39190610bd0565b9050478111156107005750475b8015610782576040516001600160a01b0384169082156108fc029083906000818181858888f1935050505015801561073c573d6000803e3d6000fd5b50826001600160a01b0316847f83617a1b0f847971f005bd162dde513cfe93df96e6293c3bbb5fe9c40629dd4c8360405161077991815260200190565b60405180910390a35b50505050565b60025460008190036107a6574260088190556107a390610963565b50565b426002600354815481106107bc576107bc610be3565b6000918252602090912060029091020154600160401b900467ffffffffffffffff161161095e576108226002600354815481106107fb576107fb610be3565b6000918252602090912060029091020154600160401b900467ffffffffffffffff16610963565b60026003548154811061083757610837610be3565b600091825260208220600290910201546004805467ffffffffffffffff909216929091610865908490610ab5565b9250508190555060026003548154811061088157610881610be3565b906000526020600020906002020160010154600a60008282546108a49190610bd0565b925050819055506040518060600160405280600067ffffffffffffffff168152602001600067ffffffffffffffff16815260200160008152506002600354815481106108f2576108f2610be3565b60009182526020808320845160029093020180549185015167ffffffffffffffff908116600160401b026001600160801b03199093169316929092171781556040909201516001928301556003805490919061094f908490610ab5565b909155505060035481036107a6575b6107a3425b600854811161096f5750565b600061097d601f600c610b8f565b61098a9062015180610b8f565b61099661040080610b8f565b6109a290610400610b8f565b670de0b6b3a7640000600a6109b961040080610b8f565b6109c590610400610b8f565b6109d0906008610b8f565b6004546005546109e09190610bd0565b6008546109ed9089610bd0565b6109f79190610b8f565b610a019190610b8f565b610a0b9190610b8f565b610a159190610b8f565b610a1f9190610bae565b610a299190610bae565b905060007f000000000000000000000000000000000000000000000000000000000000000060085484610a5c9190610bd0565b600a54610a699190610b8f565b610a739190610bae565b9050610a7f8183610ab5565b60066000828254610a909190610ab5565b90915550505060089190915550565b634e487b7160e01b600052601160045260246000fd5b80820180821115610ac857610ac8610a9f565b92915050565b600060208284031215610ae057600080fd5b5035919050565b6001600160a01b03811681146107a357600080fd5b60008060408385031215610b0f57600080fd5b8235610b1a81610ae7565b91506020830135610b2a81610ae7565b809150509250929050565b60008060408385031215610b4857600080fd5b50508035926020909101359150565b600080600060608486031215610b6c57600080fd5b833592506020840135610b7e81610ae7565b929592945050506040919091013590565b6000816000190483118215151615610ba957610ba9610a9f565b500290565b600082610bcb57634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610ac857610ac8610a9f565b634e487b7160e01b600052603260045260246000fdfea2646970667358221220621c542b85b6dbf17c53edcf1485b2df56304d74304d582cac0f8d9daf46655264736f6c63430008100033", "linkReferences": {}, "deployedLinkReferences": {} }