From 48cc90454e0fdbb3898192d089403435755c4b9b Mon Sep 17 00:00:00 2001 From: Christopher Dimitri Sastropranoto Date: Fri, 17 May 2024 16:14:58 +0700 Subject: [PATCH] regen wrappers --- .../keystone_capability_registry.go | 147 +++++++++++++++++- ...rapper-dependency-versions-do-not-edit.txt | 2 +- 2 files changed, 146 insertions(+), 3 deletions(-) diff --git a/core/gethwrappers/keystone/generated/keystone_capability_registry/keystone_capability_registry.go b/core/gethwrappers/keystone/generated/keystone_capability_registry/keystone_capability_registry.go index 6e54922e5e8..3b267be57e1 100644 --- a/core/gethwrappers/keystone/generated/keystone_capability_registry/keystone_capability_registry.go +++ b/core/gethwrappers/keystone/generated/keystone_capability_registry/keystone_capability_registry.go @@ -55,8 +55,8 @@ type CapabilityRegistryNodeParams struct { } var CapabilityRegistryMetaData = &bind.MetaData{ - ABI: "[{\"inputs\":[],\"name\":\"AccessForbidden\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"CapabilityAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"hashedCapabilityId\",\"type\":\"bytes32\"}],\"name\":\"CapabilityDoesNotExist\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"hashedCapabilityId\",\"type\":\"bytes32\"}],\"name\":\"CapabilityIsDeprecated\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"donId\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"capabilityId\",\"type\":\"bytes32\"}],\"name\":\"DuplicateDONCapability\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"donId\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"nodeP2PId\",\"type\":\"bytes32\"}],\"name\":\"DuplicateDONNode\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"proposedConfigurationContract\",\"type\":\"address\"}],\"name\":\"InvalidCapabilityConfigurationContractInterface\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"hashedCapabilityIds\",\"type\":\"bytes32[]\"}],\"name\":\"InvalidNodeCapabilities\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidNodeOperatorAdmin\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"p2pId\",\"type\":\"bytes32\"}],\"name\":\"InvalidNodeP2PId\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidNodeSigner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"lengthOne\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"lengthTwo\",\"type\":\"uint256\"}],\"name\":\"LengthMismatch\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"nodeP2PId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"capabilityId\",\"type\":\"bytes32\"}],\"name\":\"NodeDoesNotSupportCapability\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"hashedCapabilityId\",\"type\":\"bytes32\"}],\"name\":\"CapabilityAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"hashedCapabilityId\",\"type\":\"bytes32\"}],\"name\":\"CapabilityDeprecated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"donId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"isPublic\",\"type\":\"bool\"}],\"name\":\"DONAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"p2pId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nodeOperatorId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"signer\",\"type\":\"bytes32\"}],\"name\":\"NodeAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nodeOperatorId\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"NodeOperatorAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nodeOperatorId\",\"type\":\"uint256\"}],\"name\":\"NodeOperatorRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nodeOperatorId\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"NodeOperatorUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"p2pId\",\"type\":\"bytes32\"}],\"name\":\"NodeRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"p2pId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nodeOperatorId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"signer\",\"type\":\"bytes32\"}],\"name\":\"NodeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"OwnershipTransferRequested\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"labelledName\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"version\",\"type\":\"bytes32\"},{\"internalType\":\"enumCapabilityRegistry.CapabilityResponseType\",\"name\":\"responseType\",\"type\":\"uint8\"},{\"internalType\":\"address\",\"name\":\"configurationContract\",\"type\":\"address\"}],\"internalType\":\"structCapabilityRegistry.Capability\",\"name\":\"capability\",\"type\":\"tuple\"}],\"name\":\"addCapability\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"nodes\",\"type\":\"bytes32[]\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"capabilityId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"config\",\"type\":\"bytes\"}],\"internalType\":\"structCapabilityRegistry.CapabilityConfiguration[]\",\"name\":\"capabilityConfigurations\",\"type\":\"tuple[]\"},{\"internalType\":\"bool\",\"name\":\"isPublic\",\"type\":\"bool\"}],\"name\":\"addDON\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"internalType\":\"structCapabilityRegistry.NodeOperator[]\",\"name\":\"nodeOperators\",\"type\":\"tuple[]\"}],\"name\":\"addNodeOperators\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"nodeOperatorId\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"signer\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"p2pId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"hashedCapabilityIds\",\"type\":\"bytes32[]\"}],\"internalType\":\"structCapabilityRegistry.NodeParams[]\",\"name\":\"nodes\",\"type\":\"tuple[]\"}],\"name\":\"addNodes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"hashedCapabilityId\",\"type\":\"bytes32\"}],\"name\":\"deprecateCapability\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getCapabilities\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"labelledName\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"version\",\"type\":\"bytes32\"},{\"internalType\":\"enumCapabilityRegistry.CapabilityResponseType\",\"name\":\"responseType\",\"type\":\"uint8\"},{\"internalType\":\"address\",\"name\":\"configurationContract\",\"type\":\"address\"}],\"internalType\":\"structCapabilityRegistry.Capability[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"hashedId\",\"type\":\"bytes32\"}],\"name\":\"getCapability\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"labelledName\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"version\",\"type\":\"bytes32\"},{\"internalType\":\"enumCapabilityRegistry.CapabilityResponseType\",\"name\":\"responseType\",\"type\":\"uint8\"},{\"internalType\":\"address\",\"name\":\"configurationContract\",\"type\":\"address\"}],\"internalType\":\"structCapabilityRegistry.Capability\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"donId\",\"type\":\"uint32\"}],\"name\":\"getDON\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"},{\"internalType\":\"bytes32[]\",\"name\":\"\",\"type\":\"bytes32[]\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"capabilityId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"config\",\"type\":\"bytes\"}],\"internalType\":\"structCapabilityRegistry.CapabilityConfiguration[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"donId\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"capabilityId\",\"type\":\"bytes32\"}],\"name\":\"getDONCapabilityConfig\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"labelledName\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"version\",\"type\":\"bytes32\"}],\"name\":\"getHashedCapabilityId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"p2pId\",\"type\":\"bytes32\"}],\"name\":\"getNode\",\"outputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"nodeOperatorId\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"signer\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"p2pId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"hashedCapabilityIds\",\"type\":\"bytes32[]\"}],\"internalType\":\"structCapabilityRegistry.NodeParams\",\"name\":\"\",\"type\":\"tuple\"},{\"internalType\":\"uint32\",\"name\":\"configCount\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"nodeOperatorId\",\"type\":\"uint256\"}],\"name\":\"getNodeOperator\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"internalType\":\"structCapabilityRegistry.NodeOperator\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"hashedCapabilityId\",\"type\":\"bytes32\"}],\"name\":\"isCapabilityDeprecated\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"nodeOperatorIds\",\"type\":\"uint256[]\"}],\"name\":\"removeNodeOperators\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"removedNodeP2PIds\",\"type\":\"bytes32[]\"}],\"name\":\"removeNodes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"typeAndVersion\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"nodeOperatorIds\",\"type\":\"uint256[]\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"internalType\":\"structCapabilityRegistry.NodeOperator[]\",\"name\":\"nodeOperators\",\"type\":\"tuple[]\"}],\"name\":\"updateNodeOperators\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"nodeOperatorId\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"signer\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"p2pId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"hashedCapabilityIds\",\"type\":\"bytes32[]\"}],\"internalType\":\"structCapabilityRegistry.NodeParams[]\",\"name\":\"nodes\",\"type\":\"tuple[]\"}],\"name\":\"updateNodes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", - Bin: "0x6080604052600d805463ffffffff191660011790553480156200002157600080fd5b503380600081620000795760405162461bcd60e51b815260206004820152601860248201527f43616e6e6f7420736574206f776e657220746f207a65726f000000000000000060448201526064015b60405180910390fd5b600080546001600160a01b0319166001600160a01b0384811691909117909155811615620000ac57620000ac81620000b5565b50505062000160565b336001600160a01b038216036200010f5760405162461bcd60e51b815260206004820152601760248201527f43616e6e6f74207472616e7366657220746f2073656c66000000000000000000604482015260640162000070565b600180546001600160a01b0319166001600160a01b0383811691821790925560008054604051929316917fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae12789190a350565b6135d380620001706000396000f3fe608060405234801561001057600080fd5b50600436106101775760003560e01c80635e65e309116100d85780638da5cb5b1161008c578063b06e07a711610066578063b06e07a71461038f578063ddbe4f82146103a2578063f2fde38b146103b757600080fd5b80638da5cb5b146103345780639cb7c5f41461035c578063ae3c241c1461037c57600080fd5b80636ae5c591116100bd5780636ae5c5911461030657806373ac22b41461031957806379ba50971461032c57600080fd5b80635e65e309146102d357806365c14dc7146102e657600080fd5b8063235374051161012f57806336b402fb1161011457806336b402fb14610257578063398f37731461029f57806350c946fe146102b257600080fd5b806323537405146102215780632c01a1e81461024457600080fd5b8063125700111161016057806312570011146101a4578063181f5a77146101cc5780631cdf63431461020e57600080fd5b80630c5801e31461017c578063117392ce14610191575b600080fd5b61018f61018a3660046127eb565b6103ca565b005b61018f61019f366004612857565b6106db565b6101b76101b236600461286f565b610926565b60405190151581526020015b60405180910390f35b60408051808201909152601881527f4361706162696c697479526567697374727920312e302e30000000000000000060208201525b6040516101c391906128ec565b61018f61021c3660046128ff565b610939565b61023461022f36600461295a565b6109fc565b6040516101c394939291906129b0565b61018f6102523660046128ff565b610c55565b610291610265366004612a68565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b6040519081526020016101c3565b61018f6102ad3660046128ff565b610eda565b6102c56102c036600461286f565b611073565b6040516101c3929190612a8a565b61018f6102e13660046128ff565b611118565b6102f96102f436600461286f565b61161b565b6040516101c39190612b16565b61018f610314366004612b67565b611701565b61018f6103273660046128ff565b611afd565b61018f611f51565b60005460405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101c3565b61036f61036a36600461286f565b61204e565b6040516101c39190612c8a565b61018f61038a36600461286f565b6120f8565b61020161039d366004612c98565b6121c3565b6103aa612298565b6040516101c39190612cc2565b61018f6103c5366004612d32565b6123dd565b828114610412576040517fab8b67c600000000000000000000000000000000000000000000000000000000815260048101849052602481018290526044015b60405180910390fd5b6000805473ffffffffffffffffffffffffffffffffffffffff16905b848110156106d357600086868381811061044a5761044a612d4f565b905060200201359050600085858481811061046757610467612d4f565b90506020028101906104799190612d7e565b61048290612e86565b805190915073ffffffffffffffffffffffffffffffffffffffff166104d3576040517feeacd93900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805173ffffffffffffffffffffffffffffffffffffffff16331480159061051057503373ffffffffffffffffffffffffffffffffffffffff851614155b15610547576040517fef67f5d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805160008381526009602052604090205473ffffffffffffffffffffffffffffffffffffffff90811691161415806105f9575060208082015160405161058d92016128ec565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815282825280516020918201206000868152600983529290922091926105e0926001019101612f9f565b6040516020818303038152906040528051906020012014155b156106c0578051600083815260096020908152604090912080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909316929092178255820151600190910190610666908261308e565b50806000015173ffffffffffffffffffffffffffffffffffffffff167f14c8f513e8a6d86d2d16b0cb64976de4e72386c4f8068eca3b7354373f8fe97a8383602001516040516106b79291906131a8565b60405180910390a25b5050806106cc906131f0565b905061042e565b505050505050565b6106e36123f1565b60408051823560208281019190915280840135828401528251808303840181526060909201909252805191012061071b600382612474565b15610752576040517fe288638f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006107646080840160608501612d32565b73ffffffffffffffffffffffffffffffffffffffff16146108cf5761078f6080830160608401612d32565b73ffffffffffffffffffffffffffffffffffffffff163b158061086f57506107bd6080830160608401612d32565b6040517f01ffc9a70000000000000000000000000000000000000000000000000000000081527f884efe6100000000000000000000000000000000000000000000000000000000600482015273ffffffffffffffffffffffffffffffffffffffff91909116906301ffc9a790602401602060405180830381865afa158015610849573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086d9190613228565b155b156108cf576108846080830160608401612d32565b6040517fabb5e3fd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401610409565b6108da60038261248f565b50600081815260026020526040902082906108f58282613245565b505060405181907f65610e5677eedff94555572640e442f89848a109ef8593fa927ac30b2565ff0690600090a25050565b6000610933600583612474565b92915050565b6109416123f1565b60005b818110156109f757600083838381811061096057610960612d4f565b60209081029290920135600081815260099093526040832080547fffffffffffffffffffffffff00000000000000000000000000000000000000001681559093509190506109b16001830182612751565b50506040518181527f1e5877d7b3001d1569bf733b76c7eceda58bd6c031e5b8d0b7042308ba2e9d4f9060200160405180910390a1506109f0816131f0565b9050610944565b505050565b63ffffffff8082166000908152600b6020908152604080832080546401000000009004909416808452600190940182528083206002810180548351818602810186019094528084529495869560609586959294938893929091830182828015610a8457602002820191906000526020600020905b815481526020019060010190808311610a70575b505050505090506000815167ffffffffffffffff811115610aa757610aa7612dbc565b604051908082528060200260200182016040528015610aed57816020015b604080518082019091526000815260606020820152815260200190600190039081610ac55790505b50905060005b8151811015610c0e576040518060400160405280848381518110610b1957610b19612d4f565b60200260200101518152602001856003016000868581518110610b3e57610b3e612d4f565b602002602001015181526020019081526020016000208054610b5f90612f52565b80601f0160208091040260200160405190810160405280929190818152602001828054610b8b90612f52565b8015610bd85780601f10610bad57610100808354040283529160200191610bd8565b820191906000526020600020905b815481529060010190602001808311610bbb57829003601f168201915b5050505050815250828281518110610bf257610bf2612d4f565b602002602001018190525080610c07906131f0565b9050610af3565b5063ffffffff8981166000908152600b60205260409020549081169068010000000000000000900460ff16610c428561249b565b9199509750955093505050509193509193565b6000805473ffffffffffffffffffffffffffffffffffffffff163314905b82811015610ed4576000848483818110610c8f57610c8f612d4f565b602090810292909201356000818152600a90935260409092206001015491925050151580610cec576040517f64e2ee9200000000000000000000000000000000000000000000000000000000815260048101839052602401610409565b6000828152600a602090815260408083205463ffffffff168352600982528083208151808301909252805473ffffffffffffffffffffffffffffffffffffffff1682526001810180549293919291840191610d4690612f52565b80601f0160208091040260200160405190810160405280929190818152602001828054610d7290612f52565b8015610dbf5780601f10610d9457610100808354040283529160200191610dbf565b820191906000526020600020905b815481529060010190602001808311610da257829003601f168201915b505050505081525050905084158015610def5750805173ffffffffffffffffffffffffffffffffffffffff163314155b15610e26576040517fef67f5d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000838152600a6020526040902060010154610e44906007906124a8565b506000838152600a602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001681556001810183905560020191909155517f5254e609a97bab37b7cc79fe128f85c097bd6015c6e1624ae0ba392eb975320590610eb89085815260200190565b60405180910390a150505080610ecd906131f0565b9050610c73565b50505050565b610ee26123f1565b60005b818110156109f7576000838383818110610f0157610f01612d4f565b9050602002810190610f139190612d7e565b610f1c90612e86565b805190915073ffffffffffffffffffffffffffffffffffffffff16610f6d576040517feeacd93900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600c54604080518082018252835173ffffffffffffffffffffffffffffffffffffffff908116825260208086015181840190815260008681526009909252939020825181547fffffffffffffffffffffffff000000000000000000000000000000000000000016921691909117815591519091906001820190610ff0908261308e565b50905050600c60008154611003906131f0565b909155508151602083015160405173ffffffffffffffffffffffffffffffffffffffff909216917fda6697b182650034bd205cdc2dbfabb06bdb3a0a83a2b45bfefa3c4881284e0b91611058918591906131a8565b60405180910390a250508061106c906131f0565b9050610ee5565b6040805160808101825260008082526020820181905291810191909152606080820152604080516080810182526000848152600a6020908152838220805463ffffffff8082168652600183015484870152600283015486880152640100000000909104168352600301905291822060608201906110ef9061249b565b90526000938452600a602052604090932054929364010000000090930463ffffffff1692915050565b60005b818110156109f757600083838381811061113757611137612d4f565b905060200281019061114991906132c7565b611152906132fb565b9050600061117560005473ffffffffffffffffffffffffffffffffffffffff1690565b825163ffffffff1660009081526009602090815260408083208151808301909252805473ffffffffffffffffffffffffffffffffffffffff908116835260018201805496909116331496509394919390928401916111d290612f52565b80601f01602080910402602001604051908101604052809291908181526020018280546111fe90612f52565b801561124b5780601f106112205761010080835404028352916020019161124b565b820191906000526020600020905b81548152906001019060200180831161122e57829003601f168201915b50505050508152505090508115801561127b5750805173ffffffffffffffffffffffffffffffffffffffff163314155b156112b2576040517fef67f5d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040808401516000908152600a60205220600101541515806113085783604001516040517f64e2ee9200000000000000000000000000000000000000000000000000000000815260040161040991815260200190565b6020840151158061134e57508360200151600a600086604001518152602001908152602001600020600101541415801561134e5750602084015161134e90600790612474565b15611385576040517f8377314600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606084015180516000036113c757806040517f3748d4c600000000000000000000000000000000000000000000000000000000815260040161040991906133ce565b6040858101516000908152600a602052208054640100000000900463ffffffff169060046113f4836133e1565b82546101009290920a63ffffffff8181021990931691831602179091556040878101516000908152600a60205290812054640100000000900490911691505b82518110156114ff5761146983828151811061145157611451612d4f565b6020026020010151600361247490919063ffffffff16565b6114a157826040517f3748d4c600000000000000000000000000000000000000000000000000000000815260040161040991906133ce565b6114ee8382815181106114b6576114b6612d4f565b6020908102919091018101516040808b01516000908152600a845281812063ffffffff80891683526003909101909452209161248f16565b506114f8816131f0565b9050611433565b508551604080880180516000908152600a602090815283822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000001663ffffffff9096169590951790945581518082528382206002015581518152828120600190810154948b01519251825292902090910154146115b4576115836007826124a8565b50602080880180516040808b01516000908152600a90945290922060010191909155516115b29060079061248f565b505b60408781015188516020808b0151845193845263ffffffff909216908301528183015290517ff101cfc54994c31624d25789378d71ec4dbdc533e26a4ecc6b7648f4798d09169181900360600190a15050505050505080611614906131f0565b905061111b565b6040805180820190915260008152606060208201526000828152600960209081526040918290208251808401909352805473ffffffffffffffffffffffffffffffffffffffff168352600181018054919284019161167890612f52565b80601f01602080910402602001604051908101604052809291908181526020018280546116a490612f52565b80156116f15780601f106116c6576101008083540402835291602001916116f1565b820191906000526020600020905b8154815290600101906020018083116116d457829003601f168201915b5050505050815250509050919050565b6117096123f1565b600d5463ffffffff166000818152600b6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffff0000000016851768010000000000000000871515021781556001808552908101909252822090915b878110156117ff57600089898381811061178657611786612d4f565b6020029190910135915061179c90508382612474565b156117e2576040517f636e405700000000000000000000000000000000000000000000000000000000815263ffffffff8616600482015260248101829052604401610409565b6117ec838261248f565b5050806117f8906131f0565b905061176a565b5060005b85811015611a31573687878381811061181e5761181e612d4f565b90506020028101906118309190612d7e565b9050803561183f600382612474565b611878576040517fe181733f00000000000000000000000000000000000000000000000000000000815260048101829052602401610409565b611883600582612474565b156118bd576040517ff7d7a29400000000000000000000000000000000000000000000000000000000815260048101829052602401610409565b6000818152600385016020526040812080546118d890612f52565b90501115611921576040517f3927d08000000000000000000000000000000000000000000000000000000000815263ffffffff8716600482015260248101829052604401610409565b60005b8a8110156119d95760008c8c8381811061194057611940612d4f565b602090810292909201356000818152600a84526040808220805463ffffffff640100000000909104811684526003909101909552902090935061198892909150859061247416565b6119c8576040517fa7e792500000000000000000000000000000000000000000000000000000000081526004810182905260248101849052604401610409565b506119d2816131f0565b9050611924565b50600284018054600181018255600091825260209182902001829055611a0190830183613404565b6000838152600387016020526040902091611a1d919083613469565b50505080611a2a906131f0565b9050611803565b5063ffffffff8381166000908152600b6020526040812080547fffffffffffffffffffffffffffffffffffffffffffffffff00000000ffffffff1664010000000086851602179055600d80549092611a8991166133e1565b91906101000a81548163ffffffff021916908363ffffffff1602179055507fab55f4c8fb4335a586285ae209d1f1e17a7ccb22e1131963624434d98c8546a58385604051611aeb92919063ffffffff9290921682521515602082015260400190565b60405180910390a15050505050505050565b60005b818110156109f7576000838383818110611b1c57611b1c612d4f565b9050602002810190611b2e91906132c7565b611b37906132fb565b90506000611b5a60005473ffffffffffffffffffffffffffffffffffffffff1690565b825163ffffffff1660009081526009602090815260408083208151808301909252805473ffffffffffffffffffffffffffffffffffffffff90811683526001820180549690911633149650939491939092840191611bb790612f52565b80601f0160208091040260200160405190810160405280929190818152602001828054611be390612f52565b8015611c305780601f10611c0557610100808354040283529160200191611c30565b820191906000526020600020905b815481529060010190602001808311611c1357829003601f168201915b505050505081525050905081158015611c605750805173ffffffffffffffffffffffffffffffffffffffff163314155b15611c97576040517fef67f5d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040808401516000908152600a602052206001015415158080611cbc57506040840151155b15611cfb5783604001516040517f64e2ee9200000000000000000000000000000000000000000000000000000000815260040161040991815260200190565b60208401511580611d1857506020840151611d1890600790612474565b15611d4f576040517f8377314600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60608401518051600003611d9157806040517f3748d4c600000000000000000000000000000000000000000000000000000000815260040161040991906133ce565b6040858101516000908152600a602052208054600490611dbe90640100000000900463ffffffff166133e1565b82546101009290920a63ffffffff8181021990931691831602179091556040868101516000908152600a602052908120546401000000009004909116905b8251811015611e7857611e1a83828151811061145157611451612d4f565b611e5257826040517f3748d4c600000000000000000000000000000000000000000000000000000000815260040161040991906133ce565b611e678382815181106114b6576114b6612d4f565b50611e71816131f0565b9050611dfc565b508551604080880180516000908152600a602090815283822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000001663ffffffff9687161790558251808352848320600201558a018051925182529290206001015551611eea916007919061248f16565b5060408681015187516020808a0151845193845263ffffffff909216908301528183015290517fc9296aa9b0951d8000e8ed7f2b5be30c5106de8df3dbedf9a57c93f5f9e4d7da9181900360600190a150505050505080611f4a906131f0565b9050611b00565b60015473ffffffffffffffffffffffffffffffffffffffff163314611fd2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4d7573742062652070726f706f736564206f776e6572000000000000000000006044820152606401610409565b60008054337fffffffffffffffffffffffff00000000000000000000000000000000000000008083168217845560018054909116905560405173ffffffffffffffffffffffffffffffffffffffff90921692909183917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a350565b604080516080808201835260008083526020808401829052838501829052606084018290528582526002808252918590208551938401865280548452600180820154928501929092529182015493949293919284019160ff16908111156120b7576120b7612beb565b60018111156120c8576120c8612beb565b815260029190910154610100900473ffffffffffffffffffffffffffffffffffffffff1660209091015292915050565b6121006123f1565b61210b600382612474565b612144576040517fe181733f00000000000000000000000000000000000000000000000000000000815260048101829052602401610409565b61214f600582612474565b15612189576040517ff7d7a29400000000000000000000000000000000000000000000000000000000815260048101829052602401610409565b61219460058261248f565b5060405181907fdcea1b78b6ddc31592a94607d537543fcaafda6cc52d6d5cc7bbfca1422baf2190600090a250565b63ffffffff8083166000908152600b60209081526040808320805464010000000090049094168084526001909401825280832085845260030190915290208054606092919061221190612f52565b80601f016020809104026020016040519081016040528092919081815260200182805461223d90612f52565b801561228a5780601f1061225f5761010080835404028352916020019161228a565b820191906000526020600020905b81548152906001019060200180831161226d57829003601f168201915b505050505091505092915050565b606060006122a6600361249b565b905060006122b460056124b4565b82516122c09190613584565b67ffffffffffffffff8111156122d8576122d8612dbc565b60405190808252806020026020018201604052801561234857816020015b6040805160808101825260008082526020808301829052928201819052606082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816122f65790505b5090506000805b83518110156123d457600084828151811061236c5761236c612d4f565b6020026020010151905061238a81600561247490919063ffffffff16565b6123c3576123978161204e565b8484815181106123a9576123a9612d4f565b602002602001018190525082806123bf906131f0565b9350505b506123cd816131f0565b905061234f565b50909392505050565b6123e56123f1565b6123ee816124be565b50565b60005473ffffffffffffffffffffffffffffffffffffffff163314612472576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4f6e6c792063616c6c61626c65206279206f776e6572000000000000000000006044820152606401610409565b565b600081815260018301602052604081205415155b9392505050565b600061248883836125b3565b6060600061248883612602565b6000612488838361265e565b6000610933825490565b3373ffffffffffffffffffffffffffffffffffffffff82160361253d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f43616e6e6f74207472616e7366657220746f2073656c660000000000000000006044820152606401610409565b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83811691821790925560008054604051929316917fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae12789190a350565b60008181526001830160205260408120546125fa57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610933565b506000610933565b60608160000180548060200260200160405190810160405280929190818152602001828054801561265257602002820191906000526020600020905b81548152602001906001019080831161263e575b50505050509050919050565b60008181526001830160205260408120548015612747576000612682600183613584565b855490915060009061269690600190613584565b90508181146126fb5760008660000182815481106126b6576126b6612d4f565b90600052602060002001549050808760000184815481106126d9576126d9612d4f565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061270c5761270c613597565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610933565b6000915050610933565b50805461275d90612f52565b6000825580601f1061276d575050565b601f0160209004906000526020600020908101906123ee91905b8082111561279b5760008155600101612787565b5090565b60008083601f8401126127b157600080fd5b50813567ffffffffffffffff8111156127c957600080fd5b6020830191508360208260051b85010111156127e457600080fd5b9250929050565b6000806000806040858703121561280157600080fd5b843567ffffffffffffffff8082111561281957600080fd5b6128258883890161279f565b9096509450602087013591508082111561283e57600080fd5b5061284b8782880161279f565b95989497509550505050565b60006080828403121561286957600080fd5b50919050565b60006020828403121561288157600080fd5b5035919050565b6000815180845260005b818110156128ae57602081850181015186830182015201612892565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b6020815260006124886020830184612888565b6000806020838503121561291257600080fd5b823567ffffffffffffffff81111561292957600080fd5b6129358582860161279f565b90969095509350505050565b803563ffffffff8116811461295557600080fd5b919050565b60006020828403121561296c57600080fd5b61248882612941565b600081518084526020808501945080840160005b838110156129a557815187529582019590820190600101612989565b509495945050505050565b63ffffffff85168152600060208515158184015260406080818501526129d96080850187612975565b8481036060860152855180825283820190600581901b8301850185890160005b83811015612a56578583037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018552815180518452880151888401889052612a4388850182612888565b95890195935050908701906001016129f9565b50909c9b505050505050505050505050565b60008060408385031215612a7b57600080fd5b50508035926020909101359150565b60408152600060c0820163ffffffff85511660408401526020808601516060850152604086015160808501526060860151608060a086015282815180855260e0870191508383019450600092505b80831015612af85784518252938301936001929092019190830190612ad8565b5063ffffffff8716838701529350612b0d9050565b50509392505050565b6020815273ffffffffffffffffffffffffffffffffffffffff825116602082015260006020830151604080840152612b516060840182612888565b949350505050565b80151581146123ee57600080fd5b600080600080600060608688031215612b7f57600080fd5b853567ffffffffffffffff80821115612b9757600080fd5b612ba389838a0161279f565b90975095506020880135915080821115612bbc57600080fd5b50612bc98882890161279f565b9094509250506040860135612bdd81612b59565b809150509295509295909350565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8051825260208101516020830152604081015160028110612c64577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604083015260609081015173ffffffffffffffffffffffffffffffffffffffff16910152565b608081016109338284612c1a565b60008060408385031215612cab57600080fd5b612cb483612941565b946020939093013593505050565b6020808252825182820181905260009190848201906040850190845b81811015612d0457612cf1838551612c1a565b9284019260809290920191600101612cde565b50909695505050505050565b73ffffffffffffffffffffffffffffffffffffffff811681146123ee57600080fd5b600060208284031215612d4457600080fd5b813561248881612d10565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1833603018112612db257600080fd5b9190910192915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715612e0e57612e0e612dbc565b60405290565b6040516080810167ffffffffffffffff81118282101715612e0e57612e0e612dbc565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612e7e57612e7e612dbc565b604052919050565b600060408236031215612e9857600080fd5b612ea0612deb565b8235612eab81612d10565b815260208381013567ffffffffffffffff80821115612ec957600080fd5b9085019036601f830112612edc57600080fd5b813581811115612eee57612eee612dbc565b612f1e847fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601612e37565b91508082523684828501011115612f3457600080fd5b80848401858401376000908201840152918301919091525092915050565b600181811c90821680612f6657607f821691505b602082108103612869577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000602080835260008454612fb381612f52565b80848701526040600180841660008114612fd4576001811461300c5761303a565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008516838a01528284151560051b8a0101955061303a565b896000528660002060005b858110156130325781548b8201860152908301908801613017565b8a0184019650505b509398975050505050505050565b601f8211156109f757600081815260208120601f850160051c8101602086101561306f5750805b601f850160051c820191505b818110156106d35782815560010161307b565b815167ffffffffffffffff8111156130a8576130a8612dbc565b6130bc816130b68454612f52565b84613048565b602080601f83116001811461310f57600084156130d95750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556106d3565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561315c5788860151825594840194600190910190840161313d565b508582101561319857878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000612b516040830184612888565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613221576132216131c1565b5060010190565b60006020828403121561323a57600080fd5b815161248881612b59565b81358155602082013560018201556002810160408301356002811061326957600080fd5b8154606085013561327981612d10565b74ffffffffffffffffffffffffffffffffffffffff008160081b1660ff84167fffffffffffffffffffffff000000000000000000000000000000000000000000841617178455505050505050565b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81833603018112612db257600080fd5b60006080823603121561330d57600080fd5b613315612e14565b61331e83612941565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561334f57600080fd5b9085019036601f83011261336257600080fd5b81358181111561337457613374612dbc565b8060051b9150613385848301612e37565b818152918301840191848101903684111561339f57600080fd5b938501935b838510156133bd578435825293850193908501906133a4565b606087015250939695505050505050565b6020815260006124886020830184612975565b600063ffffffff8083168181036133fa576133fa6131c1565b6001019392505050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe184360301811261343957600080fd5b83018035915067ffffffffffffffff82111561345457600080fd5b6020019150368190038213156127e457600080fd5b67ffffffffffffffff83111561348157613481612dbc565b6134958361348f8354612f52565b83613048565b6000601f8411600181146134e757600085156134b15750838201355b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600387901b1c1916600186901b17835561357d565b6000838152602090207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0861690835b828110156135365786850135825560209485019460019092019101613516565b5086821015613571577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88860031b161c19848701351681555b505060018560011b0183555b5050505050565b81810381811115610933576109336131c1565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea164736f6c6343000813000a", + ABI: "[{\"inputs\":[],\"name\":\"AccessForbidden\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"CapabilityAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"hashedCapabilityId\",\"type\":\"bytes32\"}],\"name\":\"CapabilityDoesNotExist\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"hashedCapabilityId\",\"type\":\"bytes32\"}],\"name\":\"CapabilityIsDeprecated\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"donId\",\"type\":\"uint32\"}],\"name\":\"DONDoesNotExist\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"donId\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"capabilityId\",\"type\":\"bytes32\"}],\"name\":\"DuplicateDONCapability\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"donId\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"nodeP2PId\",\"type\":\"bytes32\"}],\"name\":\"DuplicateDONNode\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"proposedConfigurationContract\",\"type\":\"address\"}],\"name\":\"InvalidCapabilityConfigurationContractInterface\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"hashedCapabilityIds\",\"type\":\"bytes32[]\"}],\"name\":\"InvalidNodeCapabilities\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidNodeOperatorAdmin\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"p2pId\",\"type\":\"bytes32\"}],\"name\":\"InvalidNodeP2PId\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidNodeSigner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"lengthOne\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"lengthTwo\",\"type\":\"uint256\"}],\"name\":\"LengthMismatch\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"nodeP2PId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"capabilityId\",\"type\":\"bytes32\"}],\"name\":\"NodeDoesNotSupportCapability\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"hashedCapabilityId\",\"type\":\"bytes32\"}],\"name\":\"CapabilityAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"hashedCapabilityId\",\"type\":\"bytes32\"}],\"name\":\"CapabilityDeprecated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"donId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"isPublic\",\"type\":\"bool\"}],\"name\":\"DONAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"donId\",\"type\":\"uint32\"}],\"name\":\"DONRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"p2pId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nodeOperatorId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"signer\",\"type\":\"bytes32\"}],\"name\":\"NodeAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nodeOperatorId\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"NodeOperatorAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nodeOperatorId\",\"type\":\"uint256\"}],\"name\":\"NodeOperatorRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nodeOperatorId\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"NodeOperatorUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"p2pId\",\"type\":\"bytes32\"}],\"name\":\"NodeRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"p2pId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nodeOperatorId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"signer\",\"type\":\"bytes32\"}],\"name\":\"NodeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"OwnershipTransferRequested\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"labelledName\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"version\",\"type\":\"bytes32\"},{\"internalType\":\"enumCapabilityRegistry.CapabilityResponseType\",\"name\":\"responseType\",\"type\":\"uint8\"},{\"internalType\":\"address\",\"name\":\"configurationContract\",\"type\":\"address\"}],\"internalType\":\"structCapabilityRegistry.Capability\",\"name\":\"capability\",\"type\":\"tuple\"}],\"name\":\"addCapability\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"nodes\",\"type\":\"bytes32[]\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"capabilityId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"config\",\"type\":\"bytes\"}],\"internalType\":\"structCapabilityRegistry.CapabilityConfiguration[]\",\"name\":\"capabilityConfigurations\",\"type\":\"tuple[]\"},{\"internalType\":\"bool\",\"name\":\"isPublic\",\"type\":\"bool\"}],\"name\":\"addDON\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"internalType\":\"structCapabilityRegistry.NodeOperator[]\",\"name\":\"nodeOperators\",\"type\":\"tuple[]\"}],\"name\":\"addNodeOperators\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"nodeOperatorId\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"signer\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"p2pId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"hashedCapabilityIds\",\"type\":\"bytes32[]\"}],\"internalType\":\"structCapabilityRegistry.NodeParams[]\",\"name\":\"nodes\",\"type\":\"tuple[]\"}],\"name\":\"addNodes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"hashedCapabilityId\",\"type\":\"bytes32\"}],\"name\":\"deprecateCapability\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getCapabilities\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"labelledName\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"version\",\"type\":\"bytes32\"},{\"internalType\":\"enumCapabilityRegistry.CapabilityResponseType\",\"name\":\"responseType\",\"type\":\"uint8\"},{\"internalType\":\"address\",\"name\":\"configurationContract\",\"type\":\"address\"}],\"internalType\":\"structCapabilityRegistry.Capability[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"hashedId\",\"type\":\"bytes32\"}],\"name\":\"getCapability\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"labelledName\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"version\",\"type\":\"bytes32\"},{\"internalType\":\"enumCapabilityRegistry.CapabilityResponseType\",\"name\":\"responseType\",\"type\":\"uint8\"},{\"internalType\":\"address\",\"name\":\"configurationContract\",\"type\":\"address\"}],\"internalType\":\"structCapabilityRegistry.Capability\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"donId\",\"type\":\"uint32\"}],\"name\":\"getDON\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"},{\"internalType\":\"bytes32[]\",\"name\":\"\",\"type\":\"bytes32[]\"},{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"capabilityId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"config\",\"type\":\"bytes\"}],\"internalType\":\"structCapabilityRegistry.CapabilityConfiguration[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"donId\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"capabilityId\",\"type\":\"bytes32\"}],\"name\":\"getDONCapabilityConfig\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"labelledName\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"version\",\"type\":\"bytes32\"}],\"name\":\"getHashedCapabilityId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"p2pId\",\"type\":\"bytes32\"}],\"name\":\"getNode\",\"outputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"nodeOperatorId\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"signer\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"p2pId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"hashedCapabilityIds\",\"type\":\"bytes32[]\"}],\"internalType\":\"structCapabilityRegistry.NodeParams\",\"name\":\"\",\"type\":\"tuple\"},{\"internalType\":\"uint32\",\"name\":\"configCount\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"nodeOperatorId\",\"type\":\"uint256\"}],\"name\":\"getNodeOperator\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"internalType\":\"structCapabilityRegistry.NodeOperator\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"hashedCapabilityId\",\"type\":\"bytes32\"}],\"name\":\"isCapabilityDeprecated\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32[]\",\"name\":\"donIds\",\"type\":\"uint32[]\"}],\"name\":\"removeDONs\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"nodeOperatorIds\",\"type\":\"uint256[]\"}],\"name\":\"removeNodeOperators\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"removedNodeP2PIds\",\"type\":\"bytes32[]\"}],\"name\":\"removeNodes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"typeAndVersion\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"nodeOperatorIds\",\"type\":\"uint256[]\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"admin\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"internalType\":\"structCapabilityRegistry.NodeOperator[]\",\"name\":\"nodeOperators\",\"type\":\"tuple[]\"}],\"name\":\"updateNodeOperators\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"nodeOperatorId\",\"type\":\"uint32\"},{\"internalType\":\"bytes32\",\"name\":\"signer\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"p2pId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"hashedCapabilityIds\",\"type\":\"bytes32[]\"}],\"internalType\":\"structCapabilityRegistry.NodeParams[]\",\"name\":\"nodes\",\"type\":\"tuple[]\"}],\"name\":\"updateNodes\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]", + Bin: "0x6080604052600d805463ffffffff191660011790553480156200002157600080fd5b503380600081620000795760405162461bcd60e51b815260206004820152601860248201527f43616e6e6f7420736574206f776e657220746f207a65726f000000000000000060448201526064015b60405180910390fd5b600080546001600160a01b0319166001600160a01b0384811691909117909155811615620000ac57620000ac81620000b5565b50505062000160565b336001600160a01b038216036200010f5760405162461bcd60e51b815260206004820152601760248201527f43616e6e6f74207472616e7366657220746f2073656c66000000000000000000604482015260640162000070565b600180546001600160a01b0319166001600160a01b0383811691821790925560008054604051929316917fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae12789190a350565b61371680620001706000396000f3fe608060405234801561001057600080fd5b50600436106101825760003560e01c80635e65e309116100d85780638da5cb5b1161008c578063b06e07a711610066578063b06e07a7146103ad578063ddbe4f82146103c0578063f2fde38b146103d557600080fd5b80638da5cb5b146103525780639cb7c5f41461037a578063ae3c241c1461039a57600080fd5b80636ae5c591116100bd5780636ae5c5911461032457806373ac22b41461033757806379ba50971461034a57600080fd5b80635e65e309146102f157806365c14dc71461030457600080fd5b80631d05394c1161013a57806336b402fb1161011457806336b402fb14610275578063398f3773146102bd57806350c946fe146102d057600080fd5b80631d05394c1461022c578063235374051461023f5780632c01a1e81461026257600080fd5b8063125700111161016b57806312570011146101af578063181f5a77146101d75780631cdf63431461021957600080fd5b80630c5801e314610187578063117392ce1461019c575b600080fd5b61019a61019536600461292e565b6103e8565b005b61019a6101aa36600461299a565b6106f9565b6101c26101bd3660046129b2565b610944565b60405190151581526020015b60405180910390f35b60408051808201909152601881527f4361706162696c697479526567697374727920312e302e30000000000000000060208201525b6040516101ce9190612a2f565b61019a610227366004612a42565b610957565b61019a61023a366004612a42565b610a1a565b61025261024d366004612a9d565b610b3f565b6040516101ce9493929190612af3565b61019a610270366004612a42565b610d98565b6102af610283366004612bab565b604080516020808201949094528082019290925280518083038201815260609092019052805191012090565b6040519081526020016101ce565b61019a6102cb366004612a42565b61101d565b6102e36102de3660046129b2565b6111b6565b6040516101ce929190612bcd565b61019a6102ff366004612a42565b61125b565b6103176103123660046129b2565b61175e565b6040516101ce9190612c59565b61019a610332366004612caa565b611844565b61019a610345366004612a42565b611c40565b61019a612094565b60005460405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101ce565b61038d6103883660046129b2565b612191565b6040516101ce9190612dcd565b61019a6103a83660046129b2565b61223b565b61020c6103bb366004612ddb565b612306565b6103c86123db565b6040516101ce9190612e05565b61019a6103e3366004612e75565b612520565b828114610430576040517fab8b67c600000000000000000000000000000000000000000000000000000000815260048101849052602481018290526044015b60405180910390fd5b6000805473ffffffffffffffffffffffffffffffffffffffff16905b848110156106f157600086868381811061046857610468612e92565b905060200201359050600085858481811061048557610485612e92565b90506020028101906104979190612ec1565b6104a090612fc9565b805190915073ffffffffffffffffffffffffffffffffffffffff166104f1576040517feeacd93900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805173ffffffffffffffffffffffffffffffffffffffff16331480159061052e57503373ffffffffffffffffffffffffffffffffffffffff851614155b15610565576040517fef67f5d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805160008381526009602052604090205473ffffffffffffffffffffffffffffffffffffffff908116911614158061061757506020808201516040516105ab9201612a2f565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815282825280516020918201206000868152600983529290922091926105fe9260010191016130e2565b6040516020818303038152906040528051906020012014155b156106de578051600083815260096020908152604090912080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff90931692909217825582015160019091019061068490826131d1565b50806000015173ffffffffffffffffffffffffffffffffffffffff167f14c8f513e8a6d86d2d16b0cb64976de4e72386c4f8068eca3b7354373f8fe97a8383602001516040516106d59291906132eb565b60405180910390a25b5050806106ea90613333565b905061044c565b505050505050565b610701612534565b6040805182356020828101919091528084013582840152825180830384018152606090920190925280519101206107396003826125b7565b15610770576040517fe288638f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006107826080840160608501612e75565b73ffffffffffffffffffffffffffffffffffffffff16146108ed576107ad6080830160608401612e75565b73ffffffffffffffffffffffffffffffffffffffff163b158061088d57506107db6080830160608401612e75565b6040517f01ffc9a70000000000000000000000000000000000000000000000000000000081527f884efe6100000000000000000000000000000000000000000000000000000000600482015273ffffffffffffffffffffffffffffffffffffffff91909116906301ffc9a790602401602060405180830381865afa158015610867573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088b919061336b565b155b156108ed576108a26080830160608401612e75565b6040517fabb5e3fd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401610427565b6108f86003826125d2565b50600081815260026020526040902082906109138282613388565b505060405181907f65610e5677eedff94555572640e442f89848a109ef8593fa927ac30b2565ff0690600090a25050565b60006109516005836125b7565b92915050565b61095f612534565b60005b81811015610a1557600083838381811061097e5761097e612e92565b60209081029290920135600081815260099093526040832080547fffffffffffffffffffffffff00000000000000000000000000000000000000001681559093509190506109cf6001830182612894565b50506040518181527f1e5877d7b3001d1569bf733b76c7eceda58bd6c031e5b8d0b7042308ba2e9d4f9060200160405180910390a150610a0e81613333565b9050610962565b505050565b610a22612534565b60005b81811015610a15576000838383818110610a4157610a41612e92565b9050602002016020810190610a569190612a9d565b63ffffffff8082166000908152600b6020526040812080549394509264010000000090049091169003610abd576040517f2b62be9b00000000000000000000000000000000000000000000000000000000815263ffffffff83166004820152602401610427565b63ffffffff82166000818152600b602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffff00000000000000000016905590519182527f7c551c5f33df1b67ff1dee6d812a4a2ea076c2a5bea7d3da390a75619df1553e910160405180910390a1505080610b3890613333565b9050610a25565b63ffffffff8082166000908152600b6020908152604080832080546401000000009004909416808452600190940182528083206002810180548351818602810186019094528084529495869560609586959294938893929091830182828015610bc757602002820191906000526020600020905b815481526020019060010190808311610bb3575b505050505090506000815167ffffffffffffffff811115610bea57610bea612eff565b604051908082528060200260200182016040528015610c3057816020015b604080518082019091526000815260606020820152815260200190600190039081610c085790505b50905060005b8151811015610d51576040518060400160405280848381518110610c5c57610c5c612e92565b60200260200101518152602001856003016000868581518110610c8157610c81612e92565b602002602001015181526020019081526020016000208054610ca290613095565b80601f0160208091040260200160405190810160405280929190818152602001828054610cce90613095565b8015610d1b5780601f10610cf057610100808354040283529160200191610d1b565b820191906000526020600020905b815481529060010190602001808311610cfe57829003601f168201915b5050505050815250828281518110610d3557610d35612e92565b602002602001018190525080610d4a90613333565b9050610c36565b5063ffffffff8981166000908152600b60205260409020549081169068010000000000000000900460ff16610d85856125de565b9199509750955093505050509193509193565b6000805473ffffffffffffffffffffffffffffffffffffffff163314905b82811015611017576000848483818110610dd257610dd2612e92565b602090810292909201356000818152600a90935260409092206001015491925050151580610e2f576040517f64e2ee9200000000000000000000000000000000000000000000000000000000815260048101839052602401610427565b6000828152600a602090815260408083205463ffffffff168352600982528083208151808301909252805473ffffffffffffffffffffffffffffffffffffffff1682526001810180549293919291840191610e8990613095565b80601f0160208091040260200160405190810160405280929190818152602001828054610eb590613095565b8015610f025780601f10610ed757610100808354040283529160200191610f02565b820191906000526020600020905b815481529060010190602001808311610ee557829003601f168201915b505050505081525050905084158015610f325750805173ffffffffffffffffffffffffffffffffffffffff163314155b15610f69576040517fef67f5d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000838152600a6020526040902060010154610f87906007906125eb565b506000838152600a602052604080822080547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001681556001810183905560020191909155517f5254e609a97bab37b7cc79fe128f85c097bd6015c6e1624ae0ba392eb975320590610ffb9085815260200190565b60405180910390a15050508061101090613333565b9050610db6565b50505050565b611025612534565b60005b81811015610a1557600083838381811061104457611044612e92565b90506020028101906110569190612ec1565b61105f90612fc9565b805190915073ffffffffffffffffffffffffffffffffffffffff166110b0576040517feeacd93900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600c54604080518082018252835173ffffffffffffffffffffffffffffffffffffffff908116825260208086015181840190815260008681526009909252939020825181547fffffffffffffffffffffffff00000000000000000000000000000000000000001692169190911781559151909190600182019061113390826131d1565b50905050600c6000815461114690613333565b909155508151602083015160405173ffffffffffffffffffffffffffffffffffffffff909216917fda6697b182650034bd205cdc2dbfabb06bdb3a0a83a2b45bfefa3c4881284e0b9161119b918591906132eb565b60405180910390a25050806111af90613333565b9050611028565b6040805160808101825260008082526020820181905291810191909152606080820152604080516080810182526000848152600a6020908152838220805463ffffffff808216865260018301548487015260028301548688015264010000000090910416835260030190529182206060820190611232906125de565b90526000938452600a602052604090932054929364010000000090930463ffffffff1692915050565b60005b81811015610a1557600083838381811061127a5761127a612e92565b905060200281019061128c919061340a565b6112959061343e565b905060006112b860005473ffffffffffffffffffffffffffffffffffffffff1690565b825163ffffffff1660009081526009602090815260408083208151808301909252805473ffffffffffffffffffffffffffffffffffffffff9081168352600182018054969091163314965093949193909284019161131590613095565b80601f016020809104026020016040519081016040528092919081815260200182805461134190613095565b801561138e5780601f106113635761010080835404028352916020019161138e565b820191906000526020600020905b81548152906001019060200180831161137157829003601f168201915b5050505050815250509050811580156113be5750805173ffffffffffffffffffffffffffffffffffffffff163314155b156113f5576040517fef67f5d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040808401516000908152600a602052206001015415158061144b5783604001516040517f64e2ee9200000000000000000000000000000000000000000000000000000000815260040161042791815260200190565b6020840151158061149157508360200151600a600086604001518152602001908152602001600020600101541415801561149157506020840151611491906007906125b7565b156114c8576040517f8377314600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6060840151805160000361150a57806040517f3748d4c60000000000000000000000000000000000000000000000000000000081526004016104279190613511565b6040858101516000908152600a602052208054640100000000900463ffffffff1690600461153783613524565b82546101009290920a63ffffffff8181021990931691831602179091556040878101516000908152600a60205290812054640100000000900490911691505b8251811015611642576115ac83828151811061159457611594612e92565b602002602001015160036125b790919063ffffffff16565b6115e457826040517f3748d4c60000000000000000000000000000000000000000000000000000000081526004016104279190613511565b6116318382815181106115f9576115f9612e92565b6020908102919091018101516040808b01516000908152600a845281812063ffffffff8089168352600390910190945220916125d216565b5061163b81613333565b9050611576565b508551604080880180516000908152600a602090815283822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000001663ffffffff9096169590951790945581518082528382206002015581518152828120600190810154948b01519251825292902090910154146116f7576116c66007826125eb565b50602080880180516040808b01516000908152600a90945290922060010191909155516116f5906007906125d2565b505b60408781015188516020808b0151845193845263ffffffff909216908301528183015290517ff101cfc54994c31624d25789378d71ec4dbdc533e26a4ecc6b7648f4798d09169181900360600190a1505050505050508061175790613333565b905061125e565b6040805180820190915260008152606060208201526000828152600960209081526040918290208251808401909352805473ffffffffffffffffffffffffffffffffffffffff16835260018101805491928401916117bb90613095565b80601f01602080910402602001604051908101604052809291908181526020018280546117e790613095565b80156118345780601f1061180957610100808354040283529160200191611834565b820191906000526020600020905b81548152906001019060200180831161181757829003601f168201915b5050505050815250509050919050565b61184c612534565b600d5463ffffffff166000818152600b6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffff0000000016851768010000000000000000871515021781556001808552908101909252822090915b878110156119425760008989838181106118c9576118c9612e92565b602002919091013591506118df905083826125b7565b15611925576040517f636e405700000000000000000000000000000000000000000000000000000000815263ffffffff8616600482015260248101829052604401610427565b61192f83826125d2565b50508061193b90613333565b90506118ad565b5060005b85811015611b74573687878381811061196157611961612e92565b90506020028101906119739190612ec1565b905080356119826003826125b7565b6119bb576040517fe181733f00000000000000000000000000000000000000000000000000000000815260048101829052602401610427565b6119c66005826125b7565b15611a00576040517ff7d7a29400000000000000000000000000000000000000000000000000000000815260048101829052602401610427565b600081815260038501602052604081208054611a1b90613095565b90501115611a64576040517f3927d08000000000000000000000000000000000000000000000000000000000815263ffffffff8716600482015260248101829052604401610427565b60005b8a811015611b1c5760008c8c83818110611a8357611a83612e92565b602090810292909201356000818152600a84526040808220805463ffffffff6401000000009091048116845260039091019095529020909350611acb9290915085906125b716565b611b0b576040517fa7e792500000000000000000000000000000000000000000000000000000000081526004810182905260248101849052604401610427565b50611b1581613333565b9050611a67565b50600284018054600181018255600091825260209182902001829055611b4490830183613547565b6000838152600387016020526040902091611b609190836135ac565b50505080611b6d90613333565b9050611946565b5063ffffffff8381166000908152600b6020526040812080547fffffffffffffffffffffffffffffffffffffffffffffffff00000000ffffffff1664010000000086851602179055600d80549092611bcc9116613524565b91906101000a81548163ffffffff021916908363ffffffff1602179055507fab55f4c8fb4335a586285ae209d1f1e17a7ccb22e1131963624434d98c8546a58385604051611c2e92919063ffffffff9290921682521515602082015260400190565b60405180910390a15050505050505050565b60005b81811015610a15576000838383818110611c5f57611c5f612e92565b9050602002810190611c71919061340a565b611c7a9061343e565b90506000611c9d60005473ffffffffffffffffffffffffffffffffffffffff1690565b825163ffffffff1660009081526009602090815260408083208151808301909252805473ffffffffffffffffffffffffffffffffffffffff90811683526001820180549690911633149650939491939092840191611cfa90613095565b80601f0160208091040260200160405190810160405280929190818152602001828054611d2690613095565b8015611d735780601f10611d4857610100808354040283529160200191611d73565b820191906000526020600020905b815481529060010190602001808311611d5657829003601f168201915b505050505081525050905081158015611da35750805173ffffffffffffffffffffffffffffffffffffffff163314155b15611dda576040517fef67f5d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040808401516000908152600a602052206001015415158080611dff57506040840151155b15611e3e5783604001516040517f64e2ee9200000000000000000000000000000000000000000000000000000000815260040161042791815260200190565b60208401511580611e5b57506020840151611e5b906007906125b7565b15611e92576040517f8377314600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60608401518051600003611ed457806040517f3748d4c60000000000000000000000000000000000000000000000000000000081526004016104279190613511565b6040858101516000908152600a602052208054600490611f0190640100000000900463ffffffff16613524565b82546101009290920a63ffffffff8181021990931691831602179091556040868101516000908152600a602052908120546401000000009004909116905b8251811015611fbb57611f5d83828151811061159457611594612e92565b611f9557826040517f3748d4c60000000000000000000000000000000000000000000000000000000081526004016104279190613511565b611faa8382815181106115f9576115f9612e92565b50611fb481613333565b9050611f3f565b508551604080880180516000908152600a602090815283822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000001663ffffffff9687161790558251808352848320600201558a01805192518252929020600101555161202d91600791906125d216565b5060408681015187516020808a0151845193845263ffffffff909216908301528183015290517fc9296aa9b0951d8000e8ed7f2b5be30c5106de8df3dbedf9a57c93f5f9e4d7da9181900360600190a15050505050508061208d90613333565b9050611c43565b60015473ffffffffffffffffffffffffffffffffffffffff163314612115576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4d7573742062652070726f706f736564206f776e6572000000000000000000006044820152606401610427565b60008054337fffffffffffffffffffffffff00000000000000000000000000000000000000008083168217845560018054909116905560405173ffffffffffffffffffffffffffffffffffffffff90921692909183917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a350565b604080516080808201835260008083526020808401829052838501829052606084018290528582526002808252918590208551938401865280548452600180820154928501929092529182015493949293919284019160ff16908111156121fa576121fa612d2e565b600181111561220b5761220b612d2e565b815260029190910154610100900473ffffffffffffffffffffffffffffffffffffffff1660209091015292915050565b612243612534565b61224e6003826125b7565b612287576040517fe181733f00000000000000000000000000000000000000000000000000000000815260048101829052602401610427565b6122926005826125b7565b156122cc576040517ff7d7a29400000000000000000000000000000000000000000000000000000000815260048101829052602401610427565b6122d76005826125d2565b5060405181907fdcea1b78b6ddc31592a94607d537543fcaafda6cc52d6d5cc7bbfca1422baf2190600090a250565b63ffffffff8083166000908152600b60209081526040808320805464010000000090049094168084526001909401825280832085845260030190915290208054606092919061235490613095565b80601f016020809104026020016040519081016040528092919081815260200182805461238090613095565b80156123cd5780601f106123a2576101008083540402835291602001916123cd565b820191906000526020600020905b8154815290600101906020018083116123b057829003601f168201915b505050505091505092915050565b606060006123e960036125de565b905060006123f760056125f7565b825161240391906136c7565b67ffffffffffffffff81111561241b5761241b612eff565b60405190808252806020026020018201604052801561248b57816020015b6040805160808101825260008082526020808301829052928201819052606082015282527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9092019101816124395790505b5090506000805b83518110156125175760008482815181106124af576124af612e92565b602002602001015190506124cd8160056125b790919063ffffffff16565b612506576124da81612191565b8484815181106124ec576124ec612e92565b6020026020010181905250828061250290613333565b9350505b5061251081613333565b9050612492565b50909392505050565b612528612534565b61253181612601565b50565b60005473ffffffffffffffffffffffffffffffffffffffff1633146125b5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4f6e6c792063616c6c61626c65206279206f776e6572000000000000000000006044820152606401610427565b565b600081815260018301602052604081205415155b9392505050565b60006125cb83836126f6565b606060006125cb83612745565b60006125cb83836127a1565b6000610951825490565b3373ffffffffffffffffffffffffffffffffffffffff821603612680576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f43616e6e6f74207472616e7366657220746f2073656c660000000000000000006044820152606401610427565b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83811691821790925560008054604051929316917fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae12789190a350565b600081815260018301602052604081205461273d57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610951565b506000610951565b60608160000180548060200260200160405190810160405280929190818152602001828054801561279557602002820191906000526020600020905b815481526020019060010190808311612781575b50505050509050919050565b6000818152600183016020526040812054801561288a5760006127c56001836136c7565b85549091506000906127d9906001906136c7565b905081811461283e5760008660000182815481106127f9576127f9612e92565b906000526020600020015490508087600001848154811061281c5761281c612e92565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061284f5761284f6136da565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610951565b6000915050610951565b5080546128a090613095565b6000825580601f106128b0575050565b601f01602090049060005260206000209081019061253191905b808211156128de57600081556001016128ca565b5090565b60008083601f8401126128f457600080fd5b50813567ffffffffffffffff81111561290c57600080fd5b6020830191508360208260051b850101111561292757600080fd5b9250929050565b6000806000806040858703121561294457600080fd5b843567ffffffffffffffff8082111561295c57600080fd5b612968888389016128e2565b9096509450602087013591508082111561298157600080fd5b5061298e878288016128e2565b95989497509550505050565b6000608082840312156129ac57600080fd5b50919050565b6000602082840312156129c457600080fd5b5035919050565b6000815180845260005b818110156129f1576020818501810151868301820152016129d5565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b6020815260006125cb60208301846129cb565b60008060208385031215612a5557600080fd5b823567ffffffffffffffff811115612a6c57600080fd5b612a78858286016128e2565b90969095509350505050565b803563ffffffff81168114612a9857600080fd5b919050565b600060208284031215612aaf57600080fd5b6125cb82612a84565b600081518084526020808501945080840160005b83811015612ae857815187529582019590820190600101612acc565b509495945050505050565b63ffffffff8516815260006020851515818401526040608081850152612b1c6080850187612ab8565b8481036060860152855180825283820190600581901b8301850185890160005b83811015612b99578583037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0018552815180518452880151888401889052612b86888501826129cb565b9589019593505090870190600101612b3c565b50909c9b505050505050505050505050565b60008060408385031215612bbe57600080fd5b50508035926020909101359150565b60408152600060c0820163ffffffff85511660408401526020808601516060850152604086015160808501526060860151608060a086015282815180855260e0870191508383019450600092505b80831015612c3b5784518252938301936001929092019190830190612c1b565b5063ffffffff8716838701529350612c509050565b50509392505050565b6020815273ffffffffffffffffffffffffffffffffffffffff825116602082015260006020830151604080840152612c9460608401826129cb565b949350505050565b801515811461253157600080fd5b600080600080600060608688031215612cc257600080fd5b853567ffffffffffffffff80821115612cda57600080fd5b612ce689838a016128e2565b90975095506020880135915080821115612cff57600080fd5b50612d0c888289016128e2565b9094509250506040860135612d2081612c9c565b809150509295509295909350565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8051825260208101516020830152604081015160028110612da7577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604083015260609081015173ffffffffffffffffffffffffffffffffffffffff16910152565b608081016109518284612d5d565b60008060408385031215612dee57600080fd5b612df783612a84565b946020939093013593505050565b6020808252825182820181905260009190848201906040850190845b81811015612e4757612e34838551612d5d565b9284019260809290920191600101612e21565b50909695505050505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461253157600080fd5b600060208284031215612e8757600080fd5b81356125cb81612e53565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1833603018112612ef557600080fd5b9190910192915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715612f5157612f51612eff565b60405290565b6040516080810167ffffffffffffffff81118282101715612f5157612f51612eff565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612fc157612fc1612eff565b604052919050565b600060408236031215612fdb57600080fd5b612fe3612f2e565b8235612fee81612e53565b815260208381013567ffffffffffffffff8082111561300c57600080fd5b9085019036601f83011261301f57600080fd5b81358181111561303157613031612eff565b613061847fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601612f7a565b9150808252368482850101111561307757600080fd5b80848401858401376000908201840152918301919091525092915050565b600181811c908216806130a957607f821691505b6020821081036129ac577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006020808352600084546130f681613095565b80848701526040600180841660008114613117576001811461314f5761317d565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008516838a01528284151560051b8a0101955061317d565b896000528660002060005b858110156131755781548b820186015290830190880161315a565b8a0184019650505b509398975050505050505050565b601f821115610a1557600081815260208120601f850160051c810160208610156131b25750805b601f850160051c820191505b818110156106f1578281556001016131be565b815167ffffffffffffffff8111156131eb576131eb612eff565b6131ff816131f98454613095565b8461318b565b602080601f831160018114613252576000841561321c5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556106f1565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101561329f57888601518255948401946001909101908401613280565b50858210156132db57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b828152604060208201526000612c9460408301846129cb565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361336457613364613304565b5060010190565b60006020828403121561337d57600080fd5b81516125cb81612c9c565b8135815560208201356001820155600281016040830135600281106133ac57600080fd5b815460608501356133bc81612e53565b74ffffffffffffffffffffffffffffffffffffffff008160081b1660ff84167fffffffffffffffffffffff000000000000000000000000000000000000000000841617178455505050505050565b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81833603018112612ef557600080fd5b60006080823603121561345057600080fd5b613458612f57565b61346183612a84565b81526020808401358183015260408401356040830152606084013567ffffffffffffffff8082111561349257600080fd5b9085019036601f8301126134a557600080fd5b8135818111156134b7576134b7612eff565b8060051b91506134c8848301612f7a565b81815291830184019184810190368411156134e257600080fd5b938501935b83851015613500578435825293850193908501906134e7565b606087015250939695505050505050565b6020815260006125cb6020830184612ab8565b600063ffffffff80831681810361353d5761353d613304565b6001019392505050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe184360301811261357c57600080fd5b83018035915067ffffffffffffffff82111561359757600080fd5b60200191503681900382131561292757600080fd5b67ffffffffffffffff8311156135c4576135c4612eff565b6135d8836135d28354613095565b8361318b565b6000601f84116001811461362a57600085156135f45750838201355b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600387901b1c1916600186901b1783556136c0565b6000838152602090207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0861690835b828110156136795786850135825560209485019460019092019101613659565b50868210156136b4577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88860031b161c19848701351681555b505060018560011b0183555b5050505050565b8181038181111561095157610951613304565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea164736f6c6343000813000a", } var CapabilityRegistryABI = CapabilityRegistryMetaData.ABI @@ -491,6 +491,18 @@ func (_CapabilityRegistry *CapabilityRegistryTransactorSession) DeprecateCapabil return _CapabilityRegistry.Contract.DeprecateCapability(&_CapabilityRegistry.TransactOpts, hashedCapabilityId) } +func (_CapabilityRegistry *CapabilityRegistryTransactor) RemoveDONs(opts *bind.TransactOpts, donIds []uint32) (*types.Transaction, error) { + return _CapabilityRegistry.contract.Transact(opts, "removeDONs", donIds) +} + +func (_CapabilityRegistry *CapabilityRegistrySession) RemoveDONs(donIds []uint32) (*types.Transaction, error) { + return _CapabilityRegistry.Contract.RemoveDONs(&_CapabilityRegistry.TransactOpts, donIds) +} + +func (_CapabilityRegistry *CapabilityRegistryTransactorSession) RemoveDONs(donIds []uint32) (*types.Transaction, error) { + return _CapabilityRegistry.Contract.RemoveDONs(&_CapabilityRegistry.TransactOpts, donIds) +} + func (_CapabilityRegistry *CapabilityRegistryTransactor) RemoveNodeOperators(opts *bind.TransactOpts, nodeOperatorIds []*big.Int) (*types.Transaction, error) { return _CapabilityRegistry.contract.Transact(opts, "removeNodeOperators", nodeOperatorIds) } @@ -923,6 +935,123 @@ func (_CapabilityRegistry *CapabilityRegistryFilterer) ParseDONAdded(log types.L return event, nil } +type CapabilityRegistryDONRemovedIterator struct { + Event *CapabilityRegistryDONRemoved + + contract *bind.BoundContract + event string + + logs chan types.Log + sub ethereum.Subscription + done bool + fail error +} + +func (it *CapabilityRegistryDONRemovedIterator) Next() bool { + + if it.fail != nil { + return false + } + + if it.done { + select { + case log := <-it.logs: + it.Event = new(CapabilityRegistryDONRemoved) + if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { + it.fail = err + return false + } + it.Event.Raw = log + return true + + default: + return false + } + } + + select { + case log := <-it.logs: + it.Event = new(CapabilityRegistryDONRemoved) + if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { + it.fail = err + return false + } + it.Event.Raw = log + return true + + case err := <-it.sub.Err(): + it.done = true + it.fail = err + return it.Next() + } +} + +func (it *CapabilityRegistryDONRemovedIterator) Error() error { + return it.fail +} + +func (it *CapabilityRegistryDONRemovedIterator) Close() error { + it.sub.Unsubscribe() + return nil +} + +type CapabilityRegistryDONRemoved struct { + DonId uint32 + Raw types.Log +} + +func (_CapabilityRegistry *CapabilityRegistryFilterer) FilterDONRemoved(opts *bind.FilterOpts) (*CapabilityRegistryDONRemovedIterator, error) { + + logs, sub, err := _CapabilityRegistry.contract.FilterLogs(opts, "DONRemoved") + if err != nil { + return nil, err + } + return &CapabilityRegistryDONRemovedIterator{contract: _CapabilityRegistry.contract, event: "DONRemoved", logs: logs, sub: sub}, nil +} + +func (_CapabilityRegistry *CapabilityRegistryFilterer) WatchDONRemoved(opts *bind.WatchOpts, sink chan<- *CapabilityRegistryDONRemoved) (event.Subscription, error) { + + logs, sub, err := _CapabilityRegistry.contract.WatchLogs(opts, "DONRemoved") + if err != nil { + return nil, err + } + return event.NewSubscription(func(quit <-chan struct{}) error { + defer sub.Unsubscribe() + for { + select { + case log := <-logs: + + event := new(CapabilityRegistryDONRemoved) + if err := _CapabilityRegistry.contract.UnpackLog(event, "DONRemoved", log); err != nil { + return err + } + event.Raw = log + + select { + case sink <- event: + case err := <-sub.Err(): + return err + case <-quit: + return nil + } + case err := <-sub.Err(): + return err + case <-quit: + return nil + } + } + }), nil +} + +func (_CapabilityRegistry *CapabilityRegistryFilterer) ParseDONRemoved(log types.Log) (*CapabilityRegistryDONRemoved, error) { + event := new(CapabilityRegistryDONRemoved) + if err := _CapabilityRegistry.contract.UnpackLog(event, "DONRemoved", log); err != nil { + return nil, err + } + event.Raw = log + return event, nil +} + type CapabilityRegistryNodeAddedIterator struct { Event *CapabilityRegistryNodeAdded @@ -1933,6 +2062,8 @@ func (_CapabilityRegistry *CapabilityRegistry) ParseLog(log types.Log) (generate return _CapabilityRegistry.ParseCapabilityDeprecated(log) case _CapabilityRegistry.abi.Events["DONAdded"].ID: return _CapabilityRegistry.ParseDONAdded(log) + case _CapabilityRegistry.abi.Events["DONRemoved"].ID: + return _CapabilityRegistry.ParseDONRemoved(log) case _CapabilityRegistry.abi.Events["NodeAdded"].ID: return _CapabilityRegistry.ParseNodeAdded(log) case _CapabilityRegistry.abi.Events["NodeOperatorAdded"].ID: @@ -1967,6 +2098,10 @@ func (CapabilityRegistryDONAdded) Topic() common.Hash { return common.HexToHash("0xab55f4c8fb4335a586285ae209d1f1e17a7ccb22e1131963624434d98c8546a5") } +func (CapabilityRegistryDONRemoved) Topic() common.Hash { + return common.HexToHash("0x7c551c5f33df1b67ff1dee6d812a4a2ea076c2a5bea7d3da390a75619df1553e") +} + func (CapabilityRegistryNodeAdded) Topic() common.Hash { return common.HexToHash("0xc9296aa9b0951d8000e8ed7f2b5be30c5106de8df3dbedf9a57c93f5f9e4d7da") } @@ -2036,6 +2171,8 @@ type CapabilityRegistryInterface interface { DeprecateCapability(opts *bind.TransactOpts, hashedCapabilityId [32]byte) (*types.Transaction, error) + RemoveDONs(opts *bind.TransactOpts, donIds []uint32) (*types.Transaction, error) + RemoveNodeOperators(opts *bind.TransactOpts, nodeOperatorIds []*big.Int) (*types.Transaction, error) RemoveNodes(opts *bind.TransactOpts, removedNodeP2PIds [][32]byte) (*types.Transaction, error) @@ -2064,6 +2201,12 @@ type CapabilityRegistryInterface interface { ParseDONAdded(log types.Log) (*CapabilityRegistryDONAdded, error) + FilterDONRemoved(opts *bind.FilterOpts) (*CapabilityRegistryDONRemovedIterator, error) + + WatchDONRemoved(opts *bind.WatchOpts, sink chan<- *CapabilityRegistryDONRemoved) (event.Subscription, error) + + ParseDONRemoved(log types.Log) (*CapabilityRegistryDONRemoved, error) + FilterNodeAdded(opts *bind.FilterOpts) (*CapabilityRegistryNodeAddedIterator, error) WatchNodeAdded(opts *bind.WatchOpts, sink chan<- *CapabilityRegistryNodeAdded) (event.Subscription, error) diff --git a/core/gethwrappers/keystone/generation/generated-wrapper-dependency-versions-do-not-edit.txt b/core/gethwrappers/keystone/generation/generated-wrapper-dependency-versions-do-not-edit.txt index 0b8042cb0fa..42a476c06f9 100644 --- a/core/gethwrappers/keystone/generation/generated-wrapper-dependency-versions-do-not-edit.txt +++ b/core/gethwrappers/keystone/generation/generated-wrapper-dependency-versions-do-not-edit.txt @@ -1,4 +1,4 @@ GETH_VERSION: 1.13.8 forwarder: ../../../contracts/solc/v0.8.19/KeystoneForwarder/KeystoneForwarder.abi ../../../contracts/solc/v0.8.19/KeystoneForwarder/KeystoneForwarder.bin b4c900aae9e022f01abbac7993d41f93912247613ac6270b0c4da4ef6f2016e3 -keystone_capability_registry: ../../../contracts/solc/v0.8.19/CapabilityRegistry/CapabilityRegistry.abi ../../../contracts/solc/v0.8.19/CapabilityRegistry/CapabilityRegistry.bin faff0ad5ac45baf899319b7996c8eff674238dbb5957c1d267e890046713cee4 +keystone_capability_registry: ../../../contracts/solc/v0.8.19/CapabilityRegistry/CapabilityRegistry.abi ../../../contracts/solc/v0.8.19/CapabilityRegistry/CapabilityRegistry.bin 7ba965f4538c0be63c94335c602916e423e2437680e47281db28a8e521a8db68 ocr3_capability: ../../../contracts/solc/v0.8.19/OCR3Capability/OCR3Capability.abi ../../../contracts/solc/v0.8.19/OCR3Capability/OCR3Capability.bin 9dcbdf55bd5729ba266148da3f17733eb592c871c2108ccca546618628fd9ad2