blobstream-contracts 0.0.1-security → 3.1.3
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.
Potentially problematic release.
This version of blobstream-contracts might be problematic. Click here for more details.
- package/.codecov.yml +51 -0
- package/.github/CODEOWNERS +7 -0
- package/.github/dependabot.yml +18 -0
- package/.github/workflows/code-analysis.yml +41 -0
- package/.github/workflows/contract-inheritance-check.yml +28 -0
- package/.github/workflows/go-check.yml +25 -0
- package/.github/workflows/labels.yml +19 -0
- package/.github/workflows/lint.yml +37 -0
- package/.github/workflows/tests.yml +72 -0
- package/.gitmodules +12 -0
- package/.golangci.yml +64 -0
- package/.markdownlint.yaml +5 -0
- package/.markdownlint.yml +4 -0
- package/.markdownlintignore +1 -0
- package/.prettierrc.json +11 -0
- package/LICENSE +201 -0
- package/Makefile +18 -0
- package/README.md +102 -5
- package/docs/inclusion-proofs.md +69 -0
- package/foundry.toml +4 -0
- package/go.mod +34 -0
- package/go.sum +212 -0
- package/hardhat.config.ts +46 -0
- package/index.js +43 -0
- package/package.json +31 -3
- package/remappings.txt +6 -0
- package/scripts/Dockerfile_Environment +39 -0
- package/scripts/deploy.ts +12 -0
- package/scripts/gen.sh +34 -0
- package/scripts/upgradability_check.sh +22 -0
- package/slither.config.json +3 -0
- package/src/Blobstream.sol +366 -0
- package/src/Constants.sol +10 -0
- package/src/DataRootTuple.sol +15 -0
- package/src/IDAOracle.sol +18 -0
- package/src/lib/tree/Constants.sol +23 -0
- package/src/lib/tree/Types.sol +37 -0
- package/src/lib/tree/Utils.sol +106 -0
- package/src/lib/tree/binary/BinaryMerkleMultiproof.sol +12 -0
- package/src/lib/tree/binary/BinaryMerkleProof.sol +12 -0
- package/src/lib/tree/binary/BinaryMerkleTree.sol +256 -0
- package/src/lib/tree/binary/TreeHasher.sol +23 -0
- package/src/lib/tree/binary/test/BinaryMerkleTree.t.sol +365 -0
- package/src/lib/tree/binary/test/TreeHasher.t.sol +40 -0
- package/src/lib/tree/namespace/NamespaceMerkleMultiproof.sol +14 -0
- package/src/lib/tree/namespace/NamespaceMerkleProof.sol +14 -0
- package/src/lib/tree/namespace/NamespaceMerkleTree.sol +306 -0
- package/src/lib/tree/namespace/NamespaceNode.sol +23 -0
- package/src/lib/tree/namespace/TreeHasher.sol +69 -0
- package/src/lib/tree/namespace/test/NamespaceMerkleMultiproof.t.sol +108 -0
- package/src/lib/tree/namespace/test/NamespaceMerkleTree.t.sol +644 -0
- package/src/lib/tree/namespace/test/TreeHasher.t.sol +66 -0
- package/src/lib/tree/test/Utils.t.sol +48 -0
- package/src/lib/tree/test/blob.dat +0 -0
- package/src/lib/tree/test/header.dat +0 -0
- package/src/lib/tree/test/proofs.json +1 -0
- package/src/lib/verifier/DAVerifier.sol +328 -0
- package/src/lib/verifier/test/DAVerifier.t.sol +396 -0
- package/src/lib/verifier/test/RollupInclusionProofs.t.sol +589 -0
- package/src/test/Blobstream.t.sol +200 -0
- package/src/test/BlobstreamBenchmark.t.sol +137 -0
- package/tsconfig.json +11 -0
- package/wrappers/Blobstream.sol/wrapper.go +1325 -0
- package/wrappers/ERC1967Proxy.sol/wrapper.go +668 -0
@@ -0,0 +1,1325 @@
|
|
1
|
+
// Code generated - DO NOT EDIT.
|
2
|
+
// This file is a generated binding and any manual changes will be lost.
|
3
|
+
|
4
|
+
package wrappers
|
5
|
+
|
6
|
+
import (
|
7
|
+
"errors"
|
8
|
+
"math/big"
|
9
|
+
"strings"
|
10
|
+
|
11
|
+
ethereum "github.com/ethereum/go-ethereum"
|
12
|
+
"github.com/ethereum/go-ethereum/accounts/abi"
|
13
|
+
"github.com/ethereum/go-ethereum/accounts/abi/bind"
|
14
|
+
"github.com/ethereum/go-ethereum/common"
|
15
|
+
"github.com/ethereum/go-ethereum/core/types"
|
16
|
+
"github.com/ethereum/go-ethereum/event"
|
17
|
+
)
|
18
|
+
|
19
|
+
// Reference imports to suppress errors if they are not otherwise used.
|
20
|
+
var (
|
21
|
+
_ = errors.New
|
22
|
+
_ = big.NewInt
|
23
|
+
_ = strings.NewReader
|
24
|
+
_ = ethereum.NotFound
|
25
|
+
_ = bind.Bind
|
26
|
+
_ = common.Big1
|
27
|
+
_ = types.BloomLookup
|
28
|
+
_ = event.NewSubscription
|
29
|
+
_ = abi.ConvertType
|
30
|
+
)
|
31
|
+
|
32
|
+
// BinaryMerkleProof is an auto generated low-level Go binding around an user-defined struct.
|
33
|
+
type BinaryMerkleProof struct {
|
34
|
+
SideNodes [][32]byte
|
35
|
+
Key *big.Int
|
36
|
+
NumLeaves *big.Int
|
37
|
+
}
|
38
|
+
|
39
|
+
// DataRootTuple is an auto generated low-level Go binding around an user-defined struct.
|
40
|
+
type DataRootTuple struct {
|
41
|
+
Height *big.Int
|
42
|
+
DataRoot [32]byte
|
43
|
+
}
|
44
|
+
|
45
|
+
// Signature is an auto generated low-level Go binding around an user-defined struct.
|
46
|
+
type Signature struct {
|
47
|
+
V uint8
|
48
|
+
R [32]byte
|
49
|
+
S [32]byte
|
50
|
+
}
|
51
|
+
|
52
|
+
// Validator is an auto generated low-level Go binding around an user-defined struct.
|
53
|
+
type Validator struct {
|
54
|
+
Addr common.Address
|
55
|
+
Power *big.Int
|
56
|
+
}
|
57
|
+
|
58
|
+
// WrappersMetaData contains all meta data concerning the Wrappers contract.
|
59
|
+
var WrappersMetaData = &bind.MetaData{
|
60
|
+
ABI: "[{\"type\":\"function\",\"name\":\"UPGRADE_INTERFACE_VERSION\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"string\",\"internalType\":\"string\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"initialize\",\"inputs\":[{\"name\":\"_nonce\",\"type\":\"uint256\",\"internalType\":\"uint256\"},{\"name\":\"_powerThreshold\",\"type\":\"uint256\",\"internalType\":\"uint256\"},{\"name\":\"_validatorSetCheckpoint\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"}],\"outputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"owner\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"address\",\"internalType\":\"address\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"proxiableUUID\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"renounceOwnership\",\"inputs\":[],\"outputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"state_dataRootTupleRoots\",\"inputs\":[{\"name\":\"\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"state_eventNonce\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"state_lastValidatorSetCheckpoint\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"state_powerThreshold\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"submitDataRootTupleRoot\",\"inputs\":[{\"name\":\"_newNonce\",\"type\":\"uint256\",\"internalType\":\"uint256\"},{\"name\":\"_validatorSetNonce\",\"type\":\"uint256\",\"internalType\":\"uint256\"},{\"name\":\"_dataRootTupleRoot\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"},{\"name\":\"_currentValidatorSet\",\"type\":\"tuple[]\",\"internalType\":\"structValidator[]\",\"components\":[{\"name\":\"addr\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"power\",\"type\":\"uint256\",\"internalType\":\"uint256\"}]},{\"name\":\"_sigs\",\"type\":\"tuple[]\",\"internalType\":\"structSignature[]\",\"components\":[{\"name\":\"v\",\"type\":\"uint8\",\"internalType\":\"uint8\"},{\"name\":\"r\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"},{\"name\":\"s\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"}]}],\"outputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"transferOwnership\",\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\",\"internalType\":\"address\"}],\"outputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"updateValidatorSet\",\"inputs\":[{\"name\":\"_newNonce\",\"type\":\"uint256\",\"internalType\":\"uint256\"},{\"name\":\"_oldNonce\",\"type\":\"uint256\",\"internalType\":\"uint256\"},{\"name\":\"_newPowerThreshold\",\"type\":\"uint256\",\"internalType\":\"uint256\"},{\"name\":\"_newValidatorSetHash\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"},{\"name\":\"_currentValidatorSet\",\"type\":\"tuple[]\",\"internalType\":\"structValidator[]\",\"components\":[{\"name\":\"addr\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"power\",\"type\":\"uint256\",\"internalType\":\"uint256\"}]},{\"name\":\"_sigs\",\"type\":\"tuple[]\",\"internalType\":\"structSignature[]\",\"components\":[{\"name\":\"v\",\"type\":\"uint8\",\"internalType\":\"uint8\"},{\"name\":\"r\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"},{\"name\":\"s\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"}]}],\"outputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"upgradeToAndCall\",\"inputs\":[{\"name\":\"newImplementation\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"data\",\"type\":\"bytes\",\"internalType\":\"bytes\"}],\"outputs\":[],\"stateMutability\":\"payable\"},{\"type\":\"function\",\"name\":\"verifyAttestation\",\"inputs\":[{\"name\":\"_tupleRootNonce\",\"type\":\"uint256\",\"internalType\":\"uint256\"},{\"name\":\"_tuple\",\"type\":\"tuple\",\"internalType\":\"structDataRootTuple\",\"components\":[{\"name\":\"height\",\"type\":\"uint256\",\"internalType\":\"uint256\"},{\"name\":\"dataRoot\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"}]},{\"name\":\"_proof\",\"type\":\"tuple\",\"internalType\":\"structBinaryMerkleProof\",\"components\":[{\"name\":\"sideNodes\",\"type\":\"bytes32[]\",\"internalType\":\"bytes32[]\"},{\"name\":\"key\",\"type\":\"uint256\",\"internalType\":\"uint256\"},{\"name\":\"numLeaves\",\"type\":\"uint256\",\"internalType\":\"uint256\"}]}],\"outputs\":[{\"name\":\"\",\"type\":\"bool\",\"internalType\":\"bool\"}],\"stateMutability\":\"view\"},{\"type\":\"event\",\"name\":\"DataRootTupleRootEvent\",\"inputs\":[{\"name\":\"nonce\",\"type\":\"uint256\",\"indexed\":true,\"internalType\":\"uint256\"},{\"name\":\"dataRootTupleRoot\",\"type\":\"bytes32\",\"indexed\":false,\"internalType\":\"bytes32\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"Initialized\",\"inputs\":[{\"name\":\"version\",\"type\":\"uint64\",\"indexed\":false,\"internalType\":\"uint64\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"OwnershipTransferred\",\"inputs\":[{\"name\":\"previousOwner\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"},{\"name\":\"newOwner\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"Upgraded\",\"inputs\":[{\"name\":\"implementation\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"ValidatorSetUpdatedEvent\",\"inputs\":[{\"name\":\"nonce\",\"type\":\"uint256\",\"indexed\":true,\"internalType\":\"uint256\"},{\"name\":\"powerThreshold\",\"type\":\"uint256\",\"indexed\":false,\"internalType\":\"uint256\"},{\"name\":\"validatorSetHash\",\"type\":\"bytes32\",\"indexed\":false,\"internalType\":\"bytes32\"}],\"anonymous\":false},{\"type\":\"error\",\"name\":\"AddressEmptyCode\",\"inputs\":[{\"name\":\"target\",\"type\":\"address\",\"internalType\":\"address\"}]},{\"type\":\"error\",\"name\":\"AlreadyInitialized\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"ERC1967InvalidImplementation\",\"inputs\":[{\"name\":\"implementation\",\"type\":\"address\",\"internalType\":\"address\"}]},{\"type\":\"error\",\"name\":\"ERC1967NonPayable\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"FailedInnerCall\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"InsufficientVotingPower\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"InvalidDataRootTupleRootNonce\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"InvalidSignature\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"InvalidValidatorSetNonce\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"MalformedCurrentValidatorSet\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"NotInitializing\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"OwnableInvalidOwner\",\"inputs\":[{\"name\":\"owner\",\"type\":\"address\",\"internalType\":\"address\"}]},{\"type\":\"error\",\"name\":\"OwnableUnauthorizedAccount\",\"inputs\":[{\"name\":\"account\",\"type\":\"address\",\"internalType\":\"address\"}]},{\"type\":\"error\",\"name\":\"SuppliedValidatorSetInvalid\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"UUPSUnauthorizedCallContext\",\"inputs\":[]},{\"type\":\"error\",\"name\":\"UUPSUnsupportedProxiableUUID\",\"inputs\":[{\"name\":\"slot\",\"type\":\"bytes32\",\"internalType\":\"bytes32\"}]}]",
|
61
|
+
Bin: "0x60a06040523462000044576200001462000054565b6200001e6200004a565b61350e620000d58239608051818181611caf01528181611d1b0152611ee6015261350e90f35b62000050565b60405190565b5f80fd5b6200005e62000060565b565b6200006a6200006c565b565b62000076620000c4565b565b60018060a01b031690565b90565b6200009f62000099620000a59262000078565b62000083565b62000078565b90565b620000b39062000086565b90565b620000c190620000a8565b90565b620000cf30620000b6565b60805256fe60806040526004361015610013575b610be7565b61001d5f356100fc565b806305d85c13146100f75780631f3302a9146100f2578063226fe7be146100ed5780634f1ef286146100e857806352d1902d146100e35780635433218c146100de578063715018a6146100d9578063817f985b146100d45780638da5cb5b146100cf578063ad3cb1cc146100ca578063cdade866146100c5578063e23eb326146100c0578063e5a2b5d2146100bb5763f2fde38b0361000e57610bb4565b610b61565b610b18565b610a5a565b6109cb565b610882565b61082b565b61078c565b610757565b6106e6565b61068b565b61054d565b6104dd565b610284565b60e01c90565b60405190565b5f80fd5b5f80fd5b5f80fd5b90565b61012081610114565b0361012757565b5f80fd5b9050359061013882610117565b565b90565b6101468161013a565b0361014d57565b5f80fd5b9050359061015e8261013d565b565b5f80fd5b5f80fd5b5f80fd5b909182601f830112156101a65781359167ffffffffffffffff83116101a157602001926040830284011161019c57565b610168565b610164565b610160565b909182601f830112156101e55781359167ffffffffffffffff83116101e05760200192606083028401116101db57565b610168565b610164565b610160565b60c08183031261027a57610200825f830161012b565b9261020e836020840161012b565b9261021c816040850161012b565b9261022a8260608301610151565b92608082013567ffffffffffffffff8111610275578361024b91840161016c565b92909360a082013567ffffffffffffffff81116102705761026c92016101ab565b9091565b610110565b610110565b61010c565b5f0190565b346102bc576102a66102973660046101ea565b96959095949194939293610d2b565b6102ae610102565b806102b88161027f565b0390f35b610108565b5f80fd5b601f801991011690565b634e487b7160e01b5f52604160045260245ffd5b906102ed906102c5565b810190811067ffffffffffffffff82111761030757604052565b6102cf565b9061031f610318610102565b92836102e3565b565b5f80fd5b919060408382031261035f576103589061033f604061030c565b9361034c825f830161012b565b5f860152602001610151565b6020830152565b6102c1565b67ffffffffffffffff811161037c5760208091020190565b6102cf565b9092919261039661039182610364565b61030c565b93818552602080860192028301928184116103d357915b8383106103ba5750505050565b602080916103c88486610151565b8152019201916103ad565b610168565b9080601f830112156103f6578160206103f393359101610381565b90565b610160565b91909160608184031261046057610412606061030c565b925f8201359167ffffffffffffffff831161045b57610436826104549483016103d8565b5f860152610447826020830161012b565b602086015260400161012b565b6040830152565b610321565b6102c1565b916080838303126104b15761047c825f850161012b565b9261048a8360208301610325565b92606082013567ffffffffffffffff81116104ac576104a992016103fb565b90565b610110565b61010c565b151590565b6104c4906104b6565b9052565b91906104db905f602085019401906104bb565b565b3461050e5761050a6104f96104f3366004610465565b91610f1c565b610501610102565b918291826104c8565b0390f35b610108565b90916060828403126105485761054561052e845f850161012b565b9361053c816020860161012b565b93604001610151565b90565b61010c565b3461057c57610566610560366004610513565b916112e1565b61056e610102565b806105788161027f565b0390f35b610108565b60018060a01b031690565b61059590610581565b90565b6105a18161058c565b036105a857565b5f80fd5b905035906105b982610598565b565b5f80fd5b67ffffffffffffffff81116105dd576105d96020916102c5565b0190565b6102cf565b90825f939282370152565b909291926106026105fd826105bf565b61030c565b9381855260208501908284011161061e5761061c926105e2565b565b6105bb565b9080601f830112156106415781602061063e933591016105ed565b90565b610160565b9190916040818403126106865761065f835f83016105ac565b92602082013567ffffffffffffffff81116106815761067e9201610623565b90565b610110565b61010c565b61069f610699366004610646565b90611317565b6106a7610102565b806106b18161027f565b0390f35b5f9103126106bf57565b61010c565b6106cd9061013a565b9052565b91906106e4905f602085019401906106c4565b565b34610716576106f63660046106b5565b610712610701611392565b610709610102565b918291826106d1565b0390f35b610108565b1c90565b90565b610732906008610737930261071b565b61071f565b90565b906107459154610722565b90565b61075460965f9061073a565b90565b34610787576107673660046106b5565b610783610772610748565b61077a610102565b918291826106d1565b0390f35b610108565b346107ba5761079c3660046106b5565b6107a46113f2565b6107ac610102565b806107b68161027f565b0390f35b610108565b906020828203126107d8576107d5915f0161012b565b90565b61010c565b90565b6107f46107ef6107f992610114565b6107dd565b610114565b90565b90610806906107e0565b5f5260205260405f2090565b610828906108236099915f926107fc565b61073a565b90565b3461085b576108576108466108413660046107bf565b610812565b61084e610102565b918291826106d1565b0390f35b610108565b6108699061058c565b9052565b9190610880905f60208501940190610860565b565b346108b2576108923660046106b5565b6108ae61089d61142c565b6108a5610102565b9182918261086d565b0390f35b610108565b67ffffffffffffffff81116108d5576108d16020916102c5565b0190565b6102cf565b906108ec6108e7836108b7565b61030c565b918252565b5f7f352e302e30000000000000000000000000000000000000000000000000000000910152565b61092260056108da565b9061092f602083016108f1565b565b610939610918565b90565b610944610931565b90565b61094f61093c565b90565b5190565b60209181520190565b5f5b838110610971575050905f910152565b806020918301518185015201610961565b6109a16109aa6020936109af9361099881610952565b93848093610956565b9586910161095f565b6102c5565b0190565b6109c89160208201915f818403910152610982565b90565b346109fb576109db3660046106b5565b6109f76109e6610947565b6109ee610102565b918291826109b3565b0390f35b610108565b90565b610a13906008610a18930261071b565b610a00565b90565b90610a269154610a03565b90565b610a3560985f90610a1b565b90565b610a4190610114565b9052565b9190610a58905f60208501940190610a38565b565b34610a8a57610a6a3660046106b5565b610a86610a75610a29565b610a7d610102565b91829182610a45565b0390f35b610108565b909160a082840312610b1357610aa7835f840161012b565b92610ab5816020850161012b565b92610ac38260408301610151565b92606082013567ffffffffffffffff8111610b0e5783610ae491840161016c565b929093608082013567ffffffffffffffff8111610b0957610b0592016101ab565b9091565b610110565b610110565b61010c565b34610b4d57610b37610b2b366004610a8f565b95949094939193611442565b610b3f610102565b80610b498161027f565b0390f35b610108565b610b5e60975f90610a1b565b90565b34610b9157610b713660046106b5565b610b8d610b7c610b52565b610b84610102565b91829182610a45565b0390f35b610108565b90602082820312610baf57610bac915f016105ac565b90565b61010c565b34610be257610bcc610bc7366004610b96565b611641565b610bd4610102565b80610bde8161027f565b0390f35b610108565b5f80fd5b5f1c90565b610bfc610c0191610beb565b610a00565b90565b610c0e9054610bf0565b90565b610c1d610c2291610beb565b61071f565b90565b610c2f9054610c11565b90565b90565b610c49610c44610c4e92610c32565b6107dd565b610114565b90565b634e487b7160e01b5f52601160045260245ffd5b610c74610c7a91939293610114565b92610114565b8201809211610c8557565b610c51565b5090565b5090565b5f1b90565b90610ca35f1991610c92565b9181191691161790565b610cb69061013a565b90565b610cc290610beb565b90565b90610cda610cd5610ce192610cad565b610cb9565b8254610c97565b9055565b90565b90610cfd610cf8610d04926107e0565b610ce5565b8254610c97565b9055565b916020610d29929493610d2260408201965f830190610a38565b01906106c4565b565b9490969195939296610d3d6098610c04565b610d476097610c04565b91610d526096610c25565b91610d79610d73610d6e8b93610d686001610c35565b90610c65565b610114565b91610114565b03610ea257610d89868590610c8a565b610da5610d9f610d9a8a8990610c8e565b610114565b91610114565b03610e7f57610dcd610dc7610dd392610dbf898890611751565b869091611810565b9261013a565b9161013a565b03610e5c57610e0094610df993610dec888a8c91611810565b95939190918693946118cb565b6096610cc5565b610e0b826097610ce8565b610e16816098610ce8565b9091610e427fe55fb3cbbfe29b13c7f8a35ef23127e7df9ab88df16bac166ad254a20f02414c926107e0565b92610e57610e4e610102565b92839283610d08565b0390a2565b610e64610102565b630bbdaec960e11b815280610e7b6004820161027f565b0390fd5b610e87610102565b63c6617b7b60e01b815280610e9e6004820161027f565b0390fd5b610eaa610102565b6368a35ffd60e11b815280610ec16004820161027f565b0390fd5b5f90565b610ed290610114565b9052565b610edf9061013a565b9052565b90602080610f0593610efb5f8201515f860190610ec9565b0151910190610ed6565b565b9190610f1a905f60408501940190610ee3565b565b90610f25610ec5565b5081610f42610f3c610f376098610c04565b610114565b91610114565b11610f9257610f8e92610f89610f64610f5f610f7a9560996107fc565b610c25565b9192610f6e610102565b94859160208301610f07565b602082018103825203846102e3565b611a6f565b5090565b5050505f90565b60401c90565b60ff1690565b610fb1610fb691610f99565b610f9f565b90565b610fc39054610fa5565b90565b67ffffffffffffffff1690565b610fdf610fe491610beb565b610fc6565b90565b610ff19054610fd3565b90565b67ffffffffffffffff1690565b61101561101061101a92610c32565b6107dd565b610ff4565b90565b61103161102c61103692610581565b6107dd565b610581565b90565b6110429061101d565b90565b61104e90611039565b90565b90565b61106861106361106d92611051565b6107dd565b610114565b90565b9061108367ffffffffffffffff91610c92565b9181191691161790565b6110a161109c6110a692610ff4565b6107dd565b610ff4565b90565b90565b906110c16110bc6110c89261108d565b6110a9565b8254611070565b9055565b60401b90565b906110e668ff0000000000000000916110cc565b9181191691161790565b6110f9906104b6565b90565b90565b9061111461110f61111b926110f0565b6110fc565b82546110d2565b9055565b61112890611001565b9052565b919061113f905f6020850194019061111f565b565b611149611c38565b9261115e6111585f8601610fb9565b156104b6565b928380611285575b61117090156104b6565b80611228575b6112065761119e9261119361118b6001611001565b5f88016110ac565b846111f4575b6112af565b6111a6575b50565b6111b3905f8091016110ff565b60016111eb7fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2916111e2610102565b9182918261112c565b0390a15f6111a3565b61120160015f88016110ff565b611199565b61120e610102565b62dc149f60e41b8152806112246004820161027f565b0390fd5b5061123230611045565b3b61124561123f5f611054565b91610114565b148061125b575b61125690156104b6565b611176565b5061125661126a5f8701610fe7565b61127d6112776001611001565b91610ff4565b14905061124c565b506111706112945f8701610fe7565b6112a76112a16001611001565b91610ff4565b109050611166565b6112cf926112c16112c8926098610ce8565b6096610cc5565b6097610ce8565b6112df6112da611c5c565b611c87565b565b906112ec9291611141565b565b90611300916112fb611c9e565b611302565b565b906113159161131081611d57565b611dc9565b565b90611321916112ee565b565b5f90565b61133890611333611ed5565b611386565b90565b90565b61135261134d6113579261133b565b610c92565b61013a565b90565b6113837f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61133e565b90565b5061138f61135a565b90565b6113a261139d611323565b611327565b90565b6113ad611f3a565b6113b56113df565b565b6113cb6113c66113d092611051565b6107dd565b610581565b90565b6113dc906113b7565b90565b6113f06113eb5f6113d3565b611fd9565b565b6113fa6113a5565b565b5f90565b60018060a01b031690565b61141761141c91610beb565b611400565b90565b611429905461140b565b90565b6114346113fc565b5061143f606461141f565b90565b9493929091956114526098610c04565b61145c6097610c04565b936114676096610c25565b9161148e6114886114838b9361147d6001610c35565b90610c65565b610114565b91610114565b036115b25761149e848790610c8a565b6114ba6114b46114af8a8790610c8e565b610114565b91610114565b0361158f576114e26114dc6114e8926114d4878a90611751565b889091611810565b9261013a565b9161013a565b0361156c57611508946114fc8789906120aa565b929490919293946118cb565b611513816098610ce8565b61152882611523609984906107fc565b610cc5565b6115676115557f6614d037bde4905e31ca5ff05de61964c267f28b0320ed49e59f7d99752e1c4f926107e0565b9261155e610102565b918291826106d1565b0390a2565b611574610102565b630bbdaec960e11b81528061158b6004820161027f565b0390fd5b611597610102565b63c6617b7b60e01b8152806115ae6004820161027f565b0390fd5b6115ba610102565b63e869766d60e01b8152806115d16004820161027f565b0390fd5b6115e6906115e1611f3a565b6115e8565b565b806116036115fd6115f85f6113d3565b61058c565b9161058c565b146116135761161190611fd9565b565b61163d61161f5f6113d3565b611627610102565b918291631e4fbdf760e01b83526004830161086d565b0390fd5b61164a906115d5565b565b60209181520190565b90565b506116679060208101906105ac565b90565b6116739061058c565b9052565b5061168690602081019061012b565b90565b9060206116b46116bc936116ab6116a25f830183611658565b5f86019061166a565b82810190611677565b910190610ec9565b565b906116cb81604093611689565b0190565b5090565b60400190565b916116e7826116ed9261164c565b92611655565b90815f905b828210611700575050505090565b9091929361172261171c60019261171788866116cf565b6116be565b956116d3565b9201909291926116f2565b90916117449260208301925f8185039101526116d9565b90565b60200190565b5190565b6117849061175d611323565b50611775611769610102565b9384926020840161172d565b602082018103825203826102e3565b6117966117908261174d565b91611747565b2090565b90565b6117b16117ac6117b69261179a565b610c92565b61013a565b90565b6117cf6918da1958dadc1bda5b9d60b21b61179d565b90565b61180761180e946117fd6060949897956117f3608086019a5f8701906106c4565b6020850190610a38565b6040830190610a38565b01906106c4565b565b61183f61184e9293611820611323565b506118296117b9565b9294611833610102565b958694602086016117d2565b602082018103825203826102e3565b61186061185a8261174d565b91611747565b2090565b60016118709101610114565b90565b634e487b7160e01b5f52603260045260245ffd5b9190811015611897576060020190565b611873565b91908110156118ac576040020190565b611873565b356118bb81610598565b90565b356118c881610117565b90565b909294936118d85f611054565b926118e25f611054565b935b846119016118fb6118f6878a90610c8a565b610114565b91610114565b1015611a165761191b611916838a8891611887565b612169565b611a0c5761195461194e61193b5f611935888b8b9161189c565b016118b1565b85611948868d8b91611887565b916121ec565b156104b6565b6119e95761197990611973602061196d878a8a9161189c565b016118be565b90610c65565b938461198d61198789610114565b91610114565b10156119a35761199d905b611864565b936118e4565b505050506119bf9293506119b991505b92610114565b91610114565b106119c657565b6119ce610102565b63cabeb65560e01b8152806119e56004820161027f565b0390fd5b6119f1610102565b638baa579f60e01b815280611a086004820161027f565b0390fd5b9361199d90611998565b93505050506119bf9293506119b991506119b3565b5f90565b611a399051610114565b90565b5190565b634e487b7160e01b5f52602160045260245ffd5b60061115611a5e57565b611a40565b90611a6d82611a54565b565b9091611a79610ec5565b50611a82611a2b565b50611a8f60408401611a2f565b611aa2611a9c6001610c35565b91610114565b11155f14611bea57611ab65f840151611a3c565b611ac8611ac25f611054565b91610114565b03611be0575b611ada60208401611a2f565b611af7611af1611aec60408701611a2f565b610114565b91610114565b1015611bd657611b0690612474565b91611b135f820151611a3c565b611b25611b1f5f611054565b91610114565b14611b8f579182611b3c6020611b54949501611a2f565b915f611b4a60408401611a2f565b919201519261250e565b80611b67611b615f611a63565b91611a63565b03611b865750611b7a611b80919261013a565b9161013a565b14905f90565b929150505f9190565b6040611b9b9101611a2f565b611bae611ba86001610c35565b91610114565b145f14611bce57611bc2611bc8919261013a565b9161013a565b14905f90565b50505f905f90565b5050505f90600290565b5050505f90600190565b611bf65f840151611a3c565b611c28611c22611c1d611c0b60208801611a2f565b611c1760408901611a2f565b906122c3565b610114565b91610114565b0315611ace575050505f90600190565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0e90565b611c646113fc565b503390565b611c7a90611c75612722565b611c7c565b565b611c859061277a565b565b611c9090611c69565b565b611c9b90611039565b90565b611ca730611c92565b611cd9611cd37f000000000000000000000000000000000000000000000000000000000000000061058c565b9161058c565b148015611d0a575b611ce757565b611cef610102565b63703e46dd60e11b815280611d066004820161027f565b0390fd5b50611d13612785565b611d45611d3f7f000000000000000000000000000000000000000000000000000000000000000061058c565b9161058c565b1415611ce1565b50611d55611f3a565b565b611d6090611d4c565b565b611d6b9061101d565b90565b611d7790611d62565b90565b611d8390611039565b90565b60e01b90565b90505190611d998261013d565b565b90602082820312611db457611db1915f01611d8c565b90565b61010c565b611dc1610102565b3d5f823e3d90fd5b9190611df76020611de1611ddc86611d6e565b611d7a565b6352d1902d90611def610102565b938492611d86565b82528180611e076004820161027f565b03915afa80915f92611ea5575b50155f14611e4f575050906001611e2957505b565b611e4b90611e35610102565b918291634c9c8ce360e01b83526004830161086d565b0390fd5b9283611e6a611e64611e5f61135a565b61013a565b9161013a565b03611e7f57611e7a9293506127ab565b611e27565b611ea184611e8b610102565b918291632a87526960e21b8352600483016106d1565b0390fd5b611ec791925060203d8111611ece575b611ebf81836102e3565b810190611d9b565b905f611e14565b503d611eb5565b611ede30611c92565b611f10611f0a7f000000000000000000000000000000000000000000000000000000000000000061058c565b9161058c565b03611f1757565b611f1f610102565b63703e46dd60e11b815280611f366004820161027f565b0390fd5b611f4261142c565b611f5b611f55611f50611c5c565b61058c565b9161058c565b03611f6257565b611f8b611f6d611c5c565b611f75610102565b91829163118cdaa760e01b83526004830161086d565b0390fd5b90611fa060018060a01b0391610c92565b9181191691161790565b611fb390611039565b90565b90565b90611fce611fc9611fd592611faa565b611fb6565b8254611f8f565b9055565b611fe3606461141f565b611fee826064611fb9565b9061202261201c7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e093611faa565b91611faa565b9161202b610102565b806120358161027f565b0390a3565b90565b61205161204c6120569261203a565b610c92565b61013a565b90565b6120756f0e8e4c2dce6c2c6e8d2dedc84c2e8c6d60831b61203d565b90565b6040906120a16120a8949695939661209760608401985f8501906106c4565b6020830190610a38565b01906106c4565b565b6120e7906120b6611323565b506120d86120c2612059565b91936120cc610102565b94859360208501612078565b602082018103825203826102e3565b6120f96120f38261174d565b91611747565b2090565b356121078161013d565b90565b61211e61211961212392611051565b610c92565b61013a565b90565b60ff1690565b61213581612126565b0361213c57565b5f80fd5b3561214a8161212c565b90565b61216161215c61216692611051565b6107dd565b612126565b90565b612171610ec5565b5061217e602082016120fd565b61219061218a5f61210a565b9161013a565b14806121c7575b90816121a2575b5090565b6121ae91505f01612140565b6121c06121ba5f61214d565b91612126565b145f61219e565b506121d4604082016120fd565b6121e66121e05f61210a565b9161013a565b14612197565b916122336122389161220961223e94612203610ec5565b506128ab565b906122155f8201612140565b61222d6040612226602085016120fd565b93016120fd565b926128f4565b61058c565b9161058c565b1490565b5f90565b90565b61225d61225861226292612246565b6107dd565b610114565b90565b612270610100612249565b90565b61228261228891939293610114565b92610114565b820391821161229357565b610c51565b1b90565b6122bb906122b56122af6122c094610114565b91610114565b90612298565b610114565b90565b6122cb612242565b50816122e06122da6001610c35565b91610114565b11156123c2576123006122f1612265565b6122fa8461291a565b90612273565b91612328600161232361231d866123176001610c35565b90612273565b91610c35565b61229c565b908261234f6123496123448561233e6001610c35565b90612273565b610114565b91610114565b11155f1461235d5750505090565b908092935061237561236f6001610c35565b91610114565b145f1461238c575050506123896001610c35565b90565b6123a66123ac926123a06001958290612273565b92612273565b906122c3565b906123ba6123bf9291610c35565b610c65565b90565b50506123cd5f611054565b90565b60ff60f81b1690565b60f81b90565b6123f36123ee6123f892611051565b6123d9565b6123d0565b90565b6124045f6123df565b90565b90565b61241661241b916123d0565b612407565b9052565b905090565b612449612440926020926124378161174d565b9485809361241f565b9384910161095f565b0190565b8061245e600192612465959461240a565b0190612424565b90565b61247191612424565b90565b5f6124c4602092612483611323565b506124b361248f6123fb565b6124a561249a610102565b93849288840161244d565b8682018103825203826102e3565b6124bb610102565b91829182612468565b039060025afa156124dc576124d95f51610c92565b90565b611db9565b906124eb82611a3c565b8110156124fc576020809102010190565b611873565b61250b905161013a565b90565b939293612519611323565b50612522611a2b565b50816125366125305f611054565b91610114565b14612717578161254f6125496001610c35565b91610114565b146126e85761255d85611a3c565b61256f6125695f611054565b91610114565b146126dd5761257d826129d5565b6125ae865f906125a86125a26125928b611a3c565b61259c6001610c35565b90612273565b92611054565b90612bb6565b916125b7611a2b565b50806125cb6125c584610114565b91610114565b1061265c576125fb9392916125ed6125f3926125e5611323565b508290612273565b93612273565b84919261250e565b90918161261061260a5f611a63565b91611a63565b0361265457505061264a6126458461263f61262f61264f969792611a3c565b6126396001610c35565b90612273565b906124e1565b612501565b612d34565b905f90565b915092509190565b61267b93505f96949692919250612671611323565b509186919261250e565b90938161269061268a5f611a63565b91611a63565b036126d55750506126ca6126c56126d09394926126bf6126af82611a3c565b6126b96001610c35565b90612273565b906124e1565b612501565b90612d34565b905f90565b915092509190565b505090915090600590565b505090916126f590611a3c565b6127076127015f611054565b91610114565b0361271157905f90565b90600490565b505090915090600390565b61273361272d612da4565b156104b6565b61273957565b612741610102565b631afcd79f60e31b8152806127586004820161027f565b0390fd5b61276d90612768612722565b61276f565b565b61277890611fd9565b565b6127839061275c565b565b61278d6113fc565b506127a85f6127a261279d61135a565b612dc2565b0161141f565b90565b906127b582612dc5565b816127e07fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b91611faa565b906127e9610102565b806127f38161027f565b0390a26127ff8161174d565b61281161280b5f611054565b91610114565b115f146128255761282191612ea3565b505b565b505061282f612e21565b612823565b905090565b5f7f19457468657265756d205369676e6564204d6573736167653a0a333200000000910152565b61286c601c8092612834565b61287581612839565b0190565b90565b61288861288d9161013a565b612879565b9052565b906128a76128a0602093612860565b809261287c565b0190565b6128de6128cf916128ba611323565b506128c3610102565b92839160208301612891565b602082018103825203826102e3565b6128f06128ea8261174d565b91611747565b2090565b9261290f92612917946129056113fc565b5092909192612f92565b919091613281565b90565b612922612242565b5061292c5f611054565b5b612941600161293c8391610c35565b61229c565b61295361294d84610114565b91610114565b10156129725761296d906129676001610c35565b90610c65565b61292d565b612984915061297f612265565b612273565b90565b1561298e57565b5f80fd5b6129a66129a16129ab92610c32565b6107dd565b612126565b90565b6129cd906129c76129c16129d294612126565b91610114565b9061071b565b610114565b90565b6129dd612242565b506129fc816129f56129ef6001610c35565b91610114565b1015612987565b612a2c612a08826133ad565b612a27612a21600192612a1b6001610c35565b90612273565b91610c35565b61229c565b90612a40612a3a8392610114565b91610114565b14612a49575b90565b612a5d90612a576001612992565b906129ae565b612a46565b606090565b60207f207468616e205f656e6400000000000000000000000000000000000000000000917f496e76616c69642072616e67653a205f626567696e20697320677265617465725f8201520152565b612ac1602a604092610956565b612aca81612a67565b0190565b612ae39060208101905f818303910152612ab4565b90565b60207f65206f7574206f6620626f756e64730000000000000000000000000000000000917f496e76616c69642072616e67653a205f626567696e206f72205f656e642061725f8201520152565b612b40602f604092610956565b612b4981612ae6565b0190565b612b629060208101905f818303910152612b33565b90565b90612b77612b7283610364565b61030c565b918252565b369037565b90612ba6612b8e83612b65565b92602080612b9c8693610364565b9201910390612b7c565b565b90612bb29061013a565b9052565b929092612bc1612a62565b5083612bd5612bcf85610114565b91610114565b11612cbd5783612bf5612bef612bea84611a3c565b610114565b91610114565b118015612c9b575b612c7957612c14612c0f848690612273565b612b81565b91845b80612c2a612c2487610114565b91610114565b1015612c7057612c6b90612c66612c4a612c458684906124e1565b612501565b612c618791612c5a858c90612273565b90926124e1565b612ba8565b611864565b612c17565b50935050905090565b612c81610102565b62461bcd60e51b815280612c9760048201612b4d565b0390fd5b5082612cb7612cb1612cac84611a3c565b610114565b91610114565b11612bfd565b612cc5610102565b62461bcd60e51b815280612cdb60048201612ace565b0390fd5b612cf3612cee612cf892610c32565b6123d9565b6123d0565b90565b612d056001612cdf565b90565b60209392612d28600183612d208895612d309761240a565b01809261287c565b01809261287c565b0190565b612d87602092612d765f93612d47611323565b50612d68612d53612cfb565b9193612d5d610102565b948593898501612d08565b8682018103825203826102e3565b612d7e610102565b91829182612468565b039060025afa15612d9f57612d9c5f51610c92565b90565b611db9565b612dac610ec5565b50612dbf5f612db9611c38565b01610fb9565b90565b90565b803b612dd9612dd35f611054565b91610114565b14612dfb57612df9905f612df3612dee61135a565b612dc2565b01611fb9565b565b612e1d90612e07610102565b918291634c9c8ce360e01b83526004830161086d565b0390fd5b34612e34612e2e5f611054565b91610114565b11612e3b57565b612e43610102565b63b398979f60e01b815280612e5a6004820161027f565b0390fd5b606090565b90612e75612e70836105bf565b61030c565b918252565b3d5f14612e9557612e8a3d612e63565b903d5f602084013e5b565b612e9d612e5e565b90612e93565b5f80612ecf93612eb1612e5e565b508390602081019051915af490612ec6612e7a565b90919091613400565b90565b5f90565b612ee2612ee791610beb565b6107e0565b90565b90565b612f01612efc612f0692612eea565b6107dd565b610114565b90565b90565b612f20612f1b612f2592612f09565b6107dd565b612126565b90565b90565b612f3f612f3a612f4492612f28565b6107dd565b612126565b90565b612f5090612126565b9052565b612f89612f9094612f7f606094989795612f75608086019a5f8701906106c4565b6020850190612f47565b60408301906106c4565b01906106c4565b565b929190612f9d6113fc565b50612fa6612ed2565b50612fb083612ed6565b612fe2612fdc7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0612eed565b91610114565b116130a35780612ffb612ff5601b612f0c565b91612126565b141580613087575b613074576130225f936020959293613019610102565b94859485612f54565b838052039060015afa1561306f5761303a5f51610c92565b8061305561304f61304a5f6113d3565b61058c565b9161058c565b1461305f57905f90565b506130695f6113d3565b90600190565b611db9565b505050506130815f6113d3565b90600490565b508061309c613096601c612f2b565b91612126565b1415613003565b505050506130b05f6113d3565b90600390565b600511156130c057565b611a40565b906130cf826130b6565b565b60207f7565000000000000000000000000000000000000000000000000000000000000917f45434453413a20696e76616c6964207369676e6174757265202776272076616c5f8201520152565b61312b6022604092610956565b613134816130d1565b0190565b61314d9060208101905f81830391015261311e565b90565b60207f7565000000000000000000000000000000000000000000000000000000000000917f45434453413a20696e76616c6964207369676e6174757265202773272076616c5f8201520152565b6131aa6022604092610956565b6131b381613150565b0190565b6131cc9060208101905f81830391015261319d565b90565b5f7f45434453413a20696e76616c6964207369676e6174757265206c656e67746800910152565b613203601f602092610956565b61320c816131cf565b0190565b6132259060208101905f8183039101526131f6565b90565b5f7f45434453413a20696e76616c6964207369676e61747572650000000000000000910152565b61325c6018602092610956565b61326581613228565b0190565b61327e9060208101905f81830391015261324f565b90565b8061329461328e5f6130c5565b916130c5565b145f1461329e5750565b806132b26132ac60016130c5565b916130c5565b145f146132db576132c1610102565b62461bcd60e51b8152806132d760048201613269565b0390fd5b806132ef6132e960026130c5565b916130c5565b145f14613318576132fe610102565b62461bcd60e51b81528061331460048201613210565b0390fd5b8061332c61332660036130c5565b916130c5565b145f146133555761333b610102565b62461bcd60e51b815280613351600482016131b7565b0390fd5b61336861336260046130c5565b916130c5565b1461336f57565b613377610102565b62461bcd60e51b81528061338d60048201613138565b0390fd5b61339a90610114565b5f1981146133a85760010190565b610c51565b6133b5612242565b506133bf5f611054565b5b816133d36133cd5f611054565b91610114565b146133fb576133e46133f591613391565b916133ef6001612992565b906129ae565b906133c0565b905090565b906134149061340d612e5e565b50156104b6565b5f14613420575061348b565b6134298261174d565b61343b6134355f611054565b91610114565b1480613470575b61344a575090565b61346c90613456610102565b918291639996b31560e01b83526004830161086d565b0390fd5b50803b61348561347f5f611054565b91610114565b14613442565b6134948161174d565b6134a66134a05f611054565b91610114565b115f146134b557805190602001fd5b6134bd610102565b630a12f52160e11b8152806134d46004820161027f565b0390fdfea26469706673582212203fa473e1094dcd2c4adec9a31e5b8354ab4733484f056fd4c72cc0777e1e452264736f6c63430008160033",
|
62
|
+
}
|
63
|
+
|
64
|
+
// WrappersABI is the input ABI used to generate the binding from.
|
65
|
+
// Deprecated: Use WrappersMetaData.ABI instead.
|
66
|
+
var WrappersABI = WrappersMetaData.ABI
|
67
|
+
|
68
|
+
// WrappersBin is the compiled bytecode used for deploying new contracts.
|
69
|
+
// Deprecated: Use WrappersMetaData.Bin instead.
|
70
|
+
var WrappersBin = WrappersMetaData.Bin
|
71
|
+
|
72
|
+
// DeployWrappers deploys a new Ethereum contract, binding an instance of Wrappers to it.
|
73
|
+
func DeployWrappers(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *Wrappers, error) {
|
74
|
+
parsed, err := WrappersMetaData.GetAbi()
|
75
|
+
if err != nil {
|
76
|
+
return common.Address{}, nil, nil, err
|
77
|
+
}
|
78
|
+
if parsed == nil {
|
79
|
+
return common.Address{}, nil, nil, errors.New("GetABI returned nil")
|
80
|
+
}
|
81
|
+
|
82
|
+
address, tx, contract, err := bind.DeployContract(auth, *parsed, common.FromHex(WrappersBin), backend)
|
83
|
+
if err != nil {
|
84
|
+
return common.Address{}, nil, nil, err
|
85
|
+
}
|
86
|
+
return address, tx, &Wrappers{WrappersCaller: WrappersCaller{contract: contract}, WrappersTransactor: WrappersTransactor{contract: contract}, WrappersFilterer: WrappersFilterer{contract: contract}}, nil
|
87
|
+
}
|
88
|
+
|
89
|
+
// Wrappers is an auto generated Go binding around an Ethereum contract.
|
90
|
+
type Wrappers struct {
|
91
|
+
WrappersCaller // Read-only binding to the contract
|
92
|
+
WrappersTransactor // Write-only binding to the contract
|
93
|
+
WrappersFilterer // Log filterer for contract events
|
94
|
+
}
|
95
|
+
|
96
|
+
// WrappersCaller is an auto generated read-only Go binding around an Ethereum contract.
|
97
|
+
type WrappersCaller struct {
|
98
|
+
contract *bind.BoundContract // Generic contract wrapper for the low level calls
|
99
|
+
}
|
100
|
+
|
101
|
+
// WrappersTransactor is an auto generated write-only Go binding around an Ethereum contract.
|
102
|
+
type WrappersTransactor struct {
|
103
|
+
contract *bind.BoundContract // Generic contract wrapper for the low level calls
|
104
|
+
}
|
105
|
+
|
106
|
+
// WrappersFilterer is an auto generated log filtering Go binding around an Ethereum contract events.
|
107
|
+
type WrappersFilterer struct {
|
108
|
+
contract *bind.BoundContract // Generic contract wrapper for the low level calls
|
109
|
+
}
|
110
|
+
|
111
|
+
// WrappersSession is an auto generated Go binding around an Ethereum contract,
|
112
|
+
// with pre-set call and transact options.
|
113
|
+
type WrappersSession struct {
|
114
|
+
Contract *Wrappers // Generic contract binding to set the session for
|
115
|
+
CallOpts bind.CallOpts // Call options to use throughout this session
|
116
|
+
TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
|
117
|
+
}
|
118
|
+
|
119
|
+
// WrappersCallerSession is an auto generated read-only Go binding around an Ethereum contract,
|
120
|
+
// with pre-set call options.
|
121
|
+
type WrappersCallerSession struct {
|
122
|
+
Contract *WrappersCaller // Generic contract caller binding to set the session for
|
123
|
+
CallOpts bind.CallOpts // Call options to use throughout this session
|
124
|
+
}
|
125
|
+
|
126
|
+
// WrappersTransactorSession is an auto generated write-only Go binding around an Ethereum contract,
|
127
|
+
// with pre-set transact options.
|
128
|
+
type WrappersTransactorSession struct {
|
129
|
+
Contract *WrappersTransactor // Generic contract transactor binding to set the session for
|
130
|
+
TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
|
131
|
+
}
|
132
|
+
|
133
|
+
// WrappersRaw is an auto generated low-level Go binding around an Ethereum contract.
|
134
|
+
type WrappersRaw struct {
|
135
|
+
Contract *Wrappers // Generic contract binding to access the raw methods on
|
136
|
+
}
|
137
|
+
|
138
|
+
// WrappersCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.
|
139
|
+
type WrappersCallerRaw struct {
|
140
|
+
Contract *WrappersCaller // Generic read-only contract binding to access the raw methods on
|
141
|
+
}
|
142
|
+
|
143
|
+
// WrappersTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.
|
144
|
+
type WrappersTransactorRaw struct {
|
145
|
+
Contract *WrappersTransactor // Generic write-only contract binding to access the raw methods on
|
146
|
+
}
|
147
|
+
|
148
|
+
// NewWrappers creates a new instance of Wrappers, bound to a specific deployed contract.
|
149
|
+
func NewWrappers(address common.Address, backend bind.ContractBackend) (*Wrappers, error) {
|
150
|
+
contract, err := bindWrappers(address, backend, backend, backend)
|
151
|
+
if err != nil {
|
152
|
+
return nil, err
|
153
|
+
}
|
154
|
+
return &Wrappers{WrappersCaller: WrappersCaller{contract: contract}, WrappersTransactor: WrappersTransactor{contract: contract}, WrappersFilterer: WrappersFilterer{contract: contract}}, nil
|
155
|
+
}
|
156
|
+
|
157
|
+
// NewWrappersCaller creates a new read-only instance of Wrappers, bound to a specific deployed contract.
|
158
|
+
func NewWrappersCaller(address common.Address, caller bind.ContractCaller) (*WrappersCaller, error) {
|
159
|
+
contract, err := bindWrappers(address, caller, nil, nil)
|
160
|
+
if err != nil {
|
161
|
+
return nil, err
|
162
|
+
}
|
163
|
+
return &WrappersCaller{contract: contract}, nil
|
164
|
+
}
|
165
|
+
|
166
|
+
// NewWrappersTransactor creates a new write-only instance of Wrappers, bound to a specific deployed contract.
|
167
|
+
func NewWrappersTransactor(address common.Address, transactor bind.ContractTransactor) (*WrappersTransactor, error) {
|
168
|
+
contract, err := bindWrappers(address, nil, transactor, nil)
|
169
|
+
if err != nil {
|
170
|
+
return nil, err
|
171
|
+
}
|
172
|
+
return &WrappersTransactor{contract: contract}, nil
|
173
|
+
}
|
174
|
+
|
175
|
+
// NewWrappersFilterer creates a new log filterer instance of Wrappers, bound to a specific deployed contract.
|
176
|
+
func NewWrappersFilterer(address common.Address, filterer bind.ContractFilterer) (*WrappersFilterer, error) {
|
177
|
+
contract, err := bindWrappers(address, nil, nil, filterer)
|
178
|
+
if err != nil {
|
179
|
+
return nil, err
|
180
|
+
}
|
181
|
+
return &WrappersFilterer{contract: contract}, nil
|
182
|
+
}
|
183
|
+
|
184
|
+
// bindWrappers binds a generic wrapper to an already deployed contract.
|
185
|
+
func bindWrappers(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) {
|
186
|
+
parsed, err := WrappersMetaData.GetAbi()
|
187
|
+
if err != nil {
|
188
|
+
return nil, err
|
189
|
+
}
|
190
|
+
return bind.NewBoundContract(address, *parsed, caller, transactor, filterer), nil
|
191
|
+
}
|
192
|
+
|
193
|
+
// Call invokes the (constant) contract method with params as input values and
|
194
|
+
// sets the output to result. The result type might be a single field for simple
|
195
|
+
// returns, a slice of interfaces for anonymous returns and a struct for named
|
196
|
+
// returns.
|
197
|
+
func (_Wrappers *WrappersRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error {
|
198
|
+
return _Wrappers.Contract.WrappersCaller.contract.Call(opts, result, method, params...)
|
199
|
+
}
|
200
|
+
|
201
|
+
// Transfer initiates a plain transaction to move funds to the contract, calling
|
202
|
+
// its default method if one is available.
|
203
|
+
func (_Wrappers *WrappersRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) {
|
204
|
+
return _Wrappers.Contract.WrappersTransactor.contract.Transfer(opts)
|
205
|
+
}
|
206
|
+
|
207
|
+
// Transact invokes the (paid) contract method with params as input values.
|
208
|
+
func (_Wrappers *WrappersRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) {
|
209
|
+
return _Wrappers.Contract.WrappersTransactor.contract.Transact(opts, method, params...)
|
210
|
+
}
|
211
|
+
|
212
|
+
// Call invokes the (constant) contract method with params as input values and
|
213
|
+
// sets the output to result. The result type might be a single field for simple
|
214
|
+
// returns, a slice of interfaces for anonymous returns and a struct for named
|
215
|
+
// returns.
|
216
|
+
func (_Wrappers *WrappersCallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error {
|
217
|
+
return _Wrappers.Contract.contract.Call(opts, result, method, params...)
|
218
|
+
}
|
219
|
+
|
220
|
+
// Transfer initiates a plain transaction to move funds to the contract, calling
|
221
|
+
// its default method if one is available.
|
222
|
+
func (_Wrappers *WrappersTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) {
|
223
|
+
return _Wrappers.Contract.contract.Transfer(opts)
|
224
|
+
}
|
225
|
+
|
226
|
+
// Transact invokes the (paid) contract method with params as input values.
|
227
|
+
func (_Wrappers *WrappersTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) {
|
228
|
+
return _Wrappers.Contract.contract.Transact(opts, method, params...)
|
229
|
+
}
|
230
|
+
|
231
|
+
// UPGRADEINTERFACEVERSION is a free data retrieval call binding the contract method 0xad3cb1cc.
|
232
|
+
//
|
233
|
+
// Solidity: function UPGRADE_INTERFACE_VERSION() view returns(string)
|
234
|
+
func (_Wrappers *WrappersCaller) UPGRADEINTERFACEVERSION(opts *bind.CallOpts) (string, error) {
|
235
|
+
var out []interface{}
|
236
|
+
err := _Wrappers.contract.Call(opts, &out, "UPGRADE_INTERFACE_VERSION")
|
237
|
+
|
238
|
+
if err != nil {
|
239
|
+
return *new(string), err
|
240
|
+
}
|
241
|
+
|
242
|
+
out0 := *abi.ConvertType(out[0], new(string)).(*string)
|
243
|
+
|
244
|
+
return out0, err
|
245
|
+
|
246
|
+
}
|
247
|
+
|
248
|
+
// UPGRADEINTERFACEVERSION is a free data retrieval call binding the contract method 0xad3cb1cc.
|
249
|
+
//
|
250
|
+
// Solidity: function UPGRADE_INTERFACE_VERSION() view returns(string)
|
251
|
+
func (_Wrappers *WrappersSession) UPGRADEINTERFACEVERSION() (string, error) {
|
252
|
+
return _Wrappers.Contract.UPGRADEINTERFACEVERSION(&_Wrappers.CallOpts)
|
253
|
+
}
|
254
|
+
|
255
|
+
// UPGRADEINTERFACEVERSION is a free data retrieval call binding the contract method 0xad3cb1cc.
|
256
|
+
//
|
257
|
+
// Solidity: function UPGRADE_INTERFACE_VERSION() view returns(string)
|
258
|
+
func (_Wrappers *WrappersCallerSession) UPGRADEINTERFACEVERSION() (string, error) {
|
259
|
+
return _Wrappers.Contract.UPGRADEINTERFACEVERSION(&_Wrappers.CallOpts)
|
260
|
+
}
|
261
|
+
|
262
|
+
// Owner is a free data retrieval call binding the contract method 0x8da5cb5b.
|
263
|
+
//
|
264
|
+
// Solidity: function owner() view returns(address)
|
265
|
+
func (_Wrappers *WrappersCaller) Owner(opts *bind.CallOpts) (common.Address, error) {
|
266
|
+
var out []interface{}
|
267
|
+
err := _Wrappers.contract.Call(opts, &out, "owner")
|
268
|
+
|
269
|
+
if err != nil {
|
270
|
+
return *new(common.Address), err
|
271
|
+
}
|
272
|
+
|
273
|
+
out0 := *abi.ConvertType(out[0], new(common.Address)).(*common.Address)
|
274
|
+
|
275
|
+
return out0, err
|
276
|
+
|
277
|
+
}
|
278
|
+
|
279
|
+
// Owner is a free data retrieval call binding the contract method 0x8da5cb5b.
|
280
|
+
//
|
281
|
+
// Solidity: function owner() view returns(address)
|
282
|
+
func (_Wrappers *WrappersSession) Owner() (common.Address, error) {
|
283
|
+
return _Wrappers.Contract.Owner(&_Wrappers.CallOpts)
|
284
|
+
}
|
285
|
+
|
286
|
+
// Owner is a free data retrieval call binding the contract method 0x8da5cb5b.
|
287
|
+
//
|
288
|
+
// Solidity: function owner() view returns(address)
|
289
|
+
func (_Wrappers *WrappersCallerSession) Owner() (common.Address, error) {
|
290
|
+
return _Wrappers.Contract.Owner(&_Wrappers.CallOpts)
|
291
|
+
}
|
292
|
+
|
293
|
+
// ProxiableUUID is a free data retrieval call binding the contract method 0x52d1902d.
|
294
|
+
//
|
295
|
+
// Solidity: function proxiableUUID() view returns(bytes32)
|
296
|
+
func (_Wrappers *WrappersCaller) ProxiableUUID(opts *bind.CallOpts) ([32]byte, error) {
|
297
|
+
var out []interface{}
|
298
|
+
err := _Wrappers.contract.Call(opts, &out, "proxiableUUID")
|
299
|
+
|
300
|
+
if err != nil {
|
301
|
+
return *new([32]byte), err
|
302
|
+
}
|
303
|
+
|
304
|
+
out0 := *abi.ConvertType(out[0], new([32]byte)).(*[32]byte)
|
305
|
+
|
306
|
+
return out0, err
|
307
|
+
|
308
|
+
}
|
309
|
+
|
310
|
+
// ProxiableUUID is a free data retrieval call binding the contract method 0x52d1902d.
|
311
|
+
//
|
312
|
+
// Solidity: function proxiableUUID() view returns(bytes32)
|
313
|
+
func (_Wrappers *WrappersSession) ProxiableUUID() ([32]byte, error) {
|
314
|
+
return _Wrappers.Contract.ProxiableUUID(&_Wrappers.CallOpts)
|
315
|
+
}
|
316
|
+
|
317
|
+
// ProxiableUUID is a free data retrieval call binding the contract method 0x52d1902d.
|
318
|
+
//
|
319
|
+
// Solidity: function proxiableUUID() view returns(bytes32)
|
320
|
+
func (_Wrappers *WrappersCallerSession) ProxiableUUID() ([32]byte, error) {
|
321
|
+
return _Wrappers.Contract.ProxiableUUID(&_Wrappers.CallOpts)
|
322
|
+
}
|
323
|
+
|
324
|
+
// StateDataRootTupleRoots is a free data retrieval call binding the contract method 0x817f985b.
|
325
|
+
//
|
326
|
+
// Solidity: function state_dataRootTupleRoots(uint256 ) view returns(bytes32)
|
327
|
+
func (_Wrappers *WrappersCaller) StateDataRootTupleRoots(opts *bind.CallOpts, arg0 *big.Int) ([32]byte, error) {
|
328
|
+
var out []interface{}
|
329
|
+
err := _Wrappers.contract.Call(opts, &out, "state_dataRootTupleRoots", arg0)
|
330
|
+
|
331
|
+
if err != nil {
|
332
|
+
return *new([32]byte), err
|
333
|
+
}
|
334
|
+
|
335
|
+
out0 := *abi.ConvertType(out[0], new([32]byte)).(*[32]byte)
|
336
|
+
|
337
|
+
return out0, err
|
338
|
+
|
339
|
+
}
|
340
|
+
|
341
|
+
// StateDataRootTupleRoots is a free data retrieval call binding the contract method 0x817f985b.
|
342
|
+
//
|
343
|
+
// Solidity: function state_dataRootTupleRoots(uint256 ) view returns(bytes32)
|
344
|
+
func (_Wrappers *WrappersSession) StateDataRootTupleRoots(arg0 *big.Int) ([32]byte, error) {
|
345
|
+
return _Wrappers.Contract.StateDataRootTupleRoots(&_Wrappers.CallOpts, arg0)
|
346
|
+
}
|
347
|
+
|
348
|
+
// StateDataRootTupleRoots is a free data retrieval call binding the contract method 0x817f985b.
|
349
|
+
//
|
350
|
+
// Solidity: function state_dataRootTupleRoots(uint256 ) view returns(bytes32)
|
351
|
+
func (_Wrappers *WrappersCallerSession) StateDataRootTupleRoots(arg0 *big.Int) ([32]byte, error) {
|
352
|
+
return _Wrappers.Contract.StateDataRootTupleRoots(&_Wrappers.CallOpts, arg0)
|
353
|
+
}
|
354
|
+
|
355
|
+
// StateEventNonce is a free data retrieval call binding the contract method 0xcdade866.
|
356
|
+
//
|
357
|
+
// Solidity: function state_eventNonce() view returns(uint256)
|
358
|
+
func (_Wrappers *WrappersCaller) StateEventNonce(opts *bind.CallOpts) (*big.Int, error) {
|
359
|
+
var out []interface{}
|
360
|
+
err := _Wrappers.contract.Call(opts, &out, "state_eventNonce")
|
361
|
+
|
362
|
+
if err != nil {
|
363
|
+
return *new(*big.Int), err
|
364
|
+
}
|
365
|
+
|
366
|
+
out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int)
|
367
|
+
|
368
|
+
return out0, err
|
369
|
+
|
370
|
+
}
|
371
|
+
|
372
|
+
// StateEventNonce is a free data retrieval call binding the contract method 0xcdade866.
|
373
|
+
//
|
374
|
+
// Solidity: function state_eventNonce() view returns(uint256)
|
375
|
+
func (_Wrappers *WrappersSession) StateEventNonce() (*big.Int, error) {
|
376
|
+
return _Wrappers.Contract.StateEventNonce(&_Wrappers.CallOpts)
|
377
|
+
}
|
378
|
+
|
379
|
+
// StateEventNonce is a free data retrieval call binding the contract method 0xcdade866.
|
380
|
+
//
|
381
|
+
// Solidity: function state_eventNonce() view returns(uint256)
|
382
|
+
func (_Wrappers *WrappersCallerSession) StateEventNonce() (*big.Int, error) {
|
383
|
+
return _Wrappers.Contract.StateEventNonce(&_Wrappers.CallOpts)
|
384
|
+
}
|
385
|
+
|
386
|
+
// StateLastValidatorSetCheckpoint is a free data retrieval call binding the contract method 0x5433218c.
|
387
|
+
//
|
388
|
+
// Solidity: function state_lastValidatorSetCheckpoint() view returns(bytes32)
|
389
|
+
func (_Wrappers *WrappersCaller) StateLastValidatorSetCheckpoint(opts *bind.CallOpts) ([32]byte, error) {
|
390
|
+
var out []interface{}
|
391
|
+
err := _Wrappers.contract.Call(opts, &out, "state_lastValidatorSetCheckpoint")
|
392
|
+
|
393
|
+
if err != nil {
|
394
|
+
return *new([32]byte), err
|
395
|
+
}
|
396
|
+
|
397
|
+
out0 := *abi.ConvertType(out[0], new([32]byte)).(*[32]byte)
|
398
|
+
|
399
|
+
return out0, err
|
400
|
+
|
401
|
+
}
|
402
|
+
|
403
|
+
// StateLastValidatorSetCheckpoint is a free data retrieval call binding the contract method 0x5433218c.
|
404
|
+
//
|
405
|
+
// Solidity: function state_lastValidatorSetCheckpoint() view returns(bytes32)
|
406
|
+
func (_Wrappers *WrappersSession) StateLastValidatorSetCheckpoint() ([32]byte, error) {
|
407
|
+
return _Wrappers.Contract.StateLastValidatorSetCheckpoint(&_Wrappers.CallOpts)
|
408
|
+
}
|
409
|
+
|
410
|
+
// StateLastValidatorSetCheckpoint is a free data retrieval call binding the contract method 0x5433218c.
|
411
|
+
//
|
412
|
+
// Solidity: function state_lastValidatorSetCheckpoint() view returns(bytes32)
|
413
|
+
func (_Wrappers *WrappersCallerSession) StateLastValidatorSetCheckpoint() ([32]byte, error) {
|
414
|
+
return _Wrappers.Contract.StateLastValidatorSetCheckpoint(&_Wrappers.CallOpts)
|
415
|
+
}
|
416
|
+
|
417
|
+
// StatePowerThreshold is a free data retrieval call binding the contract method 0xe5a2b5d2.
|
418
|
+
//
|
419
|
+
// Solidity: function state_powerThreshold() view returns(uint256)
|
420
|
+
func (_Wrappers *WrappersCaller) StatePowerThreshold(opts *bind.CallOpts) (*big.Int, error) {
|
421
|
+
var out []interface{}
|
422
|
+
err := _Wrappers.contract.Call(opts, &out, "state_powerThreshold")
|
423
|
+
|
424
|
+
if err != nil {
|
425
|
+
return *new(*big.Int), err
|
426
|
+
}
|
427
|
+
|
428
|
+
out0 := *abi.ConvertType(out[0], new(*big.Int)).(**big.Int)
|
429
|
+
|
430
|
+
return out0, err
|
431
|
+
|
432
|
+
}
|
433
|
+
|
434
|
+
// StatePowerThreshold is a free data retrieval call binding the contract method 0xe5a2b5d2.
|
435
|
+
//
|
436
|
+
// Solidity: function state_powerThreshold() view returns(uint256)
|
437
|
+
func (_Wrappers *WrappersSession) StatePowerThreshold() (*big.Int, error) {
|
438
|
+
return _Wrappers.Contract.StatePowerThreshold(&_Wrappers.CallOpts)
|
439
|
+
}
|
440
|
+
|
441
|
+
// StatePowerThreshold is a free data retrieval call binding the contract method 0xe5a2b5d2.
|
442
|
+
//
|
443
|
+
// Solidity: function state_powerThreshold() view returns(uint256)
|
444
|
+
func (_Wrappers *WrappersCallerSession) StatePowerThreshold() (*big.Int, error) {
|
445
|
+
return _Wrappers.Contract.StatePowerThreshold(&_Wrappers.CallOpts)
|
446
|
+
}
|
447
|
+
|
448
|
+
// VerifyAttestation is a free data retrieval call binding the contract method 0x1f3302a9.
|
449
|
+
//
|
450
|
+
// Solidity: function verifyAttestation(uint256 _tupleRootNonce, (uint256,bytes32) _tuple, (bytes32[],uint256,uint256) _proof) view returns(bool)
|
451
|
+
func (_Wrappers *WrappersCaller) VerifyAttestation(opts *bind.CallOpts, _tupleRootNonce *big.Int, _tuple DataRootTuple, _proof BinaryMerkleProof) (bool, error) {
|
452
|
+
var out []interface{}
|
453
|
+
err := _Wrappers.contract.Call(opts, &out, "verifyAttestation", _tupleRootNonce, _tuple, _proof)
|
454
|
+
|
455
|
+
if err != nil {
|
456
|
+
return *new(bool), err
|
457
|
+
}
|
458
|
+
|
459
|
+
out0 := *abi.ConvertType(out[0], new(bool)).(*bool)
|
460
|
+
|
461
|
+
return out0, err
|
462
|
+
|
463
|
+
}
|
464
|
+
|
465
|
+
// VerifyAttestation is a free data retrieval call binding the contract method 0x1f3302a9.
|
466
|
+
//
|
467
|
+
// Solidity: function verifyAttestation(uint256 _tupleRootNonce, (uint256,bytes32) _tuple, (bytes32[],uint256,uint256) _proof) view returns(bool)
|
468
|
+
func (_Wrappers *WrappersSession) VerifyAttestation(_tupleRootNonce *big.Int, _tuple DataRootTuple, _proof BinaryMerkleProof) (bool, error) {
|
469
|
+
return _Wrappers.Contract.VerifyAttestation(&_Wrappers.CallOpts, _tupleRootNonce, _tuple, _proof)
|
470
|
+
}
|
471
|
+
|
472
|
+
// VerifyAttestation is a free data retrieval call binding the contract method 0x1f3302a9.
|
473
|
+
//
|
474
|
+
// Solidity: function verifyAttestation(uint256 _tupleRootNonce, (uint256,bytes32) _tuple, (bytes32[],uint256,uint256) _proof) view returns(bool)
|
475
|
+
func (_Wrappers *WrappersCallerSession) VerifyAttestation(_tupleRootNonce *big.Int, _tuple DataRootTuple, _proof BinaryMerkleProof) (bool, error) {
|
476
|
+
return _Wrappers.Contract.VerifyAttestation(&_Wrappers.CallOpts, _tupleRootNonce, _tuple, _proof)
|
477
|
+
}
|
478
|
+
|
479
|
+
// Initialize is a paid mutator transaction binding the contract method 0x226fe7be.
|
480
|
+
//
|
481
|
+
// Solidity: function initialize(uint256 _nonce, uint256 _powerThreshold, bytes32 _validatorSetCheckpoint) returns()
|
482
|
+
func (_Wrappers *WrappersTransactor) Initialize(opts *bind.TransactOpts, _nonce *big.Int, _powerThreshold *big.Int, _validatorSetCheckpoint [32]byte) (*types.Transaction, error) {
|
483
|
+
return _Wrappers.contract.Transact(opts, "initialize", _nonce, _powerThreshold, _validatorSetCheckpoint)
|
484
|
+
}
|
485
|
+
|
486
|
+
// Initialize is a paid mutator transaction binding the contract method 0x226fe7be.
|
487
|
+
//
|
488
|
+
// Solidity: function initialize(uint256 _nonce, uint256 _powerThreshold, bytes32 _validatorSetCheckpoint) returns()
|
489
|
+
func (_Wrappers *WrappersSession) Initialize(_nonce *big.Int, _powerThreshold *big.Int, _validatorSetCheckpoint [32]byte) (*types.Transaction, error) {
|
490
|
+
return _Wrappers.Contract.Initialize(&_Wrappers.TransactOpts, _nonce, _powerThreshold, _validatorSetCheckpoint)
|
491
|
+
}
|
492
|
+
|
493
|
+
// Initialize is a paid mutator transaction binding the contract method 0x226fe7be.
|
494
|
+
//
|
495
|
+
// Solidity: function initialize(uint256 _nonce, uint256 _powerThreshold, bytes32 _validatorSetCheckpoint) returns()
|
496
|
+
func (_Wrappers *WrappersTransactorSession) Initialize(_nonce *big.Int, _powerThreshold *big.Int, _validatorSetCheckpoint [32]byte) (*types.Transaction, error) {
|
497
|
+
return _Wrappers.Contract.Initialize(&_Wrappers.TransactOpts, _nonce, _powerThreshold, _validatorSetCheckpoint)
|
498
|
+
}
|
499
|
+
|
500
|
+
// RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6.
|
501
|
+
//
|
502
|
+
// Solidity: function renounceOwnership() returns()
|
503
|
+
func (_Wrappers *WrappersTransactor) RenounceOwnership(opts *bind.TransactOpts) (*types.Transaction, error) {
|
504
|
+
return _Wrappers.contract.Transact(opts, "renounceOwnership")
|
505
|
+
}
|
506
|
+
|
507
|
+
// RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6.
|
508
|
+
//
|
509
|
+
// Solidity: function renounceOwnership() returns()
|
510
|
+
func (_Wrappers *WrappersSession) RenounceOwnership() (*types.Transaction, error) {
|
511
|
+
return _Wrappers.Contract.RenounceOwnership(&_Wrappers.TransactOpts)
|
512
|
+
}
|
513
|
+
|
514
|
+
// RenounceOwnership is a paid mutator transaction binding the contract method 0x715018a6.
|
515
|
+
//
|
516
|
+
// Solidity: function renounceOwnership() returns()
|
517
|
+
func (_Wrappers *WrappersTransactorSession) RenounceOwnership() (*types.Transaction, error) {
|
518
|
+
return _Wrappers.Contract.RenounceOwnership(&_Wrappers.TransactOpts)
|
519
|
+
}
|
520
|
+
|
521
|
+
// SubmitDataRootTupleRoot is a paid mutator transaction binding the contract method 0xe23eb326.
|
522
|
+
//
|
523
|
+
// Solidity: function submitDataRootTupleRoot(uint256 _newNonce, uint256 _validatorSetNonce, bytes32 _dataRootTupleRoot, (address,uint256)[] _currentValidatorSet, (uint8,bytes32,bytes32)[] _sigs) returns()
|
524
|
+
func (_Wrappers *WrappersTransactor) SubmitDataRootTupleRoot(opts *bind.TransactOpts, _newNonce *big.Int, _validatorSetNonce *big.Int, _dataRootTupleRoot [32]byte, _currentValidatorSet []Validator, _sigs []Signature) (*types.Transaction, error) {
|
525
|
+
return _Wrappers.contract.Transact(opts, "submitDataRootTupleRoot", _newNonce, _validatorSetNonce, _dataRootTupleRoot, _currentValidatorSet, _sigs)
|
526
|
+
}
|
527
|
+
|
528
|
+
// SubmitDataRootTupleRoot is a paid mutator transaction binding the contract method 0xe23eb326.
|
529
|
+
//
|
530
|
+
// Solidity: function submitDataRootTupleRoot(uint256 _newNonce, uint256 _validatorSetNonce, bytes32 _dataRootTupleRoot, (address,uint256)[] _currentValidatorSet, (uint8,bytes32,bytes32)[] _sigs) returns()
|
531
|
+
func (_Wrappers *WrappersSession) SubmitDataRootTupleRoot(_newNonce *big.Int, _validatorSetNonce *big.Int, _dataRootTupleRoot [32]byte, _currentValidatorSet []Validator, _sigs []Signature) (*types.Transaction, error) {
|
532
|
+
return _Wrappers.Contract.SubmitDataRootTupleRoot(&_Wrappers.TransactOpts, _newNonce, _validatorSetNonce, _dataRootTupleRoot, _currentValidatorSet, _sigs)
|
533
|
+
}
|
534
|
+
|
535
|
+
// SubmitDataRootTupleRoot is a paid mutator transaction binding the contract method 0xe23eb326.
|
536
|
+
//
|
537
|
+
// Solidity: function submitDataRootTupleRoot(uint256 _newNonce, uint256 _validatorSetNonce, bytes32 _dataRootTupleRoot, (address,uint256)[] _currentValidatorSet, (uint8,bytes32,bytes32)[] _sigs) returns()
|
538
|
+
func (_Wrappers *WrappersTransactorSession) SubmitDataRootTupleRoot(_newNonce *big.Int, _validatorSetNonce *big.Int, _dataRootTupleRoot [32]byte, _currentValidatorSet []Validator, _sigs []Signature) (*types.Transaction, error) {
|
539
|
+
return _Wrappers.Contract.SubmitDataRootTupleRoot(&_Wrappers.TransactOpts, _newNonce, _validatorSetNonce, _dataRootTupleRoot, _currentValidatorSet, _sigs)
|
540
|
+
}
|
541
|
+
|
542
|
+
// TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b.
|
543
|
+
//
|
544
|
+
// Solidity: function transferOwnership(address newOwner) returns()
|
545
|
+
func (_Wrappers *WrappersTransactor) TransferOwnership(opts *bind.TransactOpts, newOwner common.Address) (*types.Transaction, error) {
|
546
|
+
return _Wrappers.contract.Transact(opts, "transferOwnership", newOwner)
|
547
|
+
}
|
548
|
+
|
549
|
+
// TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b.
|
550
|
+
//
|
551
|
+
// Solidity: function transferOwnership(address newOwner) returns()
|
552
|
+
func (_Wrappers *WrappersSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) {
|
553
|
+
return _Wrappers.Contract.TransferOwnership(&_Wrappers.TransactOpts, newOwner)
|
554
|
+
}
|
555
|
+
|
556
|
+
// TransferOwnership is a paid mutator transaction binding the contract method 0xf2fde38b.
|
557
|
+
//
|
558
|
+
// Solidity: function transferOwnership(address newOwner) returns()
|
559
|
+
func (_Wrappers *WrappersTransactorSession) TransferOwnership(newOwner common.Address) (*types.Transaction, error) {
|
560
|
+
return _Wrappers.Contract.TransferOwnership(&_Wrappers.TransactOpts, newOwner)
|
561
|
+
}
|
562
|
+
|
563
|
+
// UpdateValidatorSet is a paid mutator transaction binding the contract method 0x05d85c13.
|
564
|
+
//
|
565
|
+
// Solidity: function updateValidatorSet(uint256 _newNonce, uint256 _oldNonce, uint256 _newPowerThreshold, bytes32 _newValidatorSetHash, (address,uint256)[] _currentValidatorSet, (uint8,bytes32,bytes32)[] _sigs) returns()
|
566
|
+
func (_Wrappers *WrappersTransactor) UpdateValidatorSet(opts *bind.TransactOpts, _newNonce *big.Int, _oldNonce *big.Int, _newPowerThreshold *big.Int, _newValidatorSetHash [32]byte, _currentValidatorSet []Validator, _sigs []Signature) (*types.Transaction, error) {
|
567
|
+
return _Wrappers.contract.Transact(opts, "updateValidatorSet", _newNonce, _oldNonce, _newPowerThreshold, _newValidatorSetHash, _currentValidatorSet, _sigs)
|
568
|
+
}
|
569
|
+
|
570
|
+
// UpdateValidatorSet is a paid mutator transaction binding the contract method 0x05d85c13.
|
571
|
+
//
|
572
|
+
// Solidity: function updateValidatorSet(uint256 _newNonce, uint256 _oldNonce, uint256 _newPowerThreshold, bytes32 _newValidatorSetHash, (address,uint256)[] _currentValidatorSet, (uint8,bytes32,bytes32)[] _sigs) returns()
|
573
|
+
func (_Wrappers *WrappersSession) UpdateValidatorSet(_newNonce *big.Int, _oldNonce *big.Int, _newPowerThreshold *big.Int, _newValidatorSetHash [32]byte, _currentValidatorSet []Validator, _sigs []Signature) (*types.Transaction, error) {
|
574
|
+
return _Wrappers.Contract.UpdateValidatorSet(&_Wrappers.TransactOpts, _newNonce, _oldNonce, _newPowerThreshold, _newValidatorSetHash, _currentValidatorSet, _sigs)
|
575
|
+
}
|
576
|
+
|
577
|
+
// UpdateValidatorSet is a paid mutator transaction binding the contract method 0x05d85c13.
|
578
|
+
//
|
579
|
+
// Solidity: function updateValidatorSet(uint256 _newNonce, uint256 _oldNonce, uint256 _newPowerThreshold, bytes32 _newValidatorSetHash, (address,uint256)[] _currentValidatorSet, (uint8,bytes32,bytes32)[] _sigs) returns()
|
580
|
+
func (_Wrappers *WrappersTransactorSession) UpdateValidatorSet(_newNonce *big.Int, _oldNonce *big.Int, _newPowerThreshold *big.Int, _newValidatorSetHash [32]byte, _currentValidatorSet []Validator, _sigs []Signature) (*types.Transaction, error) {
|
581
|
+
return _Wrappers.Contract.UpdateValidatorSet(&_Wrappers.TransactOpts, _newNonce, _oldNonce, _newPowerThreshold, _newValidatorSetHash, _currentValidatorSet, _sigs)
|
582
|
+
}
|
583
|
+
|
584
|
+
// UpgradeToAndCall is a paid mutator transaction binding the contract method 0x4f1ef286.
|
585
|
+
//
|
586
|
+
// Solidity: function upgradeToAndCall(address newImplementation, bytes data) payable returns()
|
587
|
+
func (_Wrappers *WrappersTransactor) UpgradeToAndCall(opts *bind.TransactOpts, newImplementation common.Address, data []byte) (*types.Transaction, error) {
|
588
|
+
return _Wrappers.contract.Transact(opts, "upgradeToAndCall", newImplementation, data)
|
589
|
+
}
|
590
|
+
|
591
|
+
// UpgradeToAndCall is a paid mutator transaction binding the contract method 0x4f1ef286.
|
592
|
+
//
|
593
|
+
// Solidity: function upgradeToAndCall(address newImplementation, bytes data) payable returns()
|
594
|
+
func (_Wrappers *WrappersSession) UpgradeToAndCall(newImplementation common.Address, data []byte) (*types.Transaction, error) {
|
595
|
+
return _Wrappers.Contract.UpgradeToAndCall(&_Wrappers.TransactOpts, newImplementation, data)
|
596
|
+
}
|
597
|
+
|
598
|
+
// UpgradeToAndCall is a paid mutator transaction binding the contract method 0x4f1ef286.
|
599
|
+
//
|
600
|
+
// Solidity: function upgradeToAndCall(address newImplementation, bytes data) payable returns()
|
601
|
+
func (_Wrappers *WrappersTransactorSession) UpgradeToAndCall(newImplementation common.Address, data []byte) (*types.Transaction, error) {
|
602
|
+
return _Wrappers.Contract.UpgradeToAndCall(&_Wrappers.TransactOpts, newImplementation, data)
|
603
|
+
}
|
604
|
+
|
605
|
+
// WrappersDataRootTupleRootEventIterator is returned from FilterDataRootTupleRootEvent and is used to iterate over the raw logs and unpacked data for DataRootTupleRootEvent events raised by the Wrappers contract.
|
606
|
+
type WrappersDataRootTupleRootEventIterator struct {
|
607
|
+
Event *WrappersDataRootTupleRootEvent // Event containing the contract specifics and raw log
|
608
|
+
|
609
|
+
contract *bind.BoundContract // Generic contract to use for unpacking event data
|
610
|
+
event string // Event name to use for unpacking event data
|
611
|
+
|
612
|
+
logs chan types.Log // Log channel receiving the found contract events
|
613
|
+
sub ethereum.Subscription // Subscription for errors, completion and termination
|
614
|
+
done bool // Whether the subscription completed delivering logs
|
615
|
+
fail error // Occurred error to stop iteration
|
616
|
+
}
|
617
|
+
|
618
|
+
// Next advances the iterator to the subsequent event, returning whether there
|
619
|
+
// are any more events found. In case of a retrieval or parsing error, false is
|
620
|
+
// returned and Error() can be queried for the exact failure.
|
621
|
+
func (it *WrappersDataRootTupleRootEventIterator) Next() bool {
|
622
|
+
// If the iterator failed, stop iterating
|
623
|
+
if it.fail != nil {
|
624
|
+
return false
|
625
|
+
}
|
626
|
+
// If the iterator completed, deliver directly whatever's available
|
627
|
+
if it.done {
|
628
|
+
select {
|
629
|
+
case log := <-it.logs:
|
630
|
+
it.Event = new(WrappersDataRootTupleRootEvent)
|
631
|
+
if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
|
632
|
+
it.fail = err
|
633
|
+
return false
|
634
|
+
}
|
635
|
+
it.Event.Raw = log
|
636
|
+
return true
|
637
|
+
|
638
|
+
default:
|
639
|
+
return false
|
640
|
+
}
|
641
|
+
}
|
642
|
+
// Iterator still in progress, wait for either a data or an error event
|
643
|
+
select {
|
644
|
+
case log := <-it.logs:
|
645
|
+
it.Event = new(WrappersDataRootTupleRootEvent)
|
646
|
+
if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
|
647
|
+
it.fail = err
|
648
|
+
return false
|
649
|
+
}
|
650
|
+
it.Event.Raw = log
|
651
|
+
return true
|
652
|
+
|
653
|
+
case err := <-it.sub.Err():
|
654
|
+
it.done = true
|
655
|
+
it.fail = err
|
656
|
+
return it.Next()
|
657
|
+
}
|
658
|
+
}
|
659
|
+
|
660
|
+
// Error returns any retrieval or parsing error occurred during filtering.
|
661
|
+
func (it *WrappersDataRootTupleRootEventIterator) Error() error {
|
662
|
+
return it.fail
|
663
|
+
}
|
664
|
+
|
665
|
+
// Close terminates the iteration process, releasing any pending underlying
|
666
|
+
// resources.
|
667
|
+
func (it *WrappersDataRootTupleRootEventIterator) Close() error {
|
668
|
+
it.sub.Unsubscribe()
|
669
|
+
return nil
|
670
|
+
}
|
671
|
+
|
672
|
+
// WrappersDataRootTupleRootEvent represents a DataRootTupleRootEvent event raised by the Wrappers contract.
|
673
|
+
type WrappersDataRootTupleRootEvent struct {
|
674
|
+
Nonce *big.Int
|
675
|
+
DataRootTupleRoot [32]byte
|
676
|
+
Raw types.Log // Blockchain specific contextual infos
|
677
|
+
}
|
678
|
+
|
679
|
+
// FilterDataRootTupleRootEvent is a free log retrieval operation binding the contract event 0x6614d037bde4905e31ca5ff05de61964c267f28b0320ed49e59f7d99752e1c4f.
|
680
|
+
//
|
681
|
+
// Solidity: event DataRootTupleRootEvent(uint256 indexed nonce, bytes32 dataRootTupleRoot)
|
682
|
+
func (_Wrappers *WrappersFilterer) FilterDataRootTupleRootEvent(opts *bind.FilterOpts, nonce []*big.Int) (*WrappersDataRootTupleRootEventIterator, error) {
|
683
|
+
|
684
|
+
var nonceRule []interface{}
|
685
|
+
for _, nonceItem := range nonce {
|
686
|
+
nonceRule = append(nonceRule, nonceItem)
|
687
|
+
}
|
688
|
+
|
689
|
+
logs, sub, err := _Wrappers.contract.FilterLogs(opts, "DataRootTupleRootEvent", nonceRule)
|
690
|
+
if err != nil {
|
691
|
+
return nil, err
|
692
|
+
}
|
693
|
+
return &WrappersDataRootTupleRootEventIterator{contract: _Wrappers.contract, event: "DataRootTupleRootEvent", logs: logs, sub: sub}, nil
|
694
|
+
}
|
695
|
+
|
696
|
+
// WatchDataRootTupleRootEvent is a free log subscription operation binding the contract event 0x6614d037bde4905e31ca5ff05de61964c267f28b0320ed49e59f7d99752e1c4f.
|
697
|
+
//
|
698
|
+
// Solidity: event DataRootTupleRootEvent(uint256 indexed nonce, bytes32 dataRootTupleRoot)
|
699
|
+
func (_Wrappers *WrappersFilterer) WatchDataRootTupleRootEvent(opts *bind.WatchOpts, sink chan<- *WrappersDataRootTupleRootEvent, nonce []*big.Int) (event.Subscription, error) {
|
700
|
+
|
701
|
+
var nonceRule []interface{}
|
702
|
+
for _, nonceItem := range nonce {
|
703
|
+
nonceRule = append(nonceRule, nonceItem)
|
704
|
+
}
|
705
|
+
|
706
|
+
logs, sub, err := _Wrappers.contract.WatchLogs(opts, "DataRootTupleRootEvent", nonceRule)
|
707
|
+
if err != nil {
|
708
|
+
return nil, err
|
709
|
+
}
|
710
|
+
return event.NewSubscription(func(quit <-chan struct{}) error {
|
711
|
+
defer sub.Unsubscribe()
|
712
|
+
for {
|
713
|
+
select {
|
714
|
+
case log := <-logs:
|
715
|
+
// New log arrived, parse the event and forward to the user
|
716
|
+
event := new(WrappersDataRootTupleRootEvent)
|
717
|
+
if err := _Wrappers.contract.UnpackLog(event, "DataRootTupleRootEvent", log); err != nil {
|
718
|
+
return err
|
719
|
+
}
|
720
|
+
event.Raw = log
|
721
|
+
|
722
|
+
select {
|
723
|
+
case sink <- event:
|
724
|
+
case err := <-sub.Err():
|
725
|
+
return err
|
726
|
+
case <-quit:
|
727
|
+
return nil
|
728
|
+
}
|
729
|
+
case err := <-sub.Err():
|
730
|
+
return err
|
731
|
+
case <-quit:
|
732
|
+
return nil
|
733
|
+
}
|
734
|
+
}
|
735
|
+
}), nil
|
736
|
+
}
|
737
|
+
|
738
|
+
// ParseDataRootTupleRootEvent is a log parse operation binding the contract event 0x6614d037bde4905e31ca5ff05de61964c267f28b0320ed49e59f7d99752e1c4f.
|
739
|
+
//
|
740
|
+
// Solidity: event DataRootTupleRootEvent(uint256 indexed nonce, bytes32 dataRootTupleRoot)
|
741
|
+
func (_Wrappers *WrappersFilterer) ParseDataRootTupleRootEvent(log types.Log) (*WrappersDataRootTupleRootEvent, error) {
|
742
|
+
event := new(WrappersDataRootTupleRootEvent)
|
743
|
+
if err := _Wrappers.contract.UnpackLog(event, "DataRootTupleRootEvent", log); err != nil {
|
744
|
+
return nil, err
|
745
|
+
}
|
746
|
+
event.Raw = log
|
747
|
+
return event, nil
|
748
|
+
}
|
749
|
+
|
750
|
+
// WrappersInitializedIterator is returned from FilterInitialized and is used to iterate over the raw logs and unpacked data for Initialized events raised by the Wrappers contract.
|
751
|
+
type WrappersInitializedIterator struct {
|
752
|
+
Event *WrappersInitialized // Event containing the contract specifics and raw log
|
753
|
+
|
754
|
+
contract *bind.BoundContract // Generic contract to use for unpacking event data
|
755
|
+
event string // Event name to use for unpacking event data
|
756
|
+
|
757
|
+
logs chan types.Log // Log channel receiving the found contract events
|
758
|
+
sub ethereum.Subscription // Subscription for errors, completion and termination
|
759
|
+
done bool // Whether the subscription completed delivering logs
|
760
|
+
fail error // Occurred error to stop iteration
|
761
|
+
}
|
762
|
+
|
763
|
+
// Next advances the iterator to the subsequent event, returning whether there
|
764
|
+
// are any more events found. In case of a retrieval or parsing error, false is
|
765
|
+
// returned and Error() can be queried for the exact failure.
|
766
|
+
func (it *WrappersInitializedIterator) Next() bool {
|
767
|
+
// If the iterator failed, stop iterating
|
768
|
+
if it.fail != nil {
|
769
|
+
return false
|
770
|
+
}
|
771
|
+
// If the iterator completed, deliver directly whatever's available
|
772
|
+
if it.done {
|
773
|
+
select {
|
774
|
+
case log := <-it.logs:
|
775
|
+
it.Event = new(WrappersInitialized)
|
776
|
+
if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
|
777
|
+
it.fail = err
|
778
|
+
return false
|
779
|
+
}
|
780
|
+
it.Event.Raw = log
|
781
|
+
return true
|
782
|
+
|
783
|
+
default:
|
784
|
+
return false
|
785
|
+
}
|
786
|
+
}
|
787
|
+
// Iterator still in progress, wait for either a data or an error event
|
788
|
+
select {
|
789
|
+
case log := <-it.logs:
|
790
|
+
it.Event = new(WrappersInitialized)
|
791
|
+
if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
|
792
|
+
it.fail = err
|
793
|
+
return false
|
794
|
+
}
|
795
|
+
it.Event.Raw = log
|
796
|
+
return true
|
797
|
+
|
798
|
+
case err := <-it.sub.Err():
|
799
|
+
it.done = true
|
800
|
+
it.fail = err
|
801
|
+
return it.Next()
|
802
|
+
}
|
803
|
+
}
|
804
|
+
|
805
|
+
// Error returns any retrieval or parsing error occurred during filtering.
|
806
|
+
func (it *WrappersInitializedIterator) Error() error {
|
807
|
+
return it.fail
|
808
|
+
}
|
809
|
+
|
810
|
+
// Close terminates the iteration process, releasing any pending underlying
|
811
|
+
// resources.
|
812
|
+
func (it *WrappersInitializedIterator) Close() error {
|
813
|
+
it.sub.Unsubscribe()
|
814
|
+
return nil
|
815
|
+
}
|
816
|
+
|
817
|
+
// WrappersInitialized represents a Initialized event raised by the Wrappers contract.
|
818
|
+
type WrappersInitialized struct {
|
819
|
+
Version uint64
|
820
|
+
Raw types.Log // Blockchain specific contextual infos
|
821
|
+
}
|
822
|
+
|
823
|
+
// FilterInitialized is a free log retrieval operation binding the contract event 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2.
|
824
|
+
//
|
825
|
+
// Solidity: event Initialized(uint64 version)
|
826
|
+
func (_Wrappers *WrappersFilterer) FilterInitialized(opts *bind.FilterOpts) (*WrappersInitializedIterator, error) {
|
827
|
+
|
828
|
+
logs, sub, err := _Wrappers.contract.FilterLogs(opts, "Initialized")
|
829
|
+
if err != nil {
|
830
|
+
return nil, err
|
831
|
+
}
|
832
|
+
return &WrappersInitializedIterator{contract: _Wrappers.contract, event: "Initialized", logs: logs, sub: sub}, nil
|
833
|
+
}
|
834
|
+
|
835
|
+
// WatchInitialized is a free log subscription operation binding the contract event 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2.
|
836
|
+
//
|
837
|
+
// Solidity: event Initialized(uint64 version)
|
838
|
+
func (_Wrappers *WrappersFilterer) WatchInitialized(opts *bind.WatchOpts, sink chan<- *WrappersInitialized) (event.Subscription, error) {
|
839
|
+
|
840
|
+
logs, sub, err := _Wrappers.contract.WatchLogs(opts, "Initialized")
|
841
|
+
if err != nil {
|
842
|
+
return nil, err
|
843
|
+
}
|
844
|
+
return event.NewSubscription(func(quit <-chan struct{}) error {
|
845
|
+
defer sub.Unsubscribe()
|
846
|
+
for {
|
847
|
+
select {
|
848
|
+
case log := <-logs:
|
849
|
+
// New log arrived, parse the event and forward to the user
|
850
|
+
event := new(WrappersInitialized)
|
851
|
+
if err := _Wrappers.contract.UnpackLog(event, "Initialized", log); err != nil {
|
852
|
+
return err
|
853
|
+
}
|
854
|
+
event.Raw = log
|
855
|
+
|
856
|
+
select {
|
857
|
+
case sink <- event:
|
858
|
+
case err := <-sub.Err():
|
859
|
+
return err
|
860
|
+
case <-quit:
|
861
|
+
return nil
|
862
|
+
}
|
863
|
+
case err := <-sub.Err():
|
864
|
+
return err
|
865
|
+
case <-quit:
|
866
|
+
return nil
|
867
|
+
}
|
868
|
+
}
|
869
|
+
}), nil
|
870
|
+
}
|
871
|
+
|
872
|
+
// ParseInitialized is a log parse operation binding the contract event 0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2.
|
873
|
+
//
|
874
|
+
// Solidity: event Initialized(uint64 version)
|
875
|
+
func (_Wrappers *WrappersFilterer) ParseInitialized(log types.Log) (*WrappersInitialized, error) {
|
876
|
+
event := new(WrappersInitialized)
|
877
|
+
if err := _Wrappers.contract.UnpackLog(event, "Initialized", log); err != nil {
|
878
|
+
return nil, err
|
879
|
+
}
|
880
|
+
event.Raw = log
|
881
|
+
return event, nil
|
882
|
+
}
|
883
|
+
|
884
|
+
// WrappersOwnershipTransferredIterator is returned from FilterOwnershipTransferred and is used to iterate over the raw logs and unpacked data for OwnershipTransferred events raised by the Wrappers contract.
|
885
|
+
type WrappersOwnershipTransferredIterator struct {
|
886
|
+
Event *WrappersOwnershipTransferred // Event containing the contract specifics and raw log
|
887
|
+
|
888
|
+
contract *bind.BoundContract // Generic contract to use for unpacking event data
|
889
|
+
event string // Event name to use for unpacking event data
|
890
|
+
|
891
|
+
logs chan types.Log // Log channel receiving the found contract events
|
892
|
+
sub ethereum.Subscription // Subscription for errors, completion and termination
|
893
|
+
done bool // Whether the subscription completed delivering logs
|
894
|
+
fail error // Occurred error to stop iteration
|
895
|
+
}
|
896
|
+
|
897
|
+
// Next advances the iterator to the subsequent event, returning whether there
|
898
|
+
// are any more events found. In case of a retrieval or parsing error, false is
|
899
|
+
// returned and Error() can be queried for the exact failure.
|
900
|
+
func (it *WrappersOwnershipTransferredIterator) Next() bool {
|
901
|
+
// If the iterator failed, stop iterating
|
902
|
+
if it.fail != nil {
|
903
|
+
return false
|
904
|
+
}
|
905
|
+
// If the iterator completed, deliver directly whatever's available
|
906
|
+
if it.done {
|
907
|
+
select {
|
908
|
+
case log := <-it.logs:
|
909
|
+
it.Event = new(WrappersOwnershipTransferred)
|
910
|
+
if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
|
911
|
+
it.fail = err
|
912
|
+
return false
|
913
|
+
}
|
914
|
+
it.Event.Raw = log
|
915
|
+
return true
|
916
|
+
|
917
|
+
default:
|
918
|
+
return false
|
919
|
+
}
|
920
|
+
}
|
921
|
+
// Iterator still in progress, wait for either a data or an error event
|
922
|
+
select {
|
923
|
+
case log := <-it.logs:
|
924
|
+
it.Event = new(WrappersOwnershipTransferred)
|
925
|
+
if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
|
926
|
+
it.fail = err
|
927
|
+
return false
|
928
|
+
}
|
929
|
+
it.Event.Raw = log
|
930
|
+
return true
|
931
|
+
|
932
|
+
case err := <-it.sub.Err():
|
933
|
+
it.done = true
|
934
|
+
it.fail = err
|
935
|
+
return it.Next()
|
936
|
+
}
|
937
|
+
}
|
938
|
+
|
939
|
+
// Error returns any retrieval or parsing error occurred during filtering.
|
940
|
+
func (it *WrappersOwnershipTransferredIterator) Error() error {
|
941
|
+
return it.fail
|
942
|
+
}
|
943
|
+
|
944
|
+
// Close terminates the iteration process, releasing any pending underlying
|
945
|
+
// resources.
|
946
|
+
func (it *WrappersOwnershipTransferredIterator) Close() error {
|
947
|
+
it.sub.Unsubscribe()
|
948
|
+
return nil
|
949
|
+
}
|
950
|
+
|
951
|
+
// WrappersOwnershipTransferred represents a OwnershipTransferred event raised by the Wrappers contract.
|
952
|
+
type WrappersOwnershipTransferred struct {
|
953
|
+
PreviousOwner common.Address
|
954
|
+
NewOwner common.Address
|
955
|
+
Raw types.Log // Blockchain specific contextual infos
|
956
|
+
}
|
957
|
+
|
958
|
+
// FilterOwnershipTransferred is a free log retrieval operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0.
|
959
|
+
//
|
960
|
+
// Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
|
961
|
+
func (_Wrappers *WrappersFilterer) FilterOwnershipTransferred(opts *bind.FilterOpts, previousOwner []common.Address, newOwner []common.Address) (*WrappersOwnershipTransferredIterator, error) {
|
962
|
+
|
963
|
+
var previousOwnerRule []interface{}
|
964
|
+
for _, previousOwnerItem := range previousOwner {
|
965
|
+
previousOwnerRule = append(previousOwnerRule, previousOwnerItem)
|
966
|
+
}
|
967
|
+
var newOwnerRule []interface{}
|
968
|
+
for _, newOwnerItem := range newOwner {
|
969
|
+
newOwnerRule = append(newOwnerRule, newOwnerItem)
|
970
|
+
}
|
971
|
+
|
972
|
+
logs, sub, err := _Wrappers.contract.FilterLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule)
|
973
|
+
if err != nil {
|
974
|
+
return nil, err
|
975
|
+
}
|
976
|
+
return &WrappersOwnershipTransferredIterator{contract: _Wrappers.contract, event: "OwnershipTransferred", logs: logs, sub: sub}, nil
|
977
|
+
}
|
978
|
+
|
979
|
+
// WatchOwnershipTransferred is a free log subscription operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0.
|
980
|
+
//
|
981
|
+
// Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
|
982
|
+
func (_Wrappers *WrappersFilterer) WatchOwnershipTransferred(opts *bind.WatchOpts, sink chan<- *WrappersOwnershipTransferred, previousOwner []common.Address, newOwner []common.Address) (event.Subscription, error) {
|
983
|
+
|
984
|
+
var previousOwnerRule []interface{}
|
985
|
+
for _, previousOwnerItem := range previousOwner {
|
986
|
+
previousOwnerRule = append(previousOwnerRule, previousOwnerItem)
|
987
|
+
}
|
988
|
+
var newOwnerRule []interface{}
|
989
|
+
for _, newOwnerItem := range newOwner {
|
990
|
+
newOwnerRule = append(newOwnerRule, newOwnerItem)
|
991
|
+
}
|
992
|
+
|
993
|
+
logs, sub, err := _Wrappers.contract.WatchLogs(opts, "OwnershipTransferred", previousOwnerRule, newOwnerRule)
|
994
|
+
if err != nil {
|
995
|
+
return nil, err
|
996
|
+
}
|
997
|
+
return event.NewSubscription(func(quit <-chan struct{}) error {
|
998
|
+
defer sub.Unsubscribe()
|
999
|
+
for {
|
1000
|
+
select {
|
1001
|
+
case log := <-logs:
|
1002
|
+
// New log arrived, parse the event and forward to the user
|
1003
|
+
event := new(WrappersOwnershipTransferred)
|
1004
|
+
if err := _Wrappers.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil {
|
1005
|
+
return err
|
1006
|
+
}
|
1007
|
+
event.Raw = log
|
1008
|
+
|
1009
|
+
select {
|
1010
|
+
case sink <- event:
|
1011
|
+
case err := <-sub.Err():
|
1012
|
+
return err
|
1013
|
+
case <-quit:
|
1014
|
+
return nil
|
1015
|
+
}
|
1016
|
+
case err := <-sub.Err():
|
1017
|
+
return err
|
1018
|
+
case <-quit:
|
1019
|
+
return nil
|
1020
|
+
}
|
1021
|
+
}
|
1022
|
+
}), nil
|
1023
|
+
}
|
1024
|
+
|
1025
|
+
// ParseOwnershipTransferred is a log parse operation binding the contract event 0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0.
|
1026
|
+
//
|
1027
|
+
// Solidity: event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
|
1028
|
+
func (_Wrappers *WrappersFilterer) ParseOwnershipTransferred(log types.Log) (*WrappersOwnershipTransferred, error) {
|
1029
|
+
event := new(WrappersOwnershipTransferred)
|
1030
|
+
if err := _Wrappers.contract.UnpackLog(event, "OwnershipTransferred", log); err != nil {
|
1031
|
+
return nil, err
|
1032
|
+
}
|
1033
|
+
event.Raw = log
|
1034
|
+
return event, nil
|
1035
|
+
}
|
1036
|
+
|
1037
|
+
// WrappersUpgradedIterator is returned from FilterUpgraded and is used to iterate over the raw logs and unpacked data for Upgraded events raised by the Wrappers contract.
|
1038
|
+
type WrappersUpgradedIterator struct {
|
1039
|
+
Event *WrappersUpgraded // Event containing the contract specifics and raw log
|
1040
|
+
|
1041
|
+
contract *bind.BoundContract // Generic contract to use for unpacking event data
|
1042
|
+
event string // Event name to use for unpacking event data
|
1043
|
+
|
1044
|
+
logs chan types.Log // Log channel receiving the found contract events
|
1045
|
+
sub ethereum.Subscription // Subscription for errors, completion and termination
|
1046
|
+
done bool // Whether the subscription completed delivering logs
|
1047
|
+
fail error // Occurred error to stop iteration
|
1048
|
+
}
|
1049
|
+
|
1050
|
+
// Next advances the iterator to the subsequent event, returning whether there
|
1051
|
+
// are any more events found. In case of a retrieval or parsing error, false is
|
1052
|
+
// returned and Error() can be queried for the exact failure.
|
1053
|
+
func (it *WrappersUpgradedIterator) Next() bool {
|
1054
|
+
// If the iterator failed, stop iterating
|
1055
|
+
if it.fail != nil {
|
1056
|
+
return false
|
1057
|
+
}
|
1058
|
+
// If the iterator completed, deliver directly whatever's available
|
1059
|
+
if it.done {
|
1060
|
+
select {
|
1061
|
+
case log := <-it.logs:
|
1062
|
+
it.Event = new(WrappersUpgraded)
|
1063
|
+
if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
|
1064
|
+
it.fail = err
|
1065
|
+
return false
|
1066
|
+
}
|
1067
|
+
it.Event.Raw = log
|
1068
|
+
return true
|
1069
|
+
|
1070
|
+
default:
|
1071
|
+
return false
|
1072
|
+
}
|
1073
|
+
}
|
1074
|
+
// Iterator still in progress, wait for either a data or an error event
|
1075
|
+
select {
|
1076
|
+
case log := <-it.logs:
|
1077
|
+
it.Event = new(WrappersUpgraded)
|
1078
|
+
if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
|
1079
|
+
it.fail = err
|
1080
|
+
return false
|
1081
|
+
}
|
1082
|
+
it.Event.Raw = log
|
1083
|
+
return true
|
1084
|
+
|
1085
|
+
case err := <-it.sub.Err():
|
1086
|
+
it.done = true
|
1087
|
+
it.fail = err
|
1088
|
+
return it.Next()
|
1089
|
+
}
|
1090
|
+
}
|
1091
|
+
|
1092
|
+
// Error returns any retrieval or parsing error occurred during filtering.
|
1093
|
+
func (it *WrappersUpgradedIterator) Error() error {
|
1094
|
+
return it.fail
|
1095
|
+
}
|
1096
|
+
|
1097
|
+
// Close terminates the iteration process, releasing any pending underlying
|
1098
|
+
// resources.
|
1099
|
+
func (it *WrappersUpgradedIterator) Close() error {
|
1100
|
+
it.sub.Unsubscribe()
|
1101
|
+
return nil
|
1102
|
+
}
|
1103
|
+
|
1104
|
+
// WrappersUpgraded represents a Upgraded event raised by the Wrappers contract.
|
1105
|
+
type WrappersUpgraded struct {
|
1106
|
+
Implementation common.Address
|
1107
|
+
Raw types.Log // Blockchain specific contextual infos
|
1108
|
+
}
|
1109
|
+
|
1110
|
+
// FilterUpgraded is a free log retrieval operation binding the contract event 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b.
|
1111
|
+
//
|
1112
|
+
// Solidity: event Upgraded(address indexed implementation)
|
1113
|
+
func (_Wrappers *WrappersFilterer) FilterUpgraded(opts *bind.FilterOpts, implementation []common.Address) (*WrappersUpgradedIterator, error) {
|
1114
|
+
|
1115
|
+
var implementationRule []interface{}
|
1116
|
+
for _, implementationItem := range implementation {
|
1117
|
+
implementationRule = append(implementationRule, implementationItem)
|
1118
|
+
}
|
1119
|
+
|
1120
|
+
logs, sub, err := _Wrappers.contract.FilterLogs(opts, "Upgraded", implementationRule)
|
1121
|
+
if err != nil {
|
1122
|
+
return nil, err
|
1123
|
+
}
|
1124
|
+
return &WrappersUpgradedIterator{contract: _Wrappers.contract, event: "Upgraded", logs: logs, sub: sub}, nil
|
1125
|
+
}
|
1126
|
+
|
1127
|
+
// WatchUpgraded is a free log subscription operation binding the contract event 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b.
|
1128
|
+
//
|
1129
|
+
// Solidity: event Upgraded(address indexed implementation)
|
1130
|
+
func (_Wrappers *WrappersFilterer) WatchUpgraded(opts *bind.WatchOpts, sink chan<- *WrappersUpgraded, implementation []common.Address) (event.Subscription, error) {
|
1131
|
+
|
1132
|
+
var implementationRule []interface{}
|
1133
|
+
for _, implementationItem := range implementation {
|
1134
|
+
implementationRule = append(implementationRule, implementationItem)
|
1135
|
+
}
|
1136
|
+
|
1137
|
+
logs, sub, err := _Wrappers.contract.WatchLogs(opts, "Upgraded", implementationRule)
|
1138
|
+
if err != nil {
|
1139
|
+
return nil, err
|
1140
|
+
}
|
1141
|
+
return event.NewSubscription(func(quit <-chan struct{}) error {
|
1142
|
+
defer sub.Unsubscribe()
|
1143
|
+
for {
|
1144
|
+
select {
|
1145
|
+
case log := <-logs:
|
1146
|
+
// New log arrived, parse the event and forward to the user
|
1147
|
+
event := new(WrappersUpgraded)
|
1148
|
+
if err := _Wrappers.contract.UnpackLog(event, "Upgraded", log); err != nil {
|
1149
|
+
return err
|
1150
|
+
}
|
1151
|
+
event.Raw = log
|
1152
|
+
|
1153
|
+
select {
|
1154
|
+
case sink <- event:
|
1155
|
+
case err := <-sub.Err():
|
1156
|
+
return err
|
1157
|
+
case <-quit:
|
1158
|
+
return nil
|
1159
|
+
}
|
1160
|
+
case err := <-sub.Err():
|
1161
|
+
return err
|
1162
|
+
case <-quit:
|
1163
|
+
return nil
|
1164
|
+
}
|
1165
|
+
}
|
1166
|
+
}), nil
|
1167
|
+
}
|
1168
|
+
|
1169
|
+
// ParseUpgraded is a log parse operation binding the contract event 0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b.
|
1170
|
+
//
|
1171
|
+
// Solidity: event Upgraded(address indexed implementation)
|
1172
|
+
func (_Wrappers *WrappersFilterer) ParseUpgraded(log types.Log) (*WrappersUpgraded, error) {
|
1173
|
+
event := new(WrappersUpgraded)
|
1174
|
+
if err := _Wrappers.contract.UnpackLog(event, "Upgraded", log); err != nil {
|
1175
|
+
return nil, err
|
1176
|
+
}
|
1177
|
+
event.Raw = log
|
1178
|
+
return event, nil
|
1179
|
+
}
|
1180
|
+
|
1181
|
+
// WrappersValidatorSetUpdatedEventIterator is returned from FilterValidatorSetUpdatedEvent and is used to iterate over the raw logs and unpacked data for ValidatorSetUpdatedEvent events raised by the Wrappers contract.
|
1182
|
+
type WrappersValidatorSetUpdatedEventIterator struct {
|
1183
|
+
Event *WrappersValidatorSetUpdatedEvent // Event containing the contract specifics and raw log
|
1184
|
+
|
1185
|
+
contract *bind.BoundContract // Generic contract to use for unpacking event data
|
1186
|
+
event string // Event name to use for unpacking event data
|
1187
|
+
|
1188
|
+
logs chan types.Log // Log channel receiving the found contract events
|
1189
|
+
sub ethereum.Subscription // Subscription for errors, completion and termination
|
1190
|
+
done bool // Whether the subscription completed delivering logs
|
1191
|
+
fail error // Occurred error to stop iteration
|
1192
|
+
}
|
1193
|
+
|
1194
|
+
// Next advances the iterator to the subsequent event, returning whether there
|
1195
|
+
// are any more events found. In case of a retrieval or parsing error, false is
|
1196
|
+
// returned and Error() can be queried for the exact failure.
|
1197
|
+
func (it *WrappersValidatorSetUpdatedEventIterator) Next() bool {
|
1198
|
+
// If the iterator failed, stop iterating
|
1199
|
+
if it.fail != nil {
|
1200
|
+
return false
|
1201
|
+
}
|
1202
|
+
// If the iterator completed, deliver directly whatever's available
|
1203
|
+
if it.done {
|
1204
|
+
select {
|
1205
|
+
case log := <-it.logs:
|
1206
|
+
it.Event = new(WrappersValidatorSetUpdatedEvent)
|
1207
|
+
if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
|
1208
|
+
it.fail = err
|
1209
|
+
return false
|
1210
|
+
}
|
1211
|
+
it.Event.Raw = log
|
1212
|
+
return true
|
1213
|
+
|
1214
|
+
default:
|
1215
|
+
return false
|
1216
|
+
}
|
1217
|
+
}
|
1218
|
+
// Iterator still in progress, wait for either a data or an error event
|
1219
|
+
select {
|
1220
|
+
case log := <-it.logs:
|
1221
|
+
it.Event = new(WrappersValidatorSetUpdatedEvent)
|
1222
|
+
if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
|
1223
|
+
it.fail = err
|
1224
|
+
return false
|
1225
|
+
}
|
1226
|
+
it.Event.Raw = log
|
1227
|
+
return true
|
1228
|
+
|
1229
|
+
case err := <-it.sub.Err():
|
1230
|
+
it.done = true
|
1231
|
+
it.fail = err
|
1232
|
+
return it.Next()
|
1233
|
+
}
|
1234
|
+
}
|
1235
|
+
|
1236
|
+
// Error returns any retrieval or parsing error occurred during filtering.
|
1237
|
+
func (it *WrappersValidatorSetUpdatedEventIterator) Error() error {
|
1238
|
+
return it.fail
|
1239
|
+
}
|
1240
|
+
|
1241
|
+
// Close terminates the iteration process, releasing any pending underlying
|
1242
|
+
// resources.
|
1243
|
+
func (it *WrappersValidatorSetUpdatedEventIterator) Close() error {
|
1244
|
+
it.sub.Unsubscribe()
|
1245
|
+
return nil
|
1246
|
+
}
|
1247
|
+
|
1248
|
+
// WrappersValidatorSetUpdatedEvent represents a ValidatorSetUpdatedEvent event raised by the Wrappers contract.
|
1249
|
+
type WrappersValidatorSetUpdatedEvent struct {
|
1250
|
+
Nonce *big.Int
|
1251
|
+
PowerThreshold *big.Int
|
1252
|
+
ValidatorSetHash [32]byte
|
1253
|
+
Raw types.Log // Blockchain specific contextual infos
|
1254
|
+
}
|
1255
|
+
|
1256
|
+
// FilterValidatorSetUpdatedEvent is a free log retrieval operation binding the contract event 0xe55fb3cbbfe29b13c7f8a35ef23127e7df9ab88df16bac166ad254a20f02414c.
|
1257
|
+
//
|
1258
|
+
// Solidity: event ValidatorSetUpdatedEvent(uint256 indexed nonce, uint256 powerThreshold, bytes32 validatorSetHash)
|
1259
|
+
func (_Wrappers *WrappersFilterer) FilterValidatorSetUpdatedEvent(opts *bind.FilterOpts, nonce []*big.Int) (*WrappersValidatorSetUpdatedEventIterator, error) {
|
1260
|
+
|
1261
|
+
var nonceRule []interface{}
|
1262
|
+
for _, nonceItem := range nonce {
|
1263
|
+
nonceRule = append(nonceRule, nonceItem)
|
1264
|
+
}
|
1265
|
+
|
1266
|
+
logs, sub, err := _Wrappers.contract.FilterLogs(opts, "ValidatorSetUpdatedEvent", nonceRule)
|
1267
|
+
if err != nil {
|
1268
|
+
return nil, err
|
1269
|
+
}
|
1270
|
+
return &WrappersValidatorSetUpdatedEventIterator{contract: _Wrappers.contract, event: "ValidatorSetUpdatedEvent", logs: logs, sub: sub}, nil
|
1271
|
+
}
|
1272
|
+
|
1273
|
+
// WatchValidatorSetUpdatedEvent is a free log subscription operation binding the contract event 0xe55fb3cbbfe29b13c7f8a35ef23127e7df9ab88df16bac166ad254a20f02414c.
|
1274
|
+
//
|
1275
|
+
// Solidity: event ValidatorSetUpdatedEvent(uint256 indexed nonce, uint256 powerThreshold, bytes32 validatorSetHash)
|
1276
|
+
func (_Wrappers *WrappersFilterer) WatchValidatorSetUpdatedEvent(opts *bind.WatchOpts, sink chan<- *WrappersValidatorSetUpdatedEvent, nonce []*big.Int) (event.Subscription, error) {
|
1277
|
+
|
1278
|
+
var nonceRule []interface{}
|
1279
|
+
for _, nonceItem := range nonce {
|
1280
|
+
nonceRule = append(nonceRule, nonceItem)
|
1281
|
+
}
|
1282
|
+
|
1283
|
+
logs, sub, err := _Wrappers.contract.WatchLogs(opts, "ValidatorSetUpdatedEvent", nonceRule)
|
1284
|
+
if err != nil {
|
1285
|
+
return nil, err
|
1286
|
+
}
|
1287
|
+
return event.NewSubscription(func(quit <-chan struct{}) error {
|
1288
|
+
defer sub.Unsubscribe()
|
1289
|
+
for {
|
1290
|
+
select {
|
1291
|
+
case log := <-logs:
|
1292
|
+
// New log arrived, parse the event and forward to the user
|
1293
|
+
event := new(WrappersValidatorSetUpdatedEvent)
|
1294
|
+
if err := _Wrappers.contract.UnpackLog(event, "ValidatorSetUpdatedEvent", log); err != nil {
|
1295
|
+
return err
|
1296
|
+
}
|
1297
|
+
event.Raw = log
|
1298
|
+
|
1299
|
+
select {
|
1300
|
+
case sink <- event:
|
1301
|
+
case err := <-sub.Err():
|
1302
|
+
return err
|
1303
|
+
case <-quit:
|
1304
|
+
return nil
|
1305
|
+
}
|
1306
|
+
case err := <-sub.Err():
|
1307
|
+
return err
|
1308
|
+
case <-quit:
|
1309
|
+
return nil
|
1310
|
+
}
|
1311
|
+
}
|
1312
|
+
}), nil
|
1313
|
+
}
|
1314
|
+
|
1315
|
+
// ParseValidatorSetUpdatedEvent is a log parse operation binding the contract event 0xe55fb3cbbfe29b13c7f8a35ef23127e7df9ab88df16bac166ad254a20f02414c.
|
1316
|
+
//
|
1317
|
+
// Solidity: event ValidatorSetUpdatedEvent(uint256 indexed nonce, uint256 powerThreshold, bytes32 validatorSetHash)
|
1318
|
+
func (_Wrappers *WrappersFilterer) ParseValidatorSetUpdatedEvent(log types.Log) (*WrappersValidatorSetUpdatedEvent, error) {
|
1319
|
+
event := new(WrappersValidatorSetUpdatedEvent)
|
1320
|
+
if err := _Wrappers.contract.UnpackLog(event, "ValidatorSetUpdatedEvent", log); err != nil {
|
1321
|
+
return nil, err
|
1322
|
+
}
|
1323
|
+
event.Raw = log
|
1324
|
+
return event, nil
|
1325
|
+
}
|