@stake-dao/reader 0.4.27 → 0.4.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/bytecodes/votemarket/batchCampaigns.js +6 -3
- package/dist/esm/bytecodes/votemarket/batchCampaigns.js.map +1 -1
- package/dist/esm/bytecodes/votemarket/batchClaimableData.js +21 -0
- package/dist/esm/bytecodes/votemarket/batchClaimableData.js.map +1 -0
- package/dist/esm/bytecodes/votemarket/batchGaugesWeight.js +13 -0
- package/dist/esm/bytecodes/votemarket/batchGaugesWeight.js.map +1 -0
- package/dist/esm/bytecodes/votemarket/batchVotes.js +13 -0
- package/dist/esm/bytecodes/votemarket/batchVotes.js.map +1 -0
- package/dist/esm/bytecodes/votemarket/curve/batchCurveGaugesMetadata.js +5 -3
- package/dist/esm/bytecodes/votemarket/curve/batchCurveGaugesMetadata.js.map +1 -1
- package/dist/esm/bytecodes/votemarket/curve/batchCurveOldLps.js +3 -2
- package/dist/esm/bytecodes/votemarket/curve/batchCurveOldLps.js.map +1 -1
- package/dist/esm/endpoints.js +0 -1
- package/dist/esm/endpoints.js.map +1 -1
- package/dist/esm/index.js +7 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lockers/fetch/index.js +10 -0
- package/dist/esm/lockers/fetch/index.js.map +1 -1
- package/dist/esm/lockers/utils/getHttpCalls.js +8 -0
- package/dist/esm/lockers/utils/getHttpCalls.js.map +1 -1
- package/dist/esm/sdt/fetch.js +20 -26
- package/dist/esm/sdt/fetch.js.map +1 -1
- package/dist/esm/strategies/pancakeswap/endpoints.js +1 -1
- package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
- package/dist/esm/utils.js +43 -19
- package/dist/esm/utils.js.map +1 -1
- package/dist/esm/votemarket/curve/config.js +4 -1
- package/dist/esm/votemarket/curve/config.js.map +1 -1
- package/dist/esm/votemarket/curve/fetchCurveGauges.js +6 -1
- package/dist/esm/votemarket/curve/fetchCurveGauges.js.map +1 -1
- package/dist/esm/votemarket/curve/fetchSnapshotUserData.js +14 -9
- package/dist/esm/votemarket/curve/fetchSnapshotUserData.js.map +1 -1
- package/dist/esm/votemarket/fetchCampaigns.js +115 -14
- package/dist/esm/votemarket/fetchCampaigns.js.map +1 -1
- package/dist/esm/votemarket/fetchClaimableData.js +36 -0
- package/dist/esm/votemarket/fetchClaimableData.js.map +1 -0
- package/dist/esm/votemarket/fetchEpochVotes.js +30 -0
- package/dist/esm/votemarket/fetchEpochVotes.js.map +1 -0
- package/dist/esm/votemarket/generateProofs/config.js +53 -0
- package/dist/esm/votemarket/generateProofs/config.js.map +1 -0
- package/dist/esm/votemarket/generateProofs/getBlockProof.js +33 -0
- package/dist/esm/votemarket/generateProofs/getBlockProof.js.map +1 -0
- package/dist/esm/votemarket/generateProofs/getGaugeProof.js +50 -0
- package/dist/esm/votemarket/generateProofs/getGaugeProof.js.map +1 -0
- package/dist/esm/votemarket/generateProofs/getUserProof.js +49 -0
- package/dist/esm/votemarket/generateProofs/getUserProof.js.map +1 -0
- package/dist/types/bytecodes/votemarket/batchCampaigns.d.ts.map +1 -1
- package/dist/types/bytecodes/votemarket/batchClaimableData.d.ts +4 -0
- package/dist/types/bytecodes/votemarket/batchClaimableData.d.ts.map +1 -0
- package/dist/types/bytecodes/votemarket/batchGaugesWeight.d.ts +4 -0
- package/dist/types/bytecodes/votemarket/batchGaugesWeight.d.ts.map +1 -0
- package/dist/types/bytecodes/votemarket/batchVotes.d.ts +4 -0
- package/dist/types/bytecodes/votemarket/batchVotes.d.ts.map +1 -0
- package/dist/types/bytecodes/votemarket/curve/batchCurveGaugesMetadata.d.ts.map +1 -1
- package/dist/types/bytecodes/votemarket/curve/batchCurveOldLps.d.ts.map +1 -1
- package/dist/types/endpoints.d.ts +0 -1
- package/dist/types/endpoints.d.ts.map +1 -1
- package/dist/types/index.d.ts +5 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/lockers/fetch/index.d.ts.map +1 -1
- package/dist/types/lockers/utils/getHttpCalls.d.ts +3 -0
- package/dist/types/lockers/utils/getHttpCalls.d.ts.map +1 -1
- package/dist/types/sdt/fetch.d.ts +2 -2
- package/dist/types/sdt/fetch.d.ts.map +1 -1
- package/dist/types/utils.d.ts +13 -1
- package/dist/types/utils.d.ts.map +1 -1
- package/dist/types/votemarket/curve/config.d.ts +8 -1
- package/dist/types/votemarket/curve/config.d.ts.map +1 -1
- package/dist/types/votemarket/curve/fetchCurveGauges.d.ts.map +1 -1
- package/dist/types/votemarket/curve/fetchSnapshotUserData.d.ts +1 -0
- package/dist/types/votemarket/curve/fetchSnapshotUserData.d.ts.map +1 -1
- package/dist/types/votemarket/fetchCampaigns.d.ts.map +1 -1
- package/dist/types/votemarket/fetchClaimableData.d.ts +6 -0
- package/dist/types/votemarket/fetchClaimableData.d.ts.map +1 -0
- package/dist/types/votemarket/fetchEpochVotes.d.ts +9 -0
- package/dist/types/votemarket/fetchEpochVotes.d.ts.map +1 -0
- package/dist/types/votemarket/generateProofs/config.d.ts +32 -0
- package/dist/types/votemarket/generateProofs/config.d.ts.map +1 -0
- package/dist/types/votemarket/generateProofs/getBlockProof.d.ts +6 -0
- package/dist/types/votemarket/generateProofs/getBlockProof.d.ts.map +1 -0
- package/dist/types/votemarket/generateProofs/getGaugeProof.d.ts +6 -0
- package/dist/types/votemarket/generateProofs/getGaugeProof.d.ts.map +1 -0
- package/dist/types/votemarket/generateProofs/getUserProof.d.ts +6 -0
- package/dist/types/votemarket/generateProofs/getUserProof.d.ts.map +1 -0
- package/dist/types/votemarket/types.d.ts +31 -8
- package/dist/types/votemarket/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/bytecodes/votemarket/batchCampaigns.ts +6 -3
- package/src/bytecodes/votemarket/batchClaimableData.ts +24 -0
- package/src/bytecodes/votemarket/batchGaugesWeight.ts +15 -0
- package/src/bytecodes/votemarket/batchVotes.ts +15 -0
- package/src/bytecodes/votemarket/curve/batchCurveGaugesMetadata.ts +5 -3
- package/src/bytecodes/votemarket/curve/batchCurveOldLps.ts +3 -2
- package/src/endpoints.ts +0 -1
- package/src/index.ts +10 -0
- package/src/lockers/fetch/index.ts +13 -0
- package/src/lockers/utils/getHttpCalls.ts +8 -0
- package/src/sdt/fetch.ts +29 -27
- package/src/strategies/pancakeswap/endpoints.ts +1 -1
- package/src/utils.ts +66 -19
- package/src/votemarket/curve/config.ts +5 -1
- package/src/votemarket/curve/fetchCurveGauges.ts +15 -2
- package/src/votemarket/curve/fetchSnapshotUserData.ts +16 -9
- package/src/votemarket/fetchCampaigns.ts +148 -15
- package/src/votemarket/fetchClaimableData.ts +50 -0
- package/src/votemarket/fetchEpochVotes.ts +48 -0
- package/src/votemarket/generateProofs/config.ts +53 -0
- package/src/votemarket/generateProofs/getBlockProof.ts +48 -0
- package/src/votemarket/generateProofs/getGaugeProof.ts +75 -0
- package/src/votemarket/generateProofs/getUserProof.ts +74 -0
- package/src/votemarket/types.ts +36 -8
|
@@ -2,7 +2,7 @@ import type { BatchMetaData } from '../types.js'
|
|
|
2
2
|
|
|
3
3
|
const batchCampaigns: BatchMetaData = {
|
|
4
4
|
bytecode: {
|
|
5
|
-
1: '0x608060405234801561000f575f80fd5b5060405161123a38038061123a83398181016040528101906100319190610879565b5f8390505f821461004257816100b0565b8073ffffffffffffffffffffffffffffffffffffffff16637274e30d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561008b573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100af91906108c9565b5b91505f83836100bf9190610921565b67ffffffffffffffff8111156100d8576100d7610954565b5b60405190808252806020026020018201604052801561011157816020015b6100fe6106c2565b8152602001906001900390816100f65790505b5090505f8490505b83811015610693576101296106c2565b81815f0181815250508373ffffffffffffffffffffffffffffffffffffffff16635598f8cc836040518263ffffffff1660e01b815260040161016b9190610990565b61016060405180830381865afa158015610187573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101ab9190610b47565b81602001819052508373ffffffffffffffffffffffffffffffffffffffff166355b88ff6836040518263ffffffff1660e01b81526004016101ec9190610990565b602060405180830381865afa158015610207573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061022b9190610ba8565b8160400190151590811515815250508373ffffffffffffffffffffffffffffffffffffffff1663df4c3d10836040518263ffffffff1660e01b81526004016102739190610990565b602060405180830381865afa15801561028e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102b29190610ba8565b8160600190151590811515815250508373ffffffffffffffffffffffffffffffffffffffff16636fb08df2836040518263ffffffff1660e01b81526004016102fa9190610990565b5f60405180830381865afa158015610314573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f8201168201806040525081019061033c9190610c9b565b81608001819052505f62093a808573ffffffffffffffffffffffffffffffffffffffff1663766718086040518163ffffffff1660e01b8152600401602060405180830381865afa158015610392573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103b691906108c9565b6103c09190610ce2565b90505f82604001516103d257816103dd565b826020015161012001515b90508573ffffffffffffffffffffffffffffffffffffffff166352aed57885836040518363ffffffff1660e01b815260040161041a929190610d15565b608060405180830381865afa158015610435573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104599190610db1565b8360a001819052508573ffffffffffffffffffffffffffffffffffffffff16639dd5359785846040518363ffffffff1660e01b815260040161049c929190610d15565b602060405180830381865afa1580156104b7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104db91906108c9565b8360c00181815250505f8290505b83602001516101000151811115610658575f8773ffffffffffffffffffffffffffffffffffffffff166317f3a72287846040518363ffffffff1660e01b8152600401610536929190610d15565b608060405180830381865afa158015610551573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105759190610e51565b90505f8160200151146105d857805f015185602001516080019060ff16908160ff16815250508060200151856020015160c00181815250508060400151856020015160a00181815250508060600151856020015161012001818152505050610658565b8773ffffffffffffffffffffffffffffffffffffffff1663ac4746ab6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610621573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061064591906108c9565b826106509190610921565b9150506104e9565b83868a876106669190610921565b8151811061067757610676610e7c565b5b6020026020010181905250505050508080600101915050610119565b505f816040516020016106a69190611219565b6040516020818303038152906040529050602081018059038082f35b6040518060e001604052805f81526020016106db61070b565b81526020015f151581526020015f15158152602001606081526020016106ff6107b5565b81526020015f81525090565b6040518061016001604052805f81526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f60ff1681526020015f81526020015f81526020015f81526020015f81526020015f81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b60405180608001604052805f81526020015f81526020015f81526020015f151581525090565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610815826107ec565b9050919050565b6108258161080b565b811461082f575f80fd5b50565b5f815190506108408161081c565b92915050565b5f819050919050565b61085881610846565b8114610862575f80fd5b50565b5f815190506108738161084f565b92915050565b5f805f606084860312156108905761088f6107e4565b5b5f61089d86828701610832565b93505060206108ae86828701610865565b92505060406108bf86828701610865565b9150509250925092565b5f602082840312156108de576108dd6107e4565b5b5f6108eb84828501610865565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61092b82610846565b915061093683610846565b925082820390508181111561094e5761094d6108f4565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61098a81610846565b82525050565b5f6020820190506109a35f830184610981565b92915050565b5f80fd5b5f601f19601f8301169050919050565b6109c6826109ad565b810181811067ffffffffffffffff821117156109e5576109e4610954565b5b80604052505050565b5f6109f76107db565b9050610a0382826109bd565b919050565b5f60ff82169050919050565b610a1d81610a08565b8114610a27575f80fd5b50565b5f81519050610a3881610a14565b92915050565b5f6101608284031215610a5457610a536109a9565b5b610a5f6101606109ee565b90505f610a6e84828501610865565b5f830152506020610a8184828501610832565b6020830152506040610a9584828501610832565b6040830152506060610aa984828501610832565b6060830152506080610abd84828501610a2a565b60808301525060a0610ad184828501610865565b60a08301525060c0610ae584828501610865565b60c08301525060e0610af984828501610865565b60e083015250610100610b0e84828501610865565b61010083015250610120610b2484828501610865565b61012083015250610140610b3a84828501610832565b6101408301525092915050565b5f6101608284031215610b5d57610b5c6107e4565b5b5f610b6a84828501610a3e565b91505092915050565b5f8115159050919050565b610b8781610b73565b8114610b91575f80fd5b50565b5f81519050610ba281610b7e565b92915050565b5f60208284031215610bbd57610bbc6107e4565b5b5f610bca84828501610b94565b91505092915050565b5f80fd5b5f67ffffffffffffffff821115610bf157610bf0610954565b5b602082029050602081019050919050565b5f80fd5b5f610c18610c1384610bd7565b6109ee565b90508083825260208201905060208402830185811115610c3b57610c3a610c02565b5b835b81811015610c645780610c508882610832565b845260208401935050602081019050610c3d565b5050509392505050565b5f82601f830112610c8257610c81610bd3565b5b8151610c92848260208601610c06565b91505092915050565b5f60208284031215610cb057610caf6107e4565b5b5f82015167ffffffffffffffff811115610ccd57610ccc6107e8565b5b610cd984828501610c6e565b91505092915050565b5f610cec82610846565b9150610cf783610846565b9250828201905080821115610d0f57610d0e6108f4565b5b92915050565b5f604082019050610d285f830185610981565b610d356020830184610981565b9392505050565b5f60808284031215610d5157610d506109a9565b5b610d5b60806109ee565b90505f610d6a84828501610865565b5f830152506020610d7d84828501610865565b6020830152506040610d9184828501610865565b6040830152506060610da584828501610b94565b60608301525092915050565b5f60808284031215610dc657610dc56107e4565b5b5f610dd384828501610d3c565b91505092915050565b5f60808284031215610df157610df06109a9565b5b610dfb60806109ee565b90505f610e0a84828501610a2a565b5f830152506020610e1d84828501610865565b6020830152506040610e3184828501610865565b6040830152506060610e4584828501610865565b60608301525092915050565b5f60808284031215610e6657610e656107e4565b5b5f610e7384828501610ddc565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b610edb81610846565b82525050565b610eea8161080b565b82525050565b610ef981610a08565b82525050565b61016082015f820151610f145f850182610ed2565b506020820151610f276020850182610ee1565b506040820151610f3a6040850182610ee1565b506060820151610f4d6060850182610ee1565b506080820151610f606080850182610ef0565b5060a0820151610f7360a0850182610ed2565b5060c0820151610f8660c0850182610ed2565b5060e0820151610f9960e0850182610ed2565b50610100820151610fae610100850182610ed2565b50610120820151610fc3610120850182610ed2565b50610140820151610fd8610140850182610ee1565b50505050565b610fe781610b73565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f6110218383610ee1565b60208301905092915050565b5f602082019050919050565b5f61104382610fed565b61104d8185610ff7565b935061105883611007565b805f5b8381101561108857815161106f8882611016565b975061107a8361102d565b92505060018101905061105b565b5085935050505092915050565b608082015f8201516110a95f850182610ed2565b5060208201516110bc6020850182610ed2565b5060408201516110cf6040850182610ed2565b5060608201516110e26060850182610fde565b50505050565b5f61028083015f8301516110fe5f860182610ed2565b5060208301516111116020860182610eff565b506040830151611125610180860182610fde565b5060608301516111396101a0860182610fde565b5060808301518482036101c08601526111528282611039565b91505060a08301516111686101e0860182611095565b5060c083015161117c610260860182610ed2565b508091505092915050565b5f61119283836110e8565b905092915050565b5f602082019050919050565b5f6111b082610ea9565b6111ba8185610eb3565b9350836020820285016111cc85610ec3565b805f5b8581101561120757848403895281516111e88582611187565b94506111f38361119a565b925060208a019950506001810190506111cf565b50829750879550505050505092915050565b5f6020820190508181035f83015261123181846111a6565b90509291505056fe',
|
|
5
|
+
1: '0x608060405234801561000f575f80fd5b50604051611461380380611461833981810160405281019061003191906109c6565b5f8390505f821461004257816100b0565b8073ffffffffffffffffffffffffffffffffffffffff16637274e30d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561008b573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100af9190610a16565b5b91505f83836100bf9190610a6e565b67ffffffffffffffff8111156100d8576100d7610aa1565b5b60405190808252806020026020018201604052801561011157816020015b6100fe610809565b8152602001906001900390816100f65790505b5090505f8490505b838110156107da57610129610809565b81815f0181815250508373ffffffffffffffffffffffffffffffffffffffff16635598f8cc836040518263ffffffff1660e01b815260040161016b9190610add565b61016060405180830381865afa158015610187573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101ab9190610c94565b81602001819052508373ffffffffffffffffffffffffffffffffffffffff166355b88ff6836040518263ffffffff1660e01b81526004016101ec9190610add565b602060405180830381865afa158015610207573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061022b9190610cf5565b8160400190151590811515815250508373ffffffffffffffffffffffffffffffffffffffff1663df4c3d10836040518263ffffffff1660e01b81526004016102739190610add565b602060405180830381865afa15801561028e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102b29190610cf5565b8160600190151590811515815250508373ffffffffffffffffffffffffffffffffffffffff16636fb08df2836040518263ffffffff1660e01b81526004016102fa9190610add565b5f60405180830381865afa158015610314573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f8201168201806040525081019061033c9190610de8565b81608001819052505f4282602001516101000151116103d55762093a808573ffffffffffffffffffffffffffffffffffffffff1663766718086040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103a2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103c69190610a16565b6103d09190610e2f565b6103e0565b816020015161010001515b905081602001516080015160ff1667ffffffffffffffff81111561040757610406610aa1565b5b60405190808252806020026020018201604052801561044057816020015b61042d61084c565b8152602001906001900390816104255790505b508260a001819052505f5b82602001516080015160ff168110156105a85761046661084c565b5f62093a80836104769190610e62565b8560200151610100015161048a9190610e2f565b90505f62093a808461049c9190610e62565b62093a80876020015161010001516104b49190610e2f565b6104be9190610e2f565b90508873ffffffffffffffffffffffffffffffffffffffff166352aed57888846040518363ffffffff1660e01b81526004016104fb929190610ea3565b608060405180830381865afa158015610516573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061053a9190610eca565b865f0187602001886040018960600184151515158152508481525084815250848152505050505081836080018181525050808360a0018181525050828660a00151858151811061058d5761058c610f2e565b5b6020026020010181905250505050808060010191505061044b565b508473ffffffffffffffffffffffffffffffffffffffff16639dd5359784836040518363ffffffff1660e01b81526004016105e4929190610ea3565b602060405180830381865afa1580156105ff573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106239190610a16565b8260c00181815250505f8190505b826020015161010001518111156107a0575f8673ffffffffffffffffffffffffffffffffffffffff166317f3a72286846040518363ffffffff1660e01b815260040161067e929190610ea3565b608060405180830381865afa158015610699573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106bd9190610fd0565b90505f81602001511461072057805f015184602001516080019060ff16908160ff16815250508060200151846020015160c00181815250508060400151846020015160a001818152505080606001518460200151610120018181525050506107a0565b8673ffffffffffffffffffffffffffffffffffffffff1663ac4746ab6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610769573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061078d9190610a16565b826107989190610a6e565b915050610631565b828589866107ae9190610a6e565b815181106107bf576107be610f2e565b5b60200260200101819052505050508080600101915050610119565b505f816040516020016107ed9190611440565b6040516020818303038152906040529050602081018059038082f35b6040518060e001604052805f815260200161082261087e565b81526020015f151581526020015f1515815260200160608152602001606081526020015f81525090565b6040518060c001604052805f81526020015f81526020015f81526020015f151581526020015f81526020015f81525090565b6040518061016001604052805f81526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f60ff1681526020015f81526020015f81526020015f81526020015f81526020015f81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61096282610939565b9050919050565b61097281610958565b811461097c575f80fd5b50565b5f8151905061098d81610969565b92915050565b5f819050919050565b6109a581610993565b81146109af575f80fd5b50565b5f815190506109c08161099c565b92915050565b5f805f606084860312156109dd576109dc610931565b5b5f6109ea8682870161097f565b93505060206109fb868287016109b2565b9250506040610a0c868287016109b2565b9150509250925092565b5f60208284031215610a2b57610a2a610931565b5b5f610a38848285016109b2565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610a7882610993565b9150610a8383610993565b9250828203905081811115610a9b57610a9a610a41565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610ad781610993565b82525050565b5f602082019050610af05f830184610ace565b92915050565b5f80fd5b5f601f19601f8301169050919050565b610b1382610afa565b810181811067ffffffffffffffff82111715610b3257610b31610aa1565b5b80604052505050565b5f610b44610928565b9050610b508282610b0a565b919050565b5f60ff82169050919050565b610b6a81610b55565b8114610b74575f80fd5b50565b5f81519050610b8581610b61565b92915050565b5f6101608284031215610ba157610ba0610af6565b5b610bac610160610b3b565b90505f610bbb848285016109b2565b5f830152506020610bce8482850161097f565b6020830152506040610be28482850161097f565b6040830152506060610bf68482850161097f565b6060830152506080610c0a84828501610b77565b60808301525060a0610c1e848285016109b2565b60a08301525060c0610c32848285016109b2565b60c08301525060e0610c46848285016109b2565b60e083015250610100610c5b848285016109b2565b61010083015250610120610c71848285016109b2565b61012083015250610140610c878482850161097f565b6101408301525092915050565b5f6101608284031215610caa57610ca9610931565b5b5f610cb784828501610b8b565b91505092915050565b5f8115159050919050565b610cd481610cc0565b8114610cde575f80fd5b50565b5f81519050610cef81610ccb565b92915050565b5f60208284031215610d0a57610d09610931565b5b5f610d1784828501610ce1565b91505092915050565b5f80fd5b5f67ffffffffffffffff821115610d3e57610d3d610aa1565b5b602082029050602081019050919050565b5f80fd5b5f610d65610d6084610d24565b610b3b565b90508083825260208201905060208402830185811115610d8857610d87610d4f565b5b835b81811015610db15780610d9d888261097f565b845260208401935050602081019050610d8a565b5050509392505050565b5f82601f830112610dcf57610dce610d20565b5b8151610ddf848260208601610d53565b91505092915050565b5f60208284031215610dfd57610dfc610931565b5b5f82015167ffffffffffffffff811115610e1a57610e19610935565b5b610e2684828501610dbb565b91505092915050565b5f610e3982610993565b9150610e4483610993565b9250828201905080821115610e5c57610e5b610a41565b5b92915050565b5f610e6c82610993565b9150610e7783610993565b9250828202610e8581610993565b91508282048414831517610e9c57610e9b610a41565b5b5092915050565b5f604082019050610eb65f830185610ace565b610ec36020830184610ace565b9392505050565b5f805f8060808587031215610ee257610ee1610931565b5b5f610eef878288016109b2565b9450506020610f00878288016109b2565b9350506040610f11878288016109b2565b9250506060610f2287828801610ce1565b91505092959194509250565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60808284031215610f7057610f6f610af6565b5b610f7a6080610b3b565b90505f610f8984828501610b77565b5f830152506020610f9c848285016109b2565b6020830152506040610fb0848285016109b2565b6040830152506060610fc4848285016109b2565b60608301525092915050565b5f60808284031215610fe557610fe4610931565b5b5f610ff284828501610f5b565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61102d81610993565b82525050565b61103c81610958565b82525050565b61104b81610b55565b82525050565b61016082015f8201516110665f850182611024565b5060208201516110796020850182611033565b50604082015161108c6040850182611033565b50606082015161109f6060850182611033565b5060808201516110b26080850182611042565b5060a08201516110c560a0850182611024565b5060c08201516110d860c0850182611024565b5060e08201516110eb60e0850182611024565b50610100820151611100610100850182611024565b50610120820151611115610120850182611024565b5061014082015161112a610140850182611033565b50505050565b61113981610cc0565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f6111738383611033565b60208301905092915050565b5f602082019050919050565b5f6111958261113f565b61119f8185611149565b93506111aa83611159565b805f5b838110156111da5781516111c18882611168565b97506111cc8361117f565b9250506001810190506111ad565b5085935050505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b60c082015f8201516112245f850182611024565b5060208201516112376020850182611024565b50604082015161124a6040850182611024565b50606082015161125d6060850182611130565b5060808201516112706080850182611024565b5060a082015161128360a0850182611024565b50505050565b5f6112948383611210565b60c08301905092915050565b5f602082019050919050565b5f6112b6826111e7565b6112c081856111f1565b93506112cb83611201565b805f5b838110156112fb5781516112e28882611289565b97506112ed836112a0565b9250506001810190506112ce565b5085935050505092915050565b5f61022083015f83015161131e5f860182611024565b5060208301516113316020860182611051565b506040830151611345610180860182611130565b5060608301516113596101a0860182611130565b5060808301518482036101c0860152611372828261118b565b91505060a08301518482036101e086015261138d82826112ac565b91505060c08301516113a3610200860182611024565b508091505092915050565b5f6113b98383611308565b905092915050565b5f602082019050919050565b5f6113d782610ffb565b6113e18185611005565b9350836020820285016113f385611015565b805f5b8581101561142e578484038952815161140f85826113ae565b945061141a836113c1565b925060208a019950506001810190506113f6565b50829750879550505050505092915050565b5f6020820190508181035f83015261145881846113cd565b90509291505056fe',
|
|
6
6
|
},
|
|
7
7
|
inputType: {
|
|
8
8
|
1: ['address platform, uint256 skip, uint256 limit'],
|
|
@@ -12,6 +12,7 @@ const batchCampaigns: BatchMetaData = {
|
|
|
12
12
|
'CampaignData[] memory returnData',
|
|
13
13
|
'struct CampaignData { Campaign campaign; bool isClosed; bool isWhitelistOnly; address[] addresses; }',
|
|
14
14
|
'struct Campaign { uint256 chainId; address gauge; address manager; address rewardToken; uint8 numberOfPeriods; uint256 maxRewardPerVote; uint256 totalRewardAmount; uint256 totalDistributed; uint256 startTimestamp; uint256 endTimestamp; address hook; }',
|
|
15
|
+
'struct Period { uint256 rewardPerPeriod; uint256 rewardPerVote; uint256 leftover; bool updated; uint256 timestampStart; uint256 timestampEnd; }',
|
|
15
16
|
],
|
|
16
17
|
},
|
|
17
18
|
outputType: {
|
|
@@ -42,13 +43,15 @@ const batchCampaigns: BatchMetaData = {
|
|
|
42
43
|
{ type: 'bool', name: 'isWhitelistOnly' },
|
|
43
44
|
{ type: 'address[]', name: 'addresses' },
|
|
44
45
|
{
|
|
45
|
-
type: 'tuple',
|
|
46
|
-
name: '
|
|
46
|
+
type: 'tuple[]',
|
|
47
|
+
name: 'periods',
|
|
47
48
|
components: [
|
|
48
49
|
{ type: 'uint256', name: 'rewardPerPeriod' },
|
|
49
50
|
{ type: 'uint256', name: 'rewardPerVote' },
|
|
50
51
|
{ type: 'uint256', name: 'leftover' },
|
|
51
52
|
{ type: 'bool', name: 'updated' },
|
|
53
|
+
{ type: 'uint256', name: 'timestampStart' },
|
|
54
|
+
{ type: 'uint256', name: 'timestampEnd' },
|
|
52
55
|
],
|
|
53
56
|
},
|
|
54
57
|
{ type: 'uint256', name: 'periodLeft' },
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { BatchMetaData } from '../types.js'
|
|
2
|
+
|
|
3
|
+
const batchClaimableData: BatchMetaData = {
|
|
4
|
+
bytecode: {
|
|
5
|
+
42161:
|
|
6
|
+
'0x608060405234801561000f575f80fd5b50604051611fb2380380611fb28339818101604052810190610031919061139f565b5f825167ffffffffffffffff81111561004d5761004c61102d565b5b60405190808252806020026020018201604052801561008657816020015b610073610f28565b81526020019060019003908161006b5790505b509050845f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f62093a8090505f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166338013f026040518163ffffffff1660e01b8152600401602060405180830381865afa158015610137573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061015b919061143b565b73ffffffffffffffffffffffffffffffffffffffff16637dc0d1d06040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101a3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101c7919061143b565b60015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f5b8451811015610287575f85828151811061022557610224611466565b5b6020026020010151905061025b878287858151811061024757610246611466565b5b6020026020010151866102b660201b60201c565b84838151811061026e5761026d611466565b5b6020026020010181905250508080600101915050610208565b505f8260405160200161029a91906117e9565b6040516020818303038152906040529050602081018059038082f35b6102be610f28565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635598f8cc866040518263ffffffff1660e01b81526004016103189190611818565b61016060405180830381865afa158015610334573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103589190611970565b90505f81610100015190505f826080015160ff1667ffffffffffffffff8111156103855761038461102d565b5b6040519080825280602002602001820160405280156103be57816020015b6103ab610f41565b8152602001906001900390816103a35790505b5090505f5b815181101561059f575f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166317f3a7228a866040518363ffffffff1660e01b815260040161042892919061199c565b608060405180830381865afa158015610443573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104679190611a38565b90505f8160200151146104ac5780602001518560c001818152505080604001518560a00181815250508460800151856080019060ff16908160ff16815250505061059f565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636fb08df28b6040518263ffffffff1660e01b81526004016105069190611818565b5f60405180830381865afa158015610520573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f820116820180604052508101906105489190611b23565b905061055e868c8b888e866105c260201b60201c565b84848151811061057157610570611466565b5b602002602001018190525087856105889190611b97565b9450828061059590611bca565b93505050506103c3565b604051806040016040528089815260200183815250945050505050949350505050565b6105ca610f41565b5f806105dc87876108a560201b60201c565b915091505f8214806105ed57505f81145b15610687576040518060e001604052808781526020015f81526020015f151581526020015f151581526020015f151581526020015f81526020015f67ffffffffffffffff8111156106415761064061102d565b5b60405190808252806020026020018201604052801561067a57816020015b610667610f7e565b81526020019060019003908161065f5790505b508152509250505061089b565b5f805f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166303f17e568c604001516040518263ffffffff1660e01b81526004016106e59190611c20565b602060405180830381865afa158015610700573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107249190611c39565b116107ba575f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ddca3f436040518163ffffffff1660e01b8152600401602060405180830381865afa158015610791573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107b59190611c39565b610856565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166303f17e568b604001516040518263ffffffff1660e01b81526004016108169190611c20565b602060405180830381865afa158015610831573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108559190611c39565b5b90505f61086e8b8b86868c8c8861093a60201b60201c565b90505f865111156108935761088a8b878a610c8760201b60201c565b8160c001819052505b809450505050505b9695505050505050565b5f805f5b845181101561092b57838582815181106108c6576108c5611466565b5b60200260200101515f01510361091e578481815181106108e9576108e8611466565b5b60200260200101516020015185828151811061090857610907611466565b5b6020026020010151604001519250925050610933565b80806001019150506108a9565b505f80915091505b9250929050565b610942610f41565b5f80805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166366629f1286888c6040518463ffffffff1660e01b81526004016109a193929190611c64565b602060405180830381865afa1580156109bc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109e09190611c39565b036109fa576109f789888886610e5a60201b60201c565b90505b5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166329597009876040518263ffffffff1660e01b8152600401610a559190611818565b608060405180830381865afa158015610a70573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a949190611d41565b90506040518060e001604052808781526020018381526020015f801b83602001511415151581526020015f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663e31c6a638e602001518b6040518363ffffffff1660e01b8152600401610b1f929190611d6c565b6040805180830381865afa158015610b39573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b5d9190611de0565b6020015111151581526020015f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bef3ba998d8f602001518c6040518463ffffffff1660e01b8152600401610bcc93929190611e0b565b608060405180830381865afa158015610be7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c0b9190611eb5565b606001511115158152602001826040015181526020015f67ffffffffffffffff811115610c3b57610c3a61102d565b5b604051908082528060200260200182016040528015610c7457816020015b610c61610f7e565b815260200190600190039081610c595790505b5081525092505050979650505050505050565b60605f835167ffffffffffffffff811115610ca557610ca461102d565b5b604051908082528060200260200182016040528015610cde57816020015b610ccb610f7e565b815260200190600190039081610cc35790505b5090505f5b8451811015610e4e57848181518110610cff57610cfe611466565b5b6020026020010151828281518110610d1a57610d19611466565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bef3ba99878481518110610da857610da7611466565b5b60200260200101518960200151886040518463ffffffff1660e01b8152600401610dd493929190611e0b565b608060405180830381865afa158015610def573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e139190611eb5565b6060015111828281518110610e2b57610e2a611466565b5b602002602001015160200190151590811515815250508080600101915050610ce3565b50809150509392505050565b5f805f90505f84670de0b6b3a7640000886080015160ff168960c00151610e819190611f0d565b610e8b9190611f3d565b610e959190611f0d565b90508660a00151811115610ecd57670de0b6b3a76400008760a0015187610ebc9190611f3d565b610ec69190611f0d565b9150610eef565b670de0b6b3a76400008187610ee29190611f3d565b610eec9190611f0d565b91505b670de0b6b3a76400008483610f049190611f3d565b610f0e9190611f0d565b82610f199190611f7e565b91508192505050949350505050565b60405180604001604052805f8152602001606081525090565b6040518060e001604052805f81526020015f81526020015f151581526020015f151581526020015f151581526020015f8152602001606081525090565b60405180604001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f151581525090565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610fe882610fbf565b9050919050565b610ff881610fde565b8114611002575f80fd5b50565b5f8151905061101381610fef565b92915050565b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6110638261101d565b810181811067ffffffffffffffff821117156110825761108161102d565b5b80604052505050565b5f611094610fae565b90506110a0828261105a565b919050565b5f67ffffffffffffffff8211156110bf576110be61102d565b5b602082029050602081019050919050565b5f80fd5b5f819050919050565b6110e6816110d4565b81146110f0575f80fd5b50565b5f81519050611101816110dd565b92915050565b5f611119611114846110a5565b61108b565b9050808382526020820190506020840283018581111561113c5761113b6110d0565b5b835b81811015611165578061115188826110f3565b84526020840193505060208101905061113e565b5050509392505050565b5f82601f83011261118357611182611019565b5b8151611193848260208601611107565b91505092915050565b5f67ffffffffffffffff8211156111b6576111b561102d565b5b602082029050602081019050919050565b5f67ffffffffffffffff8211156111e1576111e061102d565b5b602082029050602081019050919050565b5f80fd5b5f6060828403121561120b5761120a6111f2565b5b611215606061108b565b90505f611224848285016110f3565b5f830152506020611237848285016110f3565b602083015250604061124b848285016110f3565b60408301525092915050565b5f611269611264846111c7565b61108b565b9050808382526020820190506060840283018581111561128c5761128b6110d0565b5b835b818110156112b557806112a188826111f6565b84526020840193505060608101905061128e565b5050509392505050565b5f82601f8301126112d3576112d2611019565b5b81516112e3848260208601611257565b91505092915050565b5f6112fe6112f98461119c565b61108b565b90508083825260208201905060208402830185811115611321576113206110d0565b5b835b8181101561136857805167ffffffffffffffff81111561134657611345611019565b5b80860161135389826112bf565b85526020850194505050602081019050611323565b5050509392505050565b5f82601f83011261138657611385611019565b5b81516113968482602086016112ec565b91505092915050565b5f805f80608085870312156113b7576113b6610fb7565b5b5f6113c487828801611005565b94505060206113d587828801611005565b935050604085015167ffffffffffffffff8111156113f6576113f5610fbb565b5b6114028782880161116f565b925050606085015167ffffffffffffffff81111561142357611422610fbb565b5b61142f87828801611372565b91505092959194509250565b5f602082840312156114505761144f610fb7565b5b5f61145d84828501611005565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6114c5816110d4565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f8115159050919050565b611508816114f4565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61154081610fde565b82525050565b604082015f82015161155a5f850182611537565b50602082015161156d60208501826114ff565b50505050565b5f61157e8383611546565b60408301905092915050565b5f602082019050919050565b5f6115a08261150e565b6115aa8185611518565b93506115b583611528565b805f5b838110156115e55781516115cc8882611573565b97506115d78361158a565b9250506001810190506115b8565b5085935050505092915050565b5f60e083015f8301516116075f8601826114bc565b50602083015161161a60208601826114bc565b50604083015161162d60408601826114ff565b50606083015161164060608601826114ff565b50608083015161165360808601826114ff565b5060a083015161166660a08601826114bc565b5060c083015184820360c086015261167e8282611596565b9150508091505092915050565b5f61169683836115f2565b905092915050565b5f602082019050919050565b5f6116b4826114cb565b6116be81856114d5565b9350836020820285016116d0856114e5565b805f5b8581101561170b57848403895281516116ec858261168b565b94506116f78361169e565b925060208a019950506001810190506116d3565b50829750879550505050505092915050565b5f604083015f8301516117325f8601826114bc565b506020830151848203602086015261174a82826116aa565b9150508091505092915050565b5f611762838361171d565b905092915050565b5f602082019050919050565b5f61178082611493565b61178a818561149d565b93508360208202850161179c856114ad565b805f5b858110156117d757848403895281516117b88582611757565b94506117c38361176a565b925060208a0199505060018101905061179f565b50829750879550505050505092915050565b5f6020820190508181035f8301526118018184611776565b905092915050565b611812816110d4565b82525050565b5f60208201905061182b5f830184611809565b92915050565b5f60ff82169050919050565b61184681611831565b8114611850575f80fd5b50565b5f815190506118618161183d565b92915050565b5f610160828403121561187d5761187c6111f2565b5b61188861016061108b565b90505f611897848285016110f3565b5f8301525060206118aa84828501611005565b60208301525060406118be84828501611005565b60408301525060606118d284828501611005565b60608301525060806118e684828501611853565b60808301525060a06118fa848285016110f3565b60a08301525060c061190e848285016110f3565b60c08301525060e0611922848285016110f3565b60e083015250610100611937848285016110f3565b6101008301525061012061194d848285016110f3565b6101208301525061014061196384828501611005565b6101408301525092915050565b5f610160828403121561198657611985610fb7565b5b5f61199384828501611867565b91505092915050565b5f6040820190506119af5f830185611809565b6119bc6020830184611809565b9392505050565b5f608082840312156119d8576119d76111f2565b5b6119e2608061108b565b90505f6119f184828501611853565b5f830152506020611a04848285016110f3565b6020830152506040611a18848285016110f3565b6040830152506060611a2c848285016110f3565b60608301525092915050565b5f60808284031215611a4d57611a4c610fb7565b5b5f611a5a848285016119c3565b91505092915050565b5f67ffffffffffffffff821115611a7d57611a7c61102d565b5b602082029050602081019050919050565b5f611aa0611a9b84611a63565b61108b565b90508083825260208201905060208402830185811115611ac357611ac26110d0565b5b835b81811015611aec5780611ad88882611005565b845260208401935050602081019050611ac5565b5050509392505050565b5f82601f830112611b0a57611b09611019565b5b8151611b1a848260208601611a8e565b91505092915050565b5f60208284031215611b3857611b37610fb7565b5b5f82015167ffffffffffffffff811115611b5557611b54610fbb565b5b611b6184828501611af6565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611ba1826110d4565b9150611bac836110d4565b9250828201905080821115611bc457611bc3611b6a565b5b92915050565b5f611bd4826110d4565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611c0657611c05611b6a565b5b600182019050919050565b611c1a81610fde565b82525050565b5f602082019050611c335f830184611c11565b92915050565b5f60208284031215611c4e57611c4d610fb7565b5b5f611c5b848285016110f3565b91505092915050565b5f606082019050611c775f830186611809565b611c846020830185611809565b611c916040830184611c11565b949350505050565b5f819050919050565b611cab81611c99565b8114611cb5575f80fd5b50565b5f81519050611cc681611ca2565b92915050565b5f60808284031215611ce157611ce06111f2565b5b611ceb608061108b565b90505f611cfa84828501611cb8565b5f830152506020611d0d84828501611cb8565b6020830152506040611d21848285016110f3565b6040830152506060611d35848285016110f3565b60608301525092915050565b5f60808284031215611d5657611d55610fb7565b5b5f611d6384828501611ccc565b91505092915050565b5f604082019050611d7f5f830185611c11565b611d8c6020830184611809565b9392505050565b5f60408284031215611da857611da76111f2565b5b611db2604061108b565b90505f611dc1848285016110f3565b5f830152506020611dd4848285016110f3565b60208301525092915050565b5f60408284031215611df557611df4610fb7565b5b5f611e0284828501611d93565b91505092915050565b5f606082019050611e1e5f830186611c11565b611e2b6020830185611c11565b611e386040830184611809565b949350505050565b5f60808284031215611e5557611e546111f2565b5b611e5f608061108b565b90505f611e6e848285016110f3565b5f830152506020611e81848285016110f3565b6020830152506040611e95848285016110f3565b6040830152506060611ea9848285016110f3565b60608301525092915050565b5f60808284031215611eca57611ec9610fb7565b5b5f611ed784828501611e40565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611f17826110d4565b9150611f22836110d4565b925082611f3257611f31611ee0565b5b828204905092915050565b5f611f47826110d4565b9150611f52836110d4565b9250828202611f60816110d4565b91508282048414831517611f7757611f76611b6a565b5b5092915050565b5f611f88826110d4565b9150611f93836110d4565b9250828203905081811115611fab57611faa611b6a565b5b9291505056fe',
|
|
7
|
+
},
|
|
8
|
+
inputType: {
|
|
9
|
+
42161: [
|
|
10
|
+
'address platform, address user, uint256[] campaigns, UserVote[][] userVotesData',
|
|
11
|
+
'struct UserVote { uint256 epoch; uint256 userVote; uint256 totalVotes;}',
|
|
12
|
+
],
|
|
13
|
+
},
|
|
14
|
+
outputTypeHr: {
|
|
15
|
+
42161: [
|
|
16
|
+
'ClaimableData[] claimableData',
|
|
17
|
+
'struct ClaimableData { uint256 campaignId; ClaimInfo[] claimInfo; }',
|
|
18
|
+
'struct ClaimInfo { uint256 epoch; uint256 claimable; bool hasBlockData; bool hasGaugeData; bool hasUserData; uint256 blockNumber; AddressesData[] addressesData}',
|
|
19
|
+
'struct AddressesData { address listed; bool hasData; }',
|
|
20
|
+
],
|
|
21
|
+
},
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export default batchClaimableData
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { BatchMetaData } from '../types.js'
|
|
2
|
+
|
|
3
|
+
const batchGaugesWeight: BatchMetaData = {
|
|
4
|
+
bytecode: {
|
|
5
|
+
1: '0x608060405234801561000f575f80fd5b506040516105d93803806105d9833981810160405281019061003191906103b8565b5f815167ffffffffffffffff81111561004d5761004c61027c565b5b60405190808252806020026020018201604052801561008657816020015b6100736101cf565b81526020019060019003908161006b5790505b5090505f5b82518110156101a0575f8382815181106100a8576100a7610412565b5b602002602001015190506100ba6101cf565b81815f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508573ffffffffffffffffffffffffffffffffffffffff16634e791a3a836040518263ffffffff1660e01b815260040161012a919061044e565b602060405180830381865afa158015610145573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610169919061049a565b8160200181815250508084848151811061018657610185610412565b5b60200260200101819052505050808060010191505061008b565b505f816040516020016101b391906105b8565b6040516020818303038152906040529050602081018059038082f35b60405180604001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f81525090565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6102378261020e565b9050919050565b6102478161022d565b8114610251575f80fd5b50565b5f815190506102628161023e565b92915050565b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6102b28261026c565b810181811067ffffffffffffffff821117156102d1576102d061027c565b5b80604052505050565b5f6102e36101fd565b90506102ef82826102a9565b919050565b5f67ffffffffffffffff82111561030e5761030d61027c565b5b602082029050602081019050919050565b5f80fd5b5f610335610330846102f4565b6102da565b905080838252602082019050602084028301858111156103585761035761031f565b5b835b81811015610381578061036d8882610254565b84526020840193505060208101905061035a565b5050509392505050565b5f82601f83011261039f5761039e610268565b5b81516103af848260208601610323565b91505092915050565b5f80604083850312156103ce576103cd610206565b5b5f6103db85828601610254565b925050602083015167ffffffffffffffff8111156103fc576103fb61020a565b5b6104088582860161038b565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b6104488161022d565b82525050565b5f6020820190506104615f83018461043f565b92915050565b5f819050919050565b61047981610467565b8114610483575f80fd5b50565b5f8151905061049481610470565b92915050565b5f602082840312156104af576104ae610206565b5b5f6104bc84828501610486565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6104f78161022d565b82525050565b61050681610467565b82525050565b604082015f8201516105205f8501826104ee565b50602082015161053360208501826104fd565b50505050565b5f610544838361050c565b60408301905092915050565b5f602082019050919050565b5f610566826104c5565b61057081856104cf565b935061057b836104df565b805f5b838110156105ab5781516105928882610539565b975061059d83610550565b92505060018101905061057e565b5085935050505092915050565b5f6020820190508181035f8301526105d0818461055c565b90509291505056fe',
|
|
6
|
+
},
|
|
7
|
+
inputType: {
|
|
8
|
+
1: ['address _gaugeController, address[] memory gauges'],
|
|
9
|
+
},
|
|
10
|
+
outputTypeHr: {
|
|
11
|
+
1: ['Weight[] returnData', 'struct Weight { address gauge; uint256 weight; }'],
|
|
12
|
+
},
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export default batchGaugesWeight
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { BatchMetaData } from '../types.js'
|
|
2
|
+
|
|
3
|
+
const batchVotes: BatchMetaData = {
|
|
4
|
+
bytecode: {
|
|
5
|
+
1: '0x608060405234801561000f575f80fd5b50604051610aa4380380610aa483398181016040528101906100319190610554565b5f8290505f8173ffffffffffffffffffffffffffffffffffffffff1663e93841d06040518163ffffffff1660e01b8152600401602060405180830381865afa15801561007f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100a391906105c8565b6fffffffffffffffffffffffffffffffff1690505f8167ffffffffffffffff8111156100d2576100d16105f3565b5b60405190808252806020026020018201604052801561010b57816020015b6100f86104b9565b8152602001906001900390816100f05790505b5090505f805f90505b838110156103a9575f8573ffffffffffffffffffffffffffffffffffffffff1663b0539187836040518263ffffffff1660e01b81526004016101569190610638565b602060405180830381865afa158015610171573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101959190610651565b90505f8673ffffffffffffffffffffffffffffffffffffffff16630f467f9889846040518363ffffffff1660e01b81526004016101d392919061068b565b606060405180830381865afa1580156101ee573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610212919061079c565b90505f62093a8080426102259190610821565b61022f9190610851565b90505f826020015114806102465750808260400151105b156102535750505061039c565b5f8183604001516102649190610892565b835f01516102729190610851565b90505f8973ffffffffffffffffffffffffffffffffffffffff16634e791a3a866040518263ffffffff1660e01b81526004016102ae91906108c5565b602060405180830381865afa1580156102c9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102ed91906108de565b90508488878151811061030357610302610909565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508188878151811061035457610353610909565b5b602002602001015160200181815250508088878151811061037857610377610909565b5b60200260200101516040018181525050868061039390610936565b97505050505050505b8080600101915050610114565b505f8167ffffffffffffffff8111156103c5576103c46105f3565b5b6040519080825280602002602001820160405280156103fe57816020015b6103eb6104b9565b8152602001906001900390816103e35790505b5090505f805f90505b8581101561048a575f85828151811061042357610422610909565b5b602002602001015160200151111561047d5784818151811061044857610447610909565b5b602002602001015183838151811061046357610462610909565b5b6020026020010181905250818061047990610936565b9250505b8080600101915050610407565b505f8260405160200161049d9190610a83565b6040516020818303038152906040529050602081018059038082f35b60405180606001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f81526020015f81525090565b5f604051905090565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610523826104fa565b9050919050565b61053381610519565b811461053d575f80fd5b50565b5f8151905061054e8161052a565b92915050565b5f806040838503121561056a576105696104f6565b5b5f61057785828601610540565b925050602061058885828601610540565b9150509250929050565b5f81600f0b9050919050565b6105a781610592565b81146105b1575f80fd5b50565b5f815190506105c28161059e565b92915050565b5f602082840312156105dd576105dc6104f6565b5b5f6105ea848285016105b4565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f819050919050565b61063281610620565b82525050565b5f60208201905061064b5f830184610629565b92915050565b5f60208284031215610666576106656104f6565b5b5f61067384828501610540565b91505092915050565b61068581610519565b82525050565b5f60408201905061069e5f83018561067c565b6106ab602083018461067c565b9392505050565b5f80fd5b5f601f19601f8301169050919050565b6106cf826106b6565b810181811067ffffffffffffffff821117156106ee576106ed6105f3565b5b80604052505050565b5f6107006104ed565b905061070c82826106c6565b919050565b61071a81610620565b8114610724575f80fd5b50565b5f8151905061073581610711565b92915050565b5f606082840312156107505761074f6106b2565b5b61075a60606106f7565b90505f61076984828501610727565b5f83015250602061077c84828501610727565b602083015250604061079084828501610727565b60408301525092915050565b5f606082840312156107b1576107b06104f6565b5b5f6107be8482850161073b565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61082b82610620565b915061083683610620565b925082610846576108456107c7565b5b828204905092915050565b5f61085b82610620565b915061086683610620565b925082820261087481610620565b9150828204841483151761088b5761088a6107f4565b5b5092915050565b5f61089c82610620565b91506108a783610620565b92508282039050818111156108bf576108be6107f4565b5b92915050565b5f6020820190506108d85f83018461067c565b92915050565b5f602082840312156108f3576108f26104f6565b5b5f61090084828501610727565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f61094082610620565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610972576109716107f4565b5b600182019050919050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6109af81610519565b82525050565b6109be81610620565b82525050565b606082015f8201516109d85f8501826109a6565b5060208201516109eb60208501826109b5565b5060408201516109fe60408501826109b5565b50505050565b5f610a0f83836109c4565b60608301905092915050565b5f602082019050919050565b5f610a318261097d565b610a3b8185610987565b9350610a4683610997565b805f5b83811015610a76578151610a5d8882610a04565b9750610a6883610a1b565b925050600181019050610a49565b5085935050505092915050565b5f6020820190508181035f830152610a9b8184610a27565b90509291505056fe',
|
|
6
|
+
},
|
|
7
|
+
inputType: {
|
|
8
|
+
1: ['address _gaugeController, address _user'],
|
|
9
|
+
},
|
|
10
|
+
outputTypeHr: {
|
|
11
|
+
1: ['VoteData[] reurnData', 'struct VoteData { address gauge; uint256 userVote; uint256 totalVotes;}'],
|
|
12
|
+
},
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export default batchVotes
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import type { BatchMetaData } from '../../types.js'
|
|
2
2
|
|
|
3
3
|
const commonBytecode =
|
|
4
|
-
'0x608060405234801561000f575f80fd5b5060405161130938038061130983398181016040528101906100319190610dd1565b5f815190505f8167ffffffffffffffff81111561005157610050610c3b565b5b60405190808252806020026020018201604052801561008a57816020015b610077610b9e565b81526020019060019003908161006f5790505b5090505f5b8281101561038f5761009f610b9e565b5f8583815181106100b3576100b2610e18565b5b6020026020010151905080825f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505f8173ffffffffffffffffffffffffffffffffffffffff166382c630666040518163ffffffff1660e01b8152600401602060405180830381865afa15801561013e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101629190610e45565b90508083602001515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506101ae816103be60201b60201c565b856020015160200186602001516040018760200151606001838152508390528390525050505f6101e3826105a360201b60201c565b90505f815190505f8167ffffffffffffffff81111561020557610204610c3b565b5b60405190808252806020026020018201604052801561023e57816020015b61022b610bda565b8152602001906001900390816102235790505b5090505f5b828110156103535783818151811061025e5761025d610e18565b5b602002602001015182828151811061027957610278610e18565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506102df8482815181106102cc576102cb610e18565b5b60200260200101516103be60201b60201c565b8484815181106102f2576102f1610e18565b5b60200260200101516020018585815181106103105761030f610e18565b5b602002602001015160400186868151811061032e5761032d610e18565b5b6020026020010151606001838152508390528390525050508080600101915050610243565b508086604001819052508588888151811061037157610370610e18565b5b6020026020010181905250505050505050808060010191505061008f565b505f816040516020016103a29190611128565b6040516020818303038152906040529050602081018059038082f35b6060805f8073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561043e575073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561059c575f8490508073ffffffffffffffffffffffffffffffffffffffff166306fdde036040518163ffffffff1660e01b81526004015f60405180830381865afa15801561048f573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f820116820180604052508101906104b791906111ea565b93508073ffffffffffffffffffffffffffffffffffffffff166395d89b416040518163ffffffff1660e01b81526004015f60405180830381865afa158015610501573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f8201168201806040525081019061052991906111ea565b92508073ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610574573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610598919061125b565b9150505b9193909250565b60605f600467ffffffffffffffff8111156105c1576105c0610c3b565b5b6040519080825280602002602001820160405280156105ef5781602001602082028036833780820191505090505b5090505f808473ffffffffffffffffffffffffffffffffffffffff166040516024016040516020818303038152906040527fa980497e000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505060405161069b91906112ca565b5f60405180830381855afa9150503d805f81146106d3576040519150601f19603f3d011682016040523d82523d5f602084013e6106d8565b606091505b50915091508180156106ea57505f8151115b1561086f578473ffffffffffffffffffffffffffffffffffffffff1663765337b66040518163ffffffff1660e01b8152600401602060405180830381865afa158015610738573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061075c9190610e45565b835f8151811061076f5761076e610e18565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508473ffffffffffffffffffffffffffffffffffffffff16632621db2f6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107f2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108169190610e45565b8360018151811061082a57610829610e18565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050829350505050610b01565b5f808673ffffffffffffffffffffffffffffffffffffffff166040516024016040516020818303038152906040527f07546172000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505060405161091891906112ca565b5f60405180830381855afa9150503d805f8114610950576040519150601f19603f3d011682016040523d82523d5f602084013e610955565b606091505b509150915081801561096757505f8151115b1561097e5761097b81610b0660201b60201c565b96505b61098e875f610b1360201b60201c565b855f815181106109a1576109a0610e18565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506109ec876001610b1360201b60201c565b85600181518110610a00576109ff610e18565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610a4b876002610b1360201b60201c565b85600281518110610a5f57610a5e610e18565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610aaa876003610b1360201b60201c565b85600381518110610abe57610abd610e18565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505084955050505050505b919050565b5f60208201519050919050565b5f8273ffffffffffffffffffffffffffffffffffffffff1663c6610657836040518263ffffffff1660e01b8152600401610b4d91906112ef565b602060405180830381865afa925050508015610b8757506040513d601f19601f82011682018060405250810190610b849190610e45565b60015b610b93575f9050610b98565b809150505b92915050565b60405180606001604052805f73ffffffffffffffffffffffffffffffffffffffff168152602001610bcd610bda565b8152602001606081525090565b60405180608001604052805f73ffffffffffffffffffffffffffffffffffffffff16815260200160608152602001606081526020015f81525090565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610c7182610c2b565b810181811067ffffffffffffffff82111715610c9057610c8f610c3b565b5b80604052505050565b5f610ca2610c16565b9050610cae8282610c68565b919050565b5f67ffffffffffffffff821115610ccd57610ccc610c3b565b5b602082029050602081019050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610d0b82610ce2565b9050919050565b610d1b81610d01565b8114610d25575f80fd5b50565b5f81519050610d3681610d12565b92915050565b5f610d4e610d4984610cb3565b610c99565b90508083825260208201905060208402830185811115610d7157610d70610cde565b5b835b81811015610d9a5780610d868882610d28565b845260208401935050602081019050610d73565b5050509392505050565b5f82601f830112610db857610db7610c27565b5b8151610dc8848260208601610d3c565b91505092915050565b5f60208284031215610de657610de5610c1f565b5b5f82015167ffffffffffffffff811115610e0357610e02610c23565b5b610e0f84828501610da4565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60208284031215610e5a57610e59610c1f565b5b5f610e6784828501610d28565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b610ea281610d01565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f610eda82610ea8565b610ee48185610eb2565b9350610ef4818560208601610ec2565b610efd81610c2b565b840191505092915050565b5f819050919050565b610f1a81610f08565b82525050565b5f608083015f830151610f355f860182610e99565b5060208301518482036020860152610f4d8282610ed0565b91505060408301518482036040860152610f678282610ed0565b9150506060830151610f7c6060860182610f11565b508091505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f610fbb8383610f20565b905092915050565b5f602082019050919050565b5f610fd982610f87565b610fe38185610f91565b935083602082028501610ff585610fa1565b805f5b8581101561103057848403895281516110118582610fb0565b945061101c83610fc3565b925060208a01995050600181019050610ff8565b50829750879550505050505092915050565b5f606083015f8301516110575f860182610e99565b506020830151848203602086015261106f8282610f20565b915050604083015184820360408601526110898282610fcf565b9150508091505092915050565b5f6110a18383611042565b905092915050565b5f602082019050919050565b5f6110bf82610e70565b6110c98185610e7a565b9350836020820285016110db85610e8a565b805f5b8581101561111657848403895281516110f78582611096565b9450611102836110a9565b925060208a019950506001810190506110de565b50829750879550505050505092915050565b5f6020820190508181035f83015261114081846110b5565b905092915050565b5f80fd5b5f67ffffffffffffffff82111561116657611165610c3b565b5b61116f82610c2b565b9050602081019050919050565b5f61118e6111898461114c565b610c99565b9050828152602081018484840111156111aa576111a9611148565b5b6111b5848285610ec2565b509392505050565b5f82601f8301126111d1576111d0610c27565b5b81516111e184826020860161117c565b91505092915050565b5f602082840312156111ff576111fe610c1f565b5b5f82015167ffffffffffffffff81111561121c5761121b610c23565b5b611228848285016111bd565b91505092915050565b61123a81610f08565b8114611244575f80fd5b50565b5f8151905061125581611231565b92915050565b5f602082840312156112705761126f610c1f565b5b5f61127d84828501611247565b91505092915050565b5f81519050919050565b5f81905092915050565b5f6112a482611286565b6112ae8185611290565b93506112be818560208601610ec2565b80840191505092915050565b5f6112d5828461129a565b915081905092915050565b6112e981610f08565b82525050565b5f6020820190506113025f8301846112e0565b9291505056fe'
|
|
4
|
+
'0x608060405234801561000f575f80fd5b5060405161146b38038061146b83398181016040528101906100319190610f0d565b5f815190505f8167ffffffffffffffff81111561005157610050610d77565b5b60405190808252806020026020018201604052801561008a57816020015b610077610ca2565b81526020019060019003908161006f5790505b5090505f5b8281101561040d5761009f610ca2565b5f8583815181106100b3576100b2610f54565b5b6020026020010151905080825f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506101038161043c60201b60201c565b826020019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505f8173ffffffffffffffffffffffffffffffffffffffff166382c630666040518163ffffffff1660e01b8152600401602060405180830381865afa158015610184573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101a89190610f81565b90508083606001515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506101f4816104bb60201b60201c565b85606001516020018660600151604001876060015160600183815250839052839052505050606061022a826106a060201b60201c565b856040018193508273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681525050505f815190505f8167ffffffffffffffff81111561028357610282610d77565b5b6040519080825280602002602001820160405280156102bc57816020015b6102a9610d16565b8152602001906001900390816102a15790505b5090505f5b828110156103d1578381815181106102dc576102db610f54565b5b60200260200101518282815181106102f7576102f6610f54565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061035d84828151811061034a57610349610f54565b5b60200260200101516104bb60201b60201c565b8484815181106103705761036f610f54565b5b602002602001015160200185858151811061038e5761038d610f54565b5b60200260200101516040018686815181106103ac576103ab610f54565b5b60200260200101516060018381525083905283905250505080806001019150506102c1565b50808660800181905250858888815181106103ef576103ee610f54565b5b6020026020010181905250505050505050808060010191505061008f565b505f81604051602001610420919061128a565b6040516020818303038152906040529050602081018059038082f35b5f8173ffffffffffffffffffffffffffffffffffffffff1663481c6a756040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156104a557506040513d601f19601f820116820180604052508101906104a29190610f81565b60015b6104b1575f90506104b6565b809150505b919050565b6060805f8073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561053b575073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15610699575f8490508073ffffffffffffffffffffffffffffffffffffffff166306fdde036040518163ffffffff1660e01b81526004015f60405180830381865afa15801561058c573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f820116820180604052508101906105b4919061134c565b93508073ffffffffffffffffffffffffffffffffffffffff166395d89b416040518163ffffffff1660e01b81526004015f60405180830381865afa1580156105fe573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190610626919061134c565b92508073ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610671573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061069591906113bd565b9150505b9193909250565b5f60605f600467ffffffffffffffff8111156106bf576106be610d77565b5b6040519080825280602002602001820160405280156106ed5781602001602082028036833780820191505090505b5090505f808573ffffffffffffffffffffffffffffffffffffffff166040516024016040516020818303038152906040527fa980497e000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051610799919061142c565b5f60405180830381855afa9150503d805f81146107d1576040519150601f19603f3d011682016040523d82523d5f602084013e6107d6565b606091505b50915091508180156107e857505f8151115b15610970578573ffffffffffffffffffffffffffffffffffffffff1663765337b66040518163ffffffff1660e01b8152600401602060405180830381865afa158015610836573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061085a9190610f81565b835f8151811061086d5761086c610f54565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508573ffffffffffffffffffffffffffffffffffffffff16632621db2f6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108f0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109149190610f81565b8360018151811061092857610927610f54565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050858394509450505050610c05565b5f808773ffffffffffffffffffffffffffffffffffffffff166040516024016040516020818303038152906040527f07546172000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051610a19919061142c565b5f60405180830381855afa9150503d805f8114610a51576040519150601f19603f3d011682016040523d82523d5f602084013e610a56565b606091505b5091509150818015610a6857505f8151115b15610a7f57610a7c81610c0a60201b60201c565b97505b610a8f885f610c1760201b60201c565b855f81518110610aa257610aa1610f54565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610aed886001610c1760201b60201c565b85600181518110610b0157610b00610f54565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610b4c886002610c1760201b60201c565b85600281518110610b6057610b5f610f54565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610bab886003610c1760201b60201c565b85600381518110610bbf57610bbe610f54565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505087859650965050505050505b915091565b5f60208201519050919050565b5f8273ffffffffffffffffffffffffffffffffffffffff1663c6610657836040518263ffffffff1660e01b8152600401610c519190611451565b602060405180830381865afa925050508015610c8b57506040513d601f19601f82011682018060405250810190610c889190610f81565b60015b610c97575f9050610c9c565b809150505b92915050565b6040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff168152602001610d09610d16565b8152602001606081525090565b60405180608001604052805f73ffffffffffffffffffffffffffffffffffffffff16815260200160608152602001606081526020015f81525090565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610dad82610d67565b810181811067ffffffffffffffff82111715610dcc57610dcb610d77565b5b80604052505050565b5f610dde610d52565b9050610dea8282610da4565b919050565b5f67ffffffffffffffff821115610e0957610e08610d77565b5b602082029050602081019050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610e4782610e1e565b9050919050565b610e5781610e3d565b8114610e61575f80fd5b50565b5f81519050610e7281610e4e565b92915050565b5f610e8a610e8584610def565b610dd5565b90508083825260208201905060208402830185811115610ead57610eac610e1a565b5b835b81811015610ed65780610ec28882610e64565b845260208401935050602081019050610eaf565b5050509392505050565b5f82601f830112610ef457610ef3610d63565b5b8151610f04848260208601610e78565b91505092915050565b5f60208284031215610f2257610f21610d5b565b5b5f82015167ffffffffffffffff811115610f3f57610f3e610d5f565b5b610f4b84828501610ee0565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60208284031215610f9657610f95610d5b565b5b5f610fa384828501610e64565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b610fde81610e3d565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f61101682610fe4565b6110208185610fee565b9350611030818560208601610ffe565b61103981610d67565b840191505092915050565b5f819050919050565b61105681611044565b82525050565b5f608083015f8301516110715f860182610fd5565b5060208301518482036020860152611089828261100c565b915050604083015184820360408601526110a3828261100c565b91505060608301516110b8606086018261104d565b508091505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f6110f7838361105c565b905092915050565b5f602082019050919050565b5f611115826110c3565b61111f81856110cd565b935083602082028501611131856110dd565b805f5b8581101561116c578484038952815161114d85826110ec565b9450611158836110ff565b925060208a01995050600181019050611134565b50829750879550505050505092915050565b5f60a083015f8301516111935f860182610fd5565b5060208301516111a66020860182610fd5565b5060408301516111b96040860182610fd5565b50606083015184820360608601526111d1828261105c565b915050608083015184820360808601526111eb828261110b565b9150508091505092915050565b5f611203838361117e565b905092915050565b5f602082019050919050565b5f61122182610fac565b61122b8185610fb6565b93508360208202850161123d85610fc6565b805f5b85811015611278578484038952815161125985826111f8565b94506112648361120b565b925060208a01995050600181019050611240565b50829750879550505050505092915050565b5f6020820190508181035f8301526112a28184611217565b905092915050565b5f80fd5b5f67ffffffffffffffff8211156112c8576112c7610d77565b5b6112d182610d67565b9050602081019050919050565b5f6112f06112eb846112ae565b610dd5565b90508281526020810184848401111561130c5761130b6112aa565b5b611317848285610ffe565b509392505050565b5f82601f83011261133357611332610d63565b5b81516113438482602086016112de565b91505092915050565b5f6020828403121561136157611360610d5b565b5b5f82015167ffffffffffffffff81111561137e5761137d610d5f565b5b61138a8482850161131f565b91505092915050565b61139c81611044565b81146113a6575f80fd5b50565b5f815190506113b781611393565b92915050565b5f602082840312156113d2576113d1610d5b565b5b5f6113df848285016113a9565b91505092915050565b5f81519050919050565b5f81905092915050565b5f611406826113e8565b61141081856113f2565b9350611420818560208601610ffe565b80840191505092915050565b5f61143782846113fc565b915081905092915050565b61144b81611044565b82525050565b5f6020820190506114645f830184611442565b9291505056fe'
|
|
5
5
|
|
|
6
6
|
const oldSolcBytecode =
|
|
7
|
-
'0x608060405234801561001057600080fd5b5060405161141c38038061141c83398181016040528101906100329190610e21565b60008151905060008167ffffffffffffffff81111561005457610053610c80565b5b60405190808252806020026020018201604052801561008d57816020015b61007a610bdb565b8152602001906001900390816100725790505b50905060005b828110156103aa576100a3610bdb565b60008583815181106100b8576100b7610e6a565b5b6020026020010151905080826000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060008173ffffffffffffffffffffffffffffffffffffffff166382c630666040518163ffffffff1660e01b8152600401602060405180830381865afa158015610147573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061016b9190610e99565b90508083602001516000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506101b8816103da60201b60201c565b8560200151602001866020015160400187602001516060018381525083905283905250505060006101ee826105cb60201b60201c565b905060008151905060008167ffffffffffffffff81111561021257610211610c80565b5b60405190808252806020026020018201604052801561024b57816020015b610238610c18565b8152602001906001900390816102305790505b50905060005b828110156103685783818151811061026c5761026b610e6a565b5b602002602001015182828151811061028757610286610e6a565b5b60200260200101516000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506102ee8482815181106102db576102da610e6a565b5b60200260200101516103da60201b60201c565b84848151811061030157610300610e6a565b5b602002602001015160200185858151811061031f5761031e610e6a565b5b602002602001015160400186868151811061033d5761033c610e6a565b5b602002602001015160600183815250839052839052505050808061036090610eff565b915050610251565b508086604001819052508588888151811061038657610385610e6a565b5b602002602001018190525050505050505080806103a290610eff565b915050610093565b506000816040516020016103be9190611229565b6040516020818303038152906040529050602081018059038082f35b60608060008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561045b575073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156105c45760008490508073ffffffffffffffffffffffffffffffffffffffff166306fdde036040518163ffffffff1660e01b8152600401600060405180830381865afa1580156104b0573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906104d991906112f1565b93508073ffffffffffffffffffffffffffffffffffffffff166395d89b416040518163ffffffff1660e01b8152600401600060405180830381865afa158015610526573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061054f91906112f1565b92508073ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801561059c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c09190611366565b9150505b9193909250565b60606000600467ffffffffffffffff8111156105ea576105e9610c80565b5b6040519080825280602002602001820160405280156106185781602001602082028036833780820191505090505b5090506000808473ffffffffffffffffffffffffffffffffffffffff166040516024016040516020818303038152906040527fa980497e000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516106c591906113da565b600060405180830381855afa9150503d8060008114610700576040519150601f19603f3d011682016040523d82523d6000602084013e610705565b606091505b5091509150818015610718575060008151115b156108a2578473ffffffffffffffffffffffffffffffffffffffff1663765337b66040518163ffffffff1660e01b8152600401602060405180830381865afa158015610768573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061078c9190610e99565b836000815181106107a05761079f610e6a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508473ffffffffffffffffffffffffffffffffffffffff16632621db2f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610825573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108499190610e99565b8360018151811061085d5761085c610e6a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050829350505050610b3b565b6000808673ffffffffffffffffffffffffffffffffffffffff166040516024016040516020818303038152906040527f07546172000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505060405161094c91906113da565b600060405180830381855afa9150503d8060008114610987576040519150601f19603f3d011682016040523d82523d6000602084013e61098c565b606091505b509150915081801561099f575060008151115b156109b6576109b381610b4060201b60201c565b96505b6109c7876000610b4e60201b60201c565b856000815181106109db576109da610e6a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610a26876001610b4e60201b60201c565b85600181518110610a3a57610a39610e6a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610a85876002610b4e60201b60201c565b85600281518110610a9957610a98610e6a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610ae4876003610b4e60201b60201c565b85600381518110610af857610af7610e6a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505084955050505050505b919050565b600060208201519050919050565b60008273ffffffffffffffffffffffffffffffffffffffff1663c6610657836040518263ffffffff1660e01b8152600401610b899190611400565b602060405180830381865afa925050508015610bc357506040513d601f19601f82011682018060405250810190610bc09190610e99565b60015b610bd05760009050610bd5565b809150505b92915050565b6040518060600160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001610c0b610c18565b8152602001606081525090565b6040518060800160405280600073ffffffffffffffffffffffffffffffffffffffff1681526020016060815260200160608152602001600081525090565b6000604051905090565b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610cb882610c6f565b810181811067ffffffffffffffff82111715610cd757610cd6610c80565b5b80604052505050565b6000610cea610c56565b9050610cf68282610caf565b919050565b600067ffffffffffffffff821115610d1657610d15610c80565b5b602082029050602081019050919050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610d5782610d2c565b9050919050565b610d6781610d4c565b8114610d7257600080fd5b50565b600081519050610d8481610d5e565b92915050565b6000610d9d610d9884610cfb565b610ce0565b90508083825260208201905060208402830185811115610dc057610dbf610d27565b5b835b81811015610de95780610dd58882610d75565b845260208401935050602081019050610dc2565b5050509392505050565b600082601f830112610e0857610e07610c6a565b5b8151610e18848260208601610d8a565b91505092915050565b600060208284031215610e3757610e36610c60565b5b600082015167ffffffffffffffff811115610e5557610e54610c65565b5b610e6184828501610df3565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600060208284031215610eaf57610eae610c60565b5b6000610ebd84828501610d75565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000819050919050565b6000610f0a82610ef5565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610f3c57610f3b610ec6565b5b600182019050919050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b610f7c81610d4c565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610fbc578082015181840152602081019050610fa1565b60008484015250505050565b6000610fd382610f82565b610fdd8185610f8d565b9350610fed818560208601610f9e565b610ff681610c6f565b840191505092915050565b61100a81610ef5565b82525050565b60006080830160008301516110286000860182610f73565b50602083015184820360208601526110408282610fc8565b9150506040830151848203604086015261105a8282610fc8565b915050606083015161106f6060860182611001565b508091505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60006110b28383611010565b905092915050565b6000602082019050919050565b60006110d28261107a565b6110dc8185611085565b9350836020820285016110ee85611096565b8060005b8581101561112a578484038952815161110b85826110a6565b9450611116836110ba565b925060208a019950506001810190506110f2565b50829750879550505050505092915050565b60006060830160008301516111546000860182610f73565b506020830151848203602086015261116c8282611010565b9150506040830151848203604086015261118682826110c7565b9150508091505092915050565b600061119f838361113c565b905092915050565b6000602082019050919050565b60006111bf82610f47565b6111c98185610f52565b9350836020820285016111db85610f63565b8060005b8581101561121757848403895281516111f88582611193565b9450611203836111a7565b925060208a019950506001810190506111df565b50829750879550505050505092915050565b6000602082019050818103600083015261124381846111b4565b905092915050565b600080fd5b600067ffffffffffffffff82111561126b5761126a610c80565b5b61127482610c6f565b9050602081019050919050565b600061129461128f84611250565b610ce0565b9050828152602081018484840111156112b0576112af61124b565b5b6112bb848285610f9e565b509392505050565b600082601f8301126112d8576112d7610c6a565b5b81516112e8848260208601611281565b91505092915050565b60006020828403121561130757611306610c60565b5b600082015167ffffffffffffffff81111561132557611324610c65565b5b611331848285016112c3565b91505092915050565b61134381610ef5565b811461134e57600080fd5b50565b6000815190506113608161133a565b92915050565b60006020828403121561137c5761137b610c60565b5b600061138a84828501611351565b91505092915050565b600081519050919050565b600081905092915050565b60006113b482611393565b6113be818561139e565b93506113ce818560208601610f9e565b80840191505092915050565b60006113e682846113a9565b915081905092915050565b6113fa81610ef5565b82525050565b600060208201905061141560008301846113f1565b9291505056fe'
|
|
7
|
+
'0x608060405234801561001057600080fd5b5060405161158238038061158283398181016040528101906100329190610f61565b60008151905060008167ffffffffffffffff81111561005457610053610dc0565b5b60405190808252806020026020018201604052801561008d57816020015b61007a610ce1565b8152602001906001900390816100725790505b50905060005b82811015610427576100a3610ce1565b60008583815181106100b8576100b7610faa565b5b6020026020010151905080826000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506101098161045760201b60201c565b826020019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060008173ffffffffffffffffffffffffffffffffffffffff166382c630666040518163ffffffff1660e01b8152600401602060405180830381865afa15801561018d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101b19190610fd9565b90508083606001516000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506101fe816104d860201b60201c565b856060015160200186606001516040018760600151606001838152508390528390525050506060610234826106c960201b60201c565b856040018193508273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815250505060008151905060008167ffffffffffffffff81111561028f5761028e610dc0565b5b6040519080825280602002602001820160405280156102c857816020015b6102b5610d58565b8152602001906001900390816102ad5790505b50905060005b828110156103e5578381815181106102e9576102e8610faa565b5b602002602001015182828151811061030457610303610faa565b5b60200260200101516000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061036b84828151811061035857610357610faa565b5b60200260200101516104d860201b60201c565b84848151811061037e5761037d610faa565b5b602002602001015160200185858151811061039c5761039b610faa565b5b60200260200101516040018686815181106103ba576103b9610faa565b5b60200260200101516060018381525083905283905250505080806103dd9061103f565b9150506102ce565b508086608001819052508588888151811061040357610402610faa565b5b6020026020010181905250505050505050808061041f9061103f565b915050610093565b5060008160405160200161043b919061138f565b6040516020818303038152906040529050602081018059038082f35b60008173ffffffffffffffffffffffffffffffffffffffff1663481c6a756040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156104c157506040513d601f19601f820116820180604052508101906104be9190610fd9565b60015b6104ce57600090506104d3565b809150505b919050565b60608060008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015610559575073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156106c25760008490508073ffffffffffffffffffffffffffffffffffffffff166306fdde036040518163ffffffff1660e01b8152600401600060405180830381865afa1580156105ae573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906105d79190611457565b93508073ffffffffffffffffffffffffffffffffffffffff166395d89b416040518163ffffffff1660e01b8152600401600060405180830381865afa158015610624573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061064d9190611457565b92508073ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801561069a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106be91906114cc565b9150505b9193909250565b600060606000600467ffffffffffffffff8111156106ea576106e9610dc0565b5b6040519080825280602002602001820160405280156107185781602001602082028036833780820191505090505b5090506000808573ffffffffffffffffffffffffffffffffffffffff166040516024016040516020818303038152906040527fa980497e000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516107c59190611540565b600060405180830381855afa9150503d8060008114610800576040519150601f19603f3d011682016040523d82523d6000602084013e610805565b606091505b5091509150818015610818575060008151115b156109a5578573ffffffffffffffffffffffffffffffffffffffff1663765337b66040518163ffffffff1660e01b8152600401602060405180830381865afa158015610868573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088c9190610fd9565b836000815181106108a05761089f610faa565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508573ffffffffffffffffffffffffffffffffffffffff16632621db2f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610925573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109499190610fd9565b8360018151811061095d5761095c610faa565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050858394509450505050610c41565b6000808773ffffffffffffffffffffffffffffffffffffffff166040516024016040516020818303038152906040527f07546172000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050604051610a4f9190611540565b600060405180830381855afa9150503d8060008114610a8a576040519150601f19603f3d011682016040523d82523d6000602084013e610a8f565b606091505b5091509150818015610aa2575060008151115b15610ab957610ab681610c4660201b60201c565b97505b610aca886000610c5460201b60201c565b85600081518110610ade57610add610faa565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610b29886001610c5460201b60201c565b85600181518110610b3d57610b3c610faa565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610b88886002610c5460201b60201c565b85600281518110610b9c57610b9b610faa565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610be7886003610c5460201b60201c565b85600381518110610bfb57610bfa610faa565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505087859650965050505050505b915091565b600060208201519050919050565b60008273ffffffffffffffffffffffffffffffffffffffff1663c6610657836040518263ffffffff1660e01b8152600401610c8f9190611566565b602060405180830381865afa925050508015610cc957506040513d601f19601f82011682018060405250810190610cc69190610fd9565b60015b610cd65760009050610cdb565b809150505b92915050565b6040518060a00160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001610d4b610d58565b8152602001606081525090565b6040518060800160405280600073ffffffffffffffffffffffffffffffffffffffff1681526020016060815260200160608152602001600081525090565b6000604051905090565b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610df882610daf565b810181811067ffffffffffffffff82111715610e1757610e16610dc0565b5b80604052505050565b6000610e2a610d96565b9050610e368282610def565b919050565b600067ffffffffffffffff821115610e5657610e55610dc0565b5b602082029050602081019050919050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610e9782610e6c565b9050919050565b610ea781610e8c565b8114610eb257600080fd5b50565b600081519050610ec481610e9e565b92915050565b6000610edd610ed884610e3b565b610e20565b90508083825260208201905060208402830185811115610f0057610eff610e67565b5b835b81811015610f295780610f158882610eb5565b845260208401935050602081019050610f02565b5050509392505050565b600082601f830112610f4857610f47610daa565b5b8151610f58848260208601610eca565b91505092915050565b600060208284031215610f7757610f76610da0565b5b600082015167ffffffffffffffff811115610f9557610f94610da5565b5b610fa184828501610f33565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600060208284031215610fef57610fee610da0565b5b6000610ffd84828501610eb5565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000819050919050565b600061104a82611035565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361107c5761107b611006565b5b600182019050919050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6110bc81610e8c565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b838110156110fc5780820151818401526020810190506110e1565b60008484015250505050565b6000611113826110c2565b61111d81856110cd565b935061112d8185602086016110de565b61113681610daf565b840191505092915050565b61114a81611035565b82525050565b600060808301600083015161116860008601826110b3565b50602083015184820360208601526111808282611108565b9150506040830151848203604086015261119a8282611108565b91505060608301516111af6060860182611141565b508091505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60006111f28383611150565b905092915050565b6000602082019050919050565b6000611212826111ba565b61121c81856111c5565b93508360208202850161122e856111d6565b8060005b8581101561126a578484038952815161124b85826111e6565b9450611256836111fa565b925060208a01995050600181019050611232565b50829750879550505050505092915050565b600060a08301600083015161129460008601826110b3565b5060208301516112a760208601826110b3565b5060408301516112ba60408601826110b3565b50606083015184820360608601526112d28282611150565b915050608083015184820360808601526112ec8282611207565b9150508091505092915050565b6000611305838361127c565b905092915050565b6000602082019050919050565b600061132582611087565b61132f8185611092565b935083602082028501611341856110a3565b8060005b8581101561137d578484038952815161135e85826112f9565b94506113698361130d565b925060208a01995050600181019050611345565b50829750879550505050505092915050565b600060208201905081810360008301526113a9818461131a565b905092915050565b600080fd5b600067ffffffffffffffff8211156113d1576113d0610dc0565b5b6113da82610daf565b9050602081019050919050565b60006113fa6113f5846113b6565b610e20565b905082815260208101848484011115611416576114156113b1565b5b6114218482856110de565b509392505050565b600082601f83011261143e5761143d610daa565b5b815161144e8482602086016113e7565b91505092915050565b60006020828403121561146d5761146c610da0565b5b600082015167ffffffffffffffff81111561148b5761148a610da5565b5b61149784828501611429565b91505092915050565b6114a981611035565b81146114b457600080fd5b50565b6000815190506114c6816114a0565b92915050565b6000602082840312156114e2576114e1610da0565b5b60006114f0848285016114b7565b91505092915050565b600081519050919050565b600081905092915050565b600061151a826114f9565b6115248185611504565b93506115348185602086016110de565b80840191505092915050565b600061154c828461150f565b915081905092915050565b61156081611035565b82525050565b600060208201905061157b6000830184611557565b9291505056fe'
|
|
8
8
|
|
|
9
9
|
const commonInputType = ['address[] gauges']
|
|
10
10
|
|
|
11
11
|
const commonOutputTypeHr = [
|
|
12
12
|
'ReturnData[] returnData',
|
|
13
|
-
'struct ReturnData { address gauge; Token lp; Token[] coins }',
|
|
13
|
+
'struct ReturnData { address gauge; address manager; address pool; Token lp; Token[] coins }',
|
|
14
14
|
'struct Token { address _address; string name; string symbol; uint256 decimals; }',
|
|
15
15
|
]
|
|
16
16
|
|
|
@@ -20,6 +20,8 @@ const commonOutputType = [
|
|
|
20
20
|
name: 'returnData',
|
|
21
21
|
components: [
|
|
22
22
|
{ type: 'address', name: 'gauge' },
|
|
23
|
+
{ type: 'address', name: 'manager' },
|
|
24
|
+
{ type: 'address', name: 'pool' },
|
|
23
25
|
{
|
|
24
26
|
type: 'tuple',
|
|
25
27
|
name: 'lp',
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import type { BatchMetaData } from '../../types.js'
|
|
2
2
|
|
|
3
3
|
const commonBytecode =
|
|
4
|
-
'
|
|
4
|
+
'0x608060405234801561000f575f80fd5b50604051610fee380380610fee83398181016040528101906100319190610937565b5f8290505f825190505f8167ffffffffffffffff811115610055576100546107fb565b5b60405190808252806020026020018201604052801561008e57816020015b61007b6106ee565b8152602001906001900390816100735790505b5090505f5b828110156104da576100a36106ee565b5f8683815181106100b7576100b6610991565b5b6020026020010151905080825f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505f8673ffffffffffffffffffffffffffffffffffffffff1663bdf475c3836040518263ffffffff1660e01b815260040161013291906109cd565b602060405180830381865afa15801561014d573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061017191906109e6565b905080836020019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508673ffffffffffffffffffffffffffffffffffffffff16635c911741826040518263ffffffff1660e01b81526004016101e491906109cd565b5f60405180830381865afa1580156101fe573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f820116820180604052508101906102269190610ac1565b83604001819052505f8773ffffffffffffffffffffffffffffffffffffffff16639ac90d3d836040518263ffffffff1660e01b815260040161026891906109cd565b61010060405180830381865afa158015610284573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102a89190610bb6565b90505f8873ffffffffffffffffffffffffffffffffffffffff1663940494f1846040518263ffffffff1660e01b81526004016102e491906109cd565b6040805180830381865afa1580156102fe573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103229190610cc3565b5f6002811061033457610333610991565b5b602002015190505f8167ffffffffffffffff811115610356576103556107fb565b5b60405190808252806020026020018201604052801561038f57816020015b61037c610740565b8152602001906001900390816103745790505b5090505f5b8281101561049e578381600881106103af576103ae610991565b5b60200201518282815181106103c7576103c6610991565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061042a84826008811061041a57610419610991565b5b602002015161050960201b60201c565b84848151811061043d5761043c610991565b5b602002602001015160200185858151811061045b5761045a610991565b5b602002602001015160400186868151811061047957610478610991565b5b6020026020010151606001838152508390528390525050508080600101915050610394565b50808660600181905250858888815181106104bc576104bb610991565b5b60200260200101819052505050505050508080600101915050610093565b505f816040516020016104ed9190610fa2565b6040516020818303038152906040529050602081018059038082f35b6060805f8073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015610589575073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156106e7575f8490508073ffffffffffffffffffffffffffffffffffffffff166306fdde036040518163ffffffff1660e01b81526004015f60405180830381865afa1580156105da573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f820116820180604052508101906106029190610ac1565b93508073ffffffffffffffffffffffffffffffffffffffff166395d89b416040518163ffffffff1660e01b81526004015f60405180830381865afa15801561064c573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f820116820180604052508101906106749190610ac1565b92508073ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106bf573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106e39190610fc2565b9150505b9193909250565b60405180608001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160608152602001606081525090565b60405180608001604052805f73ffffffffffffffffffffffffffffffffffffffff16815260200160608152602001606081526020015f81525090565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6107b68261078d565b9050919050565b6107c6816107ac565b81146107d0575f80fd5b50565b5f815190506107e1816107bd565b92915050565b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610831826107eb565b810181811067ffffffffffffffff821117156108505761084f6107fb565b5b80604052505050565b5f61086261077c565b905061086e8282610828565b919050565b5f67ffffffffffffffff82111561088d5761088c6107fb565b5b602082029050602081019050919050565b5f80fd5b5f6108b46108af84610873565b610859565b905080838252602082019050602084028301858111156108d7576108d661089e565b5b835b8181101561090057806108ec88826107d3565b8452602084019350506020810190506108d9565b5050509392505050565b5f82601f83011261091e5761091d6107e7565b5b815161092e8482602086016108a2565b91505092915050565b5f806040838503121561094d5761094c610785565b5b5f61095a858286016107d3565b925050602083015167ffffffffffffffff81111561097b5761097a610789565b5b6109878582860161090a565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b6109c7816107ac565b82525050565b5f6020820190506109e05f8301846109be565b92915050565b5f602082840312156109fb576109fa610785565b5b5f610a08848285016107d3565b91505092915050565b5f80fd5b5f67ffffffffffffffff821115610a2f57610a2e6107fb565b5b610a38826107eb565b9050602081019050919050565b8281835e5f83830152505050565b5f610a65610a6084610a15565b610859565b905082815260208101848484011115610a8157610a80610a11565b5b610a8c848285610a45565b509392505050565b5f82601f830112610aa857610aa76107e7565b5b8151610ab8848260208601610a53565b91505092915050565b5f60208284031215610ad657610ad5610785565b5b5f82015167ffffffffffffffff811115610af357610af2610789565b5b610aff84828501610a94565b91505092915050565b5f67ffffffffffffffff821115610b2257610b216107fb565b5b602082029050919050565b5f610b3f610b3a84610b08565b610859565b90508060208402830185811115610b5957610b5861089e565b5b835b81811015610b825780610b6e88826107d3565b845260208401935050602081019050610b5b565b5050509392505050565b5f82601f830112610ba057610b9f6107e7565b5b6008610bad848285610b2d565b91505092915050565b5f6101008284031215610bcc57610bcb610785565b5b5f610bd984828501610b8c565b91505092915050565b5f67ffffffffffffffff821115610bfc57610bfb6107fb565b5b602082029050919050565b5f819050919050565b610c1981610c07565b8114610c23575f80fd5b50565b5f81519050610c3481610c10565b92915050565b5f610c4c610c4784610be2565b610859565b90508060208402830185811115610c6657610c6561089e565b5b835b81811015610c8f5780610c7b8882610c26565b845260208401935050602081019050610c68565b5050509392505050565b5f82601f830112610cad57610cac6107e7565b5b6002610cba848285610c3a565b91505092915050565b5f60408284031215610cd857610cd7610785565b5b5f610ce584828501610c99565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b610d20816107ac565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f610d4a82610d26565b610d548185610d30565b9350610d64818560208601610a45565b610d6d816107eb565b840191505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b610daa81610c07565b82525050565b5f608083015f830151610dc55f860182610d17565b5060208301518482036020860152610ddd8282610d40565b91505060408301518482036040860152610df78282610d40565b9150506060830151610e0c6060860182610da1565b508091505092915050565b5f610e228383610db0565b905092915050565b5f602082019050919050565b5f610e4082610d78565b610e4a8185610d82565b935083602082028501610e5c85610d92565b805f5b85811015610e975784840389528151610e788582610e17565b9450610e8383610e2a565b925060208a01995050600181019050610e5f565b50829750879550505050505092915050565b5f608083015f830151610ebe5f860182610d17565b506020830151610ed16020860182610d17565b5060408301518482036040860152610ee98282610d40565b91505060608301518482036060860152610f038282610e36565b9150508091505092915050565b5f610f1b8383610ea9565b905092915050565b5f602082019050919050565b5f610f3982610cee565b610f438185610cf8565b935083602082028501610f5585610d08565b805f5b85811015610f905784840389528151610f718582610f10565b9450610f7c83610f23565b925060208a01995050600181019050610f58565b50829750879550505050505092915050565b5f6020820190508181035f830152610fba8184610f2f565b905092915050565b5f60208284031215610fd757610fd6610785565b5b5f610fe484828501610c26565b9150509291505056fe'
|
|
5
5
|
|
|
6
6
|
const commonInputType = ['address _registry, address[] memory lpAddresses']
|
|
7
7
|
|
|
8
8
|
const commonOutputTypeHr = [
|
|
9
9
|
'ReturnData[] returnData',
|
|
10
|
-
'struct ReturnData { address lpAddress; string name; Token[] coins; }',
|
|
10
|
+
'struct ReturnData { address lpAddress; address pool; string name; Token[] coins; }',
|
|
11
11
|
'struct Token { address _address; string name; string symbol; uint256 decimals; }',
|
|
12
12
|
]
|
|
13
13
|
|
|
@@ -17,6 +17,7 @@ const commonOutputType = [
|
|
|
17
17
|
name: 'returnData',
|
|
18
18
|
components: [
|
|
19
19
|
{ type: 'address', name: 'lpAddress' },
|
|
20
|
+
{ type: 'address', name: 'pool' },
|
|
20
21
|
{ type: 'string', name: 'name' },
|
|
21
22
|
{
|
|
22
23
|
type: 'tuple[]',
|
package/src/endpoints.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
export const LLAMA_API_URL = 'https://coins.llama.fi'
|
|
2
|
-
export const AGNOSTIC_QUERY_URL = 'https://proxy.eu-02.agnostic.engineering/query'
|
|
3
2
|
export const THE_GRAPH_BASE_URL =
|
|
4
3
|
'https://gateway-arbitrum.network.thegraph.com/api/e3c2ef8231c88703a5b450c188ce2db6/subgraphs/id'
|
package/src/index.ts
CHANGED
|
@@ -67,6 +67,16 @@ export { fetchCurveGauges } from './votemarket/curve/fetchCurveGauges.js'
|
|
|
67
67
|
export { fetchCurveUserVotes } from './votemarket/curve/fetchCurveUserVotes.js'
|
|
68
68
|
export { fetchSnapshotUserData } from './votemarket/curve/fetchSnapshotUserData.js'
|
|
69
69
|
|
|
70
|
+
// Campaign data
|
|
71
|
+
export { fetchEpochsVotes } from './votemarket/fetchEpochVotes.js'
|
|
72
|
+
export { fetchClaimableData } from './votemarket/fetchClaimableData.js'
|
|
73
|
+
|
|
74
|
+
// Proofs
|
|
75
|
+
|
|
76
|
+
export { generateBlockProof } from './votemarket/generateProofs/getBlockProof.js'
|
|
77
|
+
export { generateGaugeProof } from './votemarket/generateProofs/getGaugeProof.js'
|
|
78
|
+
export { generateUserProof } from './votemarket/generateProofs/getUserProof.js'
|
|
79
|
+
|
|
70
80
|
/// --- END VOTEMARKET
|
|
71
81
|
///////////////////////////////////////////////////////////////
|
|
72
82
|
|
|
@@ -272,6 +272,19 @@ export const fetchLockers = async ({ provider, chainId, prices, withAirdropGraph
|
|
|
272
272
|
}
|
|
273
273
|
}
|
|
274
274
|
|
|
275
|
+
if (locker.id === 'crv') {
|
|
276
|
+
alternativeYields.aSdCrvSpectra = {
|
|
277
|
+
label: 'asdCRV',
|
|
278
|
+
platform: 'Spectra',
|
|
279
|
+
href: 'https://app.spectra.finance/pools#mainnet/0xc63dff67fe1b63004ab6c773022ba06847c11335',
|
|
280
|
+
apr: Math.max(
|
|
281
|
+
...(httpCalls.spectraAprs
|
|
282
|
+
?.find((r) => r.underlying.address.toLowerCase() === locker.sdToken.address.toLowerCase())
|
|
283
|
+
?.pools.map((p) => p.lpApy?.boostedTotal || 0) || [0]),
|
|
284
|
+
),
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
|
|
275
288
|
if (locker.extensions.strategyGauge && httpCalls.cvgAprs?.[locker.extensions.strategyGauge]) {
|
|
276
289
|
alternativeYields[`convergence${locker.sdToken.symbol}Pool`] = {
|
|
277
290
|
label: `${locker.sdToken.symbol}/${locker.token.symbol}`,
|
|
@@ -17,6 +17,12 @@ const getHttpCalls = async (chainId: number) => {
|
|
|
17
17
|
console.error(error)
|
|
18
18
|
return undefined
|
|
19
19
|
}),
|
|
20
|
+
fetch('https://app.spectra.finance/api/v1/mainnet/pools')
|
|
21
|
+
.then((result) => result.json())
|
|
22
|
+
.catch((error) => {
|
|
23
|
+
console.error(error)
|
|
24
|
+
return undefined
|
|
25
|
+
}),
|
|
20
26
|
]
|
|
21
27
|
|
|
22
28
|
const httpResponses = (await Promise.allSettled(httpCalls)).map((result) =>
|
|
@@ -26,11 +32,13 @@ const getHttpCalls = async (chainId: number) => {
|
|
|
26
32
|
const bribesData = httpResponses[0]
|
|
27
33
|
const fpisBribesData = httpResponses[1]
|
|
28
34
|
const cvgAprs = httpResponses[2]?.projectedApr
|
|
35
|
+
const spectraAprs = httpResponses[3]
|
|
29
36
|
|
|
30
37
|
return {
|
|
31
38
|
bribesData,
|
|
32
39
|
fpisBribesData,
|
|
33
40
|
cvgAprs,
|
|
41
|
+
spectraAprs,
|
|
34
42
|
}
|
|
35
43
|
}
|
|
36
44
|
case fraxtal.id:
|
package/src/sdt/fetch.ts
CHANGED
|
@@ -1,42 +1,32 @@
|
|
|
1
|
-
import { formatUnits, parseAbi, parseUnits } from 'viem'
|
|
1
|
+
import { decodeAbiParameters, formatUnits, parseAbi, parseUnits } from 'viem'
|
|
2
2
|
|
|
3
|
-
import { ONE_DAY, type Token, contracts, tokenWithId } from '@stake-dao/constants'
|
|
3
|
+
import { ONE_DAY, type Token, contracts, explorers, tokenWithId } from '@stake-dao/constants'
|
|
4
4
|
import { Zero } from '../index.js'
|
|
5
5
|
import { type Price } from '../prices.js'
|
|
6
|
-
import {
|
|
6
|
+
import { multicall } from '../utils.js'
|
|
7
7
|
import veSdtAlternativeYields from './veSdtAlternativeYields.js'
|
|
8
8
|
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
from evm_events_ethereum_mainnet
|
|
14
|
-
where
|
|
15
|
-
address = '${contracts.veSdtFeeDistributor![1]!}' and
|
|
16
|
-
input_1_value_uint256 != '0' and
|
|
17
|
-
input_0_value_uint256 > '${timeLimit}' and
|
|
18
|
-
signature = 'CheckpointToken(uint256,uint256)'
|
|
19
|
-
ORDER BY time DESC
|
|
20
|
-
`
|
|
9
|
+
const CHECKPOINT_EVENTS_ENDPOINT = (fromBlock: number, apiKey: string) =>
|
|
10
|
+
`https://api.${
|
|
11
|
+
explorers[1].url
|
|
12
|
+
}/api?module=logs&action=getLogs&fromBlock=${fromBlock}&address=${contracts.veSdtFeeDistributor![1]!}&topic0=0xce749457b74e10f393f2c6b1ce4261b78791376db5a3f501477a809f03f500d6&apikey=${apiKey}`
|
|
21
13
|
|
|
22
14
|
interface TFetchSdt {
|
|
23
15
|
provider: any
|
|
24
16
|
prices: Price[]
|
|
25
|
-
|
|
17
|
+
explorerApiKey: string
|
|
26
18
|
}
|
|
27
19
|
|
|
28
20
|
// Need SDT and frax3Crv price
|
|
29
|
-
export const fetchSdt = async ({ provider, prices,
|
|
21
|
+
export const fetchSdt = async ({ provider, prices, explorerApiKey }: TFetchSdt) => {
|
|
30
22
|
const sdtToken = tokenWithId('sdt') as Token
|
|
31
23
|
const frax3CrvToken = tokenWithId('frax3crv') as Token
|
|
32
24
|
|
|
33
25
|
const now = Math.ceil(new Date().getTime() / 1000)
|
|
34
26
|
const lastCheck = now - ONE_DAY * 28
|
|
27
|
+
const lastCheckBlock = await (await fetch(`https://coins.llama.fi/block/ethereum/${lastCheck}`)).json()
|
|
35
28
|
|
|
36
|
-
|
|
37
|
-
if (agnosticKey) {
|
|
38
|
-
agnosticData = await agnostic(AGNOSTIC_QUERY(lastCheck), agnosticKey)
|
|
39
|
-
}
|
|
29
|
+
const checkpoints = await (await fetch(CHECKPOINT_EVENTS_ENDPOINT(lastCheckBlock.height, explorerApiKey))).json()
|
|
40
30
|
|
|
41
31
|
const rawSdtData: any = await multicall(
|
|
42
32
|
provider,
|
|
@@ -80,14 +70,26 @@ export const fetchSdt = async ({ provider, prices, agnosticKey }: TFetchSdt) =>
|
|
|
80
70
|
const averageLock = (parseUnits(formatUnits(veSdtTotalSupply, 0), sdtToken.decimals) / lockedSdtBalance) * BigInt(4)
|
|
81
71
|
|
|
82
72
|
let rewardsAmount = Zero
|
|
83
|
-
let
|
|
73
|
+
let checkedTimestamp = now - ONE_DAY * 7
|
|
84
74
|
|
|
85
75
|
let apr = 0
|
|
86
|
-
if (
|
|
87
|
-
|
|
88
|
-
const
|
|
89
|
-
|
|
90
|
-
|
|
76
|
+
if (checkpoints && checkpoints.message === 'OK') {
|
|
77
|
+
const checkpointsData = checkpoints.result.map((r) => {
|
|
78
|
+
const [eventTimestamp, eventAmount] = decodeAbiParameters(
|
|
79
|
+
[
|
|
80
|
+
{ type: 'uint256', name: 'timestamp' },
|
|
81
|
+
{ type: 'uint256', name: 'amount' },
|
|
82
|
+
],
|
|
83
|
+
r.data,
|
|
84
|
+
)
|
|
85
|
+
|
|
86
|
+
return { ts: Number(eventTimestamp), amount: eventAmount }
|
|
87
|
+
})
|
|
88
|
+
|
|
89
|
+
while (lastCheck <= checkedTimestamp && rewardsAmount === Zero) {
|
|
90
|
+
const checkedWeek = checkpointsData ? checkpointsData.filter((d: any) => checkedTimestamp < d.ts) : null
|
|
91
|
+
rewardsAmount = checkedWeek ? checkedWeek.reduce((total, d) => total + d.amount, Zero) : Zero
|
|
92
|
+
checkedTimestamp = checkedTimestamp - ONE_DAY * 7
|
|
91
93
|
}
|
|
92
94
|
|
|
93
95
|
apr =
|
|
@@ -5,7 +5,7 @@ export const CHAINS_DENOMINATOR = {
|
|
|
5
5
|
}
|
|
6
6
|
|
|
7
7
|
export const PANCAKESWAP_FEE_URL = (version: string, chainId: number) => {
|
|
8
|
-
return `https://explorer
|
|
8
|
+
return `https://explorer.pancakeswap.com/api/cached/pools/apr/${version}/${CHAINS_DENOMINATOR[chainId]}/farms-lp`
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
export const MANAGER_FEES_ENDPOINT =
|