0 txs
0 calls
constructor
constructor(address _dealer, uint8 _speedMultiplier, address brevisProof)
functions
brevisProof
viewfunction brevisProof() view returns (address)
fundingRateByZK
viewfunction fundingRateByZK(address) view returns (int256)
fundingRateUpdateTimestamp
viewfunction fundingRateUpdateTimestamp(address) view returns (uint256)
isNewRateValid
viewfunction isNewRateValid(address perp, int256 newRate) view returns (bool)
owner
viewfunction owner() view returns (address)
rateBoundry
viewfunction rateBoundry(address perp) view returns (int256 lowerBoundary, int256 upperBoundary)
validateRequest
viewfunction validateRequest(bytes32 _requestId, uint64 _chainId, tuple _extractInfos) view returns (bool)
vkHash
viewfunction vkHash() view returns (bytes32)
brevisBatchCallback
nonpayablefunction brevisBatchCallback(uint64 _chainId, tuple[] _proofDataArray, bytes[] _appCircuitOutputs)
brevisCallback
nonpayablefunction brevisCallback(bytes32 _requestId, bytes _appCircuitOutput)
renounceOwnership
nonpayablefunction renounceOwnership()
resetFundRateByZK
nonpayablefunction resetFundRateByZK(address perp)
setVkHash
nonpayablefunction setVkHash(bytes32 _vkHash)
singleRun
nonpayablefunction singleRun(uint64 _chainId, tuple _proofData, bytes32 _merkleRoot, bytes32[] _merkleProof, uint8 _nodeIndex, bytes _appCircuitOutput)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
updateFundingRate
nonpayablefunction updateFundingRate(address perp, int256 rate)
updateFundingRates
nonpayablefunction updateFundingRates(address[] perpList, int256[] rateList)
events
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
No errors.
creation bytecode
0x60c06040523480156200001157600080fd5b5060405162002220380380620022208339810160408190526200003491620000dd565b80620000403362000070565b600180546001600160a01b0319166001600160a01b039283161790559290921660805260ff1660a052506200012e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b0381168114620000d857600080fd5b919050565b600080600060608486031215620000f357600080fd5b620000fe84620000c0565b9250602084015160ff811681146200011557600080fd5b91506200012560408501620000c0565b90509250925092565b60805160a0516120be62000162600039600061084b0152600081816103dd0152818161072e0152610a4301526120be6000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80638da5cb5b116100a2578063c7f5aaa011610071578063c7f5aaa014610238578063dace16871461024b578063e66e1ab11461025e578063ed1fe83b1461027e578063f2fde38b1461029157600080fd5b80638da5cb5b146101b85780639eb7a821146101dd578063b1fe088c146101f0578063c1fe90971461021857600080fd5b8063715018a6116100de578063715018a6146101675780637859f6d91461016f57806379d6b6a2146101825780637c08aa741461019557600080fd5b806344b75abe146101105780634fe840f51461012557806352f8f4d3146101415780635d1c29eb14610154575b600080fd5b61012361011e366004610f53565b6102a4565b005b61012e60045481565b6040519081526020015b60405180910390f35b61012361014f366004610fd3565b610450565b610123610162366004611065565b610472565b610123610527565b61012361017d366004611121565b61053b565b61012361019036600461113a565b610548565b6101a86101a33660046114a1565b610606565b6040519015158152602001610138565b6000546001600160a01b03165b6040516001600160a01b039091168152602001610138565b6101a86101eb36600461175b565b610675565b6102036101fe366004610fd3565b6106a2565b60408051928352602083019190915201610138565b61012e610226366004610fd3565b60036020526000908152604090205481565b6001546101c5906001600160a01b031681565b61012361025936600461175b565b610922565b61012e61026c366004610fd3565b60026020526000908152604090205481565b61012361028c366004611787565b610a7a565b61012361029f366004610fd3565b610c1c565b6102ac610c95565b8281146102f95760405162461bcd60e51b8152602060048201526016602482015275082e4e4c2f240d8cadccee8d0e640dad2e6dac2e8c6d60531b60448201526064015b60405180910390fd5b60005b838110156103c557600085858381811061031857610318611838565b905060200201602081019061032d9190610fd3565b9050600084848481811061034357610343611838565b9050602002013590506103568282610675565b6103a25760405162461bcd60e51b815260206004820152601c60248201527f46554e44494e475f524154455f4348414e47455f544f4f5f4d5543480000000060448201526064016102f0565b506001600160a01b031660009081526002602052604090204290556001016102fc565b5060405163854a804160e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063854a80419061041890879087908790879060040161184e565b600060405180830381600087803b15801561043257600080fd5b505af1158015610446573d6000803e3d6000fd5b5050505050505050565b610458610c95565b6001600160a01b0316600090815260036020526040812055565b600154604051632247cd8f60e01b81526001600160a01b0390911690632247cd8f906104ac908b908b908b908b908b908b906004016118d3565b60006040518083038186803b1580156104c457600080fd5b505afa1580156104d8573d6000803e3d6000fd5b5050505081816040516104ec92919061196b565b60405180910390208760400135146105165760405162461bcd60e51b81526004016102f09061197b565b610446873560608901358484610cef565b61052f610c95565b6105396000610d9e565b565b610543610c95565b600455565b600154604051632cc27dc960e11b81526004810185905260009182916001600160a01b0390911690635984fb92906024016040805180830381865afa158015610595573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105b991906119b0565b9150915083836040516105cd92919061196b565b604051809103902082146105f35760405162461bcd60e51b81526004016102f09061197b565b6105ff85828686610cef565b5050505050565b600154604051631f022a9d60e21b81526000916001600160a01b031690637c08aa749061063b90879087908790600401611b23565b60006040518083038186803b15801561065357600080fd5b505afa158015610667573d6000803e3d6000fd5b506001979650505050505050565b6000806000610683856106a2565b915091508184121580156106975750808413155b925050505b92915050565b6000806000836001600160a01b03166395196f7e6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106e5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107099190611c50565b604051634f33cb5360e01b81526001600160a01b0386811660048301529192506000917f00000000000000000000000000000000000000000000000000000000000000001690634f33cb5390602401600060405180830381865afa158015610775573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261079d9190810190611cd1565b9050600081608001516001600160a01b031663604096326040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107e3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108079190611c50565b6001600160a01b0387166000908152600260205260408120549192509061082e9042611d9d565b905060006108a4670de0b6b3a764000084620151808760200151867f000000000000000000000000000000000000000000000000000000000000000060ff166108779190611db0565b6108819190611db0565b61088b9190611ddd565b6108959190611db0565b61089f9190611ddd565b610dee565b90506000670de0b6b3a76400006108ba85610dee565b6001600160a01b038b166000908152600360205260409020546108dd9190611df1565b6108e79190611e21565b9050816108f48288611e4f565b6108fe9190611e77565b97508161090b8288611e4f565b6109159190611e4f565b9650505050505050915091565b61092a610c95565b6109348282610675565b6109805760405162461bcd60e51b815260206004820152601c60248201527f46554e44494e475f524154455f4348414e47455f544f4f5f4d5543480000000060448201526064016102f0565b6001600160a01b038216600090815260026020526040808220429055805160018082528183019092529081602001602082028036833701905050905082816000815181106109d0576109d0611838565b6001600160a01b0392909216602092830291909101909101526040805160018082528183019092526000918160200160208202803683370190505090508281600081518110610a2157610a21611838565b602090810291909101015260405163854a804160e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063854a8041906104189085908590600401611e9e565b828114610abc5760405162461bcd60e51b815260206004820152601060248201526f0d8cadccee8d040dcdee840dac2e8c6d60831b60448201526064016102f0565b60015460405163cf7ac5a960e01b81526001600160a01b039091169063cf7ac5a990610af090889088908890600401611f15565b60006040518083038186803b158015610b0857600080fd5b505afa158015610b1c573d6000803e3d6000fd5b5050505060005b83811015610c1457828282818110610b3d57610b3d611838565b9050602002810190610b4f9190611f88565b604051610b5d92919061196b565b6040518091039020858583818110610b7757610b77611838565b905060a002016040013514610b9e5760405162461bcd60e51b81526004016102f09061197b565b610c02858583818110610bb357610bb3611838565b905060a0020160000135868684818110610bcf57610bcf611838565b905060a0020160600135858585818110610beb57610beb611838565b9050602002810190610bfd9190611f88565b610cef565b80610c0c81611fce565b915050610b23565b505050505050565b610c24610c95565b6001600160a01b038116610c895760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016102f0565b610c9281610d9e565b50565b6000546001600160a01b031633146105395760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102f0565b8260045414610d2d5760405162461bcd60e51b815260206004820152600a602482015269696e76616c696420766b60b01b60448201526064016102f0565b6000806000610d3c8585610e5c565b92509250925081610d6757610d59816001600160f81b0316610dee565b610d6290611fe7565b610d79565b610d79816001600160f81b0316610dee565b6001600160a01b03909316600090815260036020526040902092909255505050505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006001600160ff1b03821115610e585760405162461bcd60e51b815260206004820152602860248201527f53616665436173743a2076616c756520646f65736e27742066697420696e2061604482015267371034b73a191a9b60c11b60648201526084016102f0565b5090565b6000808060348414610ea85760405162461bcd60e51b81526020600482015260156024820152740929cac82989288be9eaaa8a0aaa8be988a9c8ea89605b1b60448201526064016102f0565b610eb6601460008688612003565b610ebf9161202d565b60601c925084846014818110610ed757610ed7611838565b9091013560f81c6001149250610ef39050603460158688612003565b610efc91612060565b60081c90509250925092565b60008083601f840112610f1a57600080fd5b5081356001600160401b03811115610f3157600080fd5b6020830191508360208260051b8501011115610f4c57600080fd5b9250929050565b60008060008060408587031215610f6957600080fd5b84356001600160401b0380821115610f8057600080fd5b610f8c88838901610f08565b90965094506020870135915080821115610fa557600080fd5b50610fb287828801610f08565b95989497509550505050565b6001600160a01b0381168114610c9257600080fd5b600060208284031215610fe557600080fd5b8135610ff081610fbe565b9392505050565b80356001600160401b038116811461100e57600080fd5b919050565b803560ff8116811461100e57600080fd5b60008083601f84011261103657600080fd5b5081356001600160401b0381111561104d57600080fd5b602083019150836020828501011115610f4c57600080fd5b600080600080600080600080888a0361014081121561108357600080fd5b61108c8a610ff7565b985060a0601f19820112156110a057600080fd5b5060208901965060c0890135955060e08901356001600160401b03808211156110c857600080fd5b6110d48c838d01610f08565b90975095508591506110e96101008c01611013565b94506101208b013591508082111561110057600080fd5b5061110d8b828c01611024565b999c989b5096995094979396929594505050565b60006020828403121561113357600080fd5b5035919050565b60008060006040848603121561114f57600080fd5b8335925060208401356001600160401b0381111561116c57600080fd5b61117886828701611024565b9497909650939450505050565b634e487b7160e01b600052604160045260246000fd5b60405160a081016001600160401b03811182821017156111bd576111bd611185565b60405290565b604051608081016001600160401b03811182821017156111bd576111bd611185565b604051606081016001600160401b03811182821017156111bd576111bd611185565b60405160e081016001600160401b03811182821017156111bd576111bd611185565b604051601f8201601f191681016001600160401b038111828210171561125157611251611185565b604052919050565b60006001600160401b0382111561127257611272611185565b5060051b60200190565b600082601f83011261128d57600080fd5b813560206112a261129d83611259565b611229565b82815260a092830285018201928282019190878511156112c157600080fd5b8387015b8581101561132c5781818a0312156112dd5760008081fd5b6112e561119b565b81358152858201356112f681610fbe565b818701526040828101359082015260608083013590820152608061131b818401610ff7565b9082015284529284019281016112c5565b5090979650505050505050565b60006001600160401b0382111561135257611352611185565b50601f01601f191660200190565b600082601f83011261137157600080fd5b8135602061138161129d83611259565b82815260059290921b840181019181810190868411156113a057600080fd5b8286015b848110156114965780356001600160401b03808211156113c45760008081fd5b9088019060a0828b03601f19018113156113de5760008081fd5b6113e661119b565b878401358152604080850135898301526060611403818701610ff7565b828401526080611414818801610ff7565b8483015293860135938585111561142d57600091508182fd5b84870196508e603f88011261144457600095508586fd5b8a870135955061145661129d87611339565b94508585528e8387890101111561146f57600091508182fd5b858388018c87013760009585018b01959095525050918201528452509183019183016113a4565b509695505050505050565b6000806000606084860312156114b657600080fd5b833592506114c660208501610ff7565b91506001600160401b03604085013511156114e057600080fd5b608060408501358501860312156114f657600080fd5b6114fe6111c3565b60408501358501803582526001600160401b03602090910135111561152257600080fd5b60408501358501602081013501601f01861361153d57600080fd5b61155661129d6040870135870160208101350135611259565b602060408701358701818101350180358084528383019392600a9190911b9091010188101561158457600080fd5b6020604088013588018181013501015b60206040890135890181810135018035600a1b01018110156116d857610400818a0312156115c157600080fd5b6115c96111e5565b6115d282610ff7565b81526115e060208301610ff7565b602082015289605f8301126115f457600080fd5b6115fc61119b565b808b6104008501111561160e57600080fd5b604084015b61040085018110156116c05760c0818e03121561162f57600080fd5b6116376111e5565b6080828f03121561164757600080fd5b61164f6111c3565b61165883611013565b815261166660208401610ff7565b60208201526116786040840135610fbe565b60408301356040820152606083013560608201528082525061169c60808301610ff7565b602082015260a082013560408201528084525060208301925060c081019050611613565b50604083015250835260209092019161040001611594565b506020830152506001600160401b036040868101358701013511156116fc57600080fd5b611712866040878101358801908101350161127c565b60408201526001600160401b036060604087013587010135111561173557600080fd5b61174b8660408701358701606081013501611360565b6060820152809150509250925092565b6000806040838503121561176e57600080fd5b823561177981610fbe565b946020939093013593505050565b60008060008060006060868803121561179f57600080fd5b6117a886610ff7565b945060208601356001600160401b03808211156117c457600080fd5b818801915088601f8301126117d857600080fd5b8135818111156117e757600080fd5b89602060a0830285010111156117fc57600080fd5b60208301965080955050604088013591508082111561181a57600080fd5b5061182788828901610f08565b969995985093965092949392505050565b634e487b7160e01b600052603260045260246000fd5b6040808252810184905260008560608301825b8781101561189157823561187481610fbe565b6001600160a01b0316825260209283019290910190600101611861565b5083810360208581019190915285825291508590820160005b868110156118c6578235825291830191908301906001016118aa565b5098975050505050505050565b60006101206001600160401b038916835261191c602084018980358252602081013560208301526040810135604083015260608101356060830152608081013560808301525050565b60c0830187905260e0830181905282018490526101406001600160fb1b0385111561194657600080fd5b8460051b80878386013760ff9490941661010084015291909201019695505050505050565b8183823760009101908152919050565b6020808252818101527f6661696c656420746f206f70656e206f757470757420636f6d6d69746d656e74604082015260600190565b600080604083850312156119c357600080fd5b505080516020909101519092909150565b600081518084526020808501945080840160005b83811015611a4057815180518852838101516001600160a01b03168489015260408082015190890152606080820151908901526080908101516001600160401b03169088015260a090960195908201906001016119e8565b509495945050505050565b60005b83811015611a66578181015183820152602001611a4e565b50506000910152565b600081518084526020808501808196508360051b8101915082860160005b85811015611b1657828403895281518051855285810151868601526040808201516001600160401b03908116918701919091526060808301519091169086015260809081015160a091860182905280519186018290529060c090611af681838901858b01611a4b565b9a87019a601f01601f191695909501909401935090840190600101611a8d565b5091979650505050505050565b6000606085835260206001600160401b03808716828601526040838187015260e0860187518588015283880151608080818a01528282518085526101008b019150878401945060009350835b81811015611c025785518051891684528981015189168a850152870151878401865b6005811015611beb5782518051805160ff1684528d8101518d168e8501528b8101516001600160a01b03168c8501528e01518e8401528c8101518c16888401528a015160a0830152918b019160c090910190600101611b91565b505050948801946104009290920191600101611b6f565b5050848b01519650605f199550858a82030160a08b0152611c2381886119d4565b96505050505050828601519250808583030160c086015250611c458183611a6f565b979650505050505050565b600060208284031215611c6257600080fd5b5051919050565b805161100e81610fbe565b600082601f830112611c8557600080fd5b8151611c9361129d82611339565b818152846020838601011115611ca857600080fd5b611cb9826020830160208701611a4b565b949350505050565b8051801515811461100e57600080fd5b600060208284031215611ce357600080fd5b81516001600160401b0380821115611cfa57600080fd5b9083019060e08286031215611d0e57600080fd5b611d16611207565b82518152602083015160208201526040830151604082015260608301516060820152611d4460808401611c69565b608082015260a083015182811115611d5b57600080fd5b611d6787828601611c74565b60a083015250611d7960c08401611cc1565b60c082015295945050505050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561069c5761069c611d87565b808202811582820484141761069c5761069c611d87565b634e487b7160e01b600052601260045260246000fd5b600082611dec57611dec611dc7565b500490565b80820260008212600160ff1b84141615611e0d57611e0d611d87565b818105831482151761069c5761069c611d87565b600082611e3057611e30611dc7565b600160ff1b821460001984141615611e4a57611e4a611d87565b500590565b8082018281126000831280158216821582161715611e6f57611e6f611d87565b505092915050565b8181036000831280158383131683831282161715611e9757611e97611d87565b5092915050565b604080825283519082018190526000906020906060840190828701845b82811015611ee05781516001600160a01b031684529284019290840190600101611ebb565b5050508381038285015284518082528583019183019060005b8181101561132c57835183529284019291840191600101611ef9565b6001600160401b0384168152604060208201819052810182905260008360608301825b8581101561149657611f75828480358252602081013560208301526040810135604083015260608101356060830152608081013560808301525050565b60a0928301929190910190600101611f38565b6000808335601e19843603018112611f9f57600080fd5b8301803591506001600160401b03821115611fb957600080fd5b602001915036819003821315610f4c57600080fd5b600060018201611fe057611fe0611d87565b5060010190565b6000600160ff1b8201611ffc57611ffc611d87565b5060000390565b6000808585111561201357600080fd5b8386111561202057600080fd5b5050820193919092039150565b6bffffffffffffffffffffffff198135818116916014851015611e6f5760149490940360031b84901b1690921692915050565b60ff19813581811691601f851015611e6f57601f9490940360031b84901b169092169291505056fea2646970667358221220fa7e8fb3b74afa4294ad357cac10ce56a8b1b00e995f3d845b686cab2767323464736f6c634300081300330000000000000000000000002f7c3cf9d9280b165981311b822becc4e05fe63500000000000000000000000000000000000000000000000000000000000000030000000000000000000000002294e22000defe09a307363f7acd8aaa1fbc1983