0 txs
0 calls
constructor
constructor(address _owner, address _bungeeGateway)
functions
BUNGEE_GATEWAY
viewfunction BUNGEE_GATEWAY() view returns (address)
bungeeGateways
viewfunction bungeeGateways(uint32 chainId) view returns (address bungeeGateway)
hasRole
viewfunction hasRole(bytes32 role_, address address_) view returns (bool)
nominee
viewfunction nominee() view returns (address)
owner
viewfunction owner() view returns (address)
switchboardIdCount
viewfunction switchboardIdCount() view returns (uint32)
switchboardPlugs
viewfunction switchboardPlugs(uint32 switchboardId) view returns (address switchboardPlug)
addBungeeGateway
nonpayablefunction addBungeeGateway(address _bungeeGateway, uint32 _chainId)
addSwitchboardPlug
nonpayablefunction addSwitchboardPlug(address switchboardPlug)
claimOwner
nonpayablefunction claimOwner()
connectSwitchboardPlug
nonpayablefunction connectSwitchboardPlug(uint32 switchboardId, uint32 siblingChainSlug, address siblingPlug)
grantRole
nonpayablefunction grantRole(bytes32 role_, address grantee_)
nominateOwner
nonpayablefunction nominateOwner(address nominee_)
receiveAndDeliverMsg
nonpayablefunction receiveAndDeliverMsg(uint32 switchboardId, uint32 siblingChainId, bytes payload)
removeSwitchboardPlug
nonpayablefunction removeSwitchboardPlug(uint32 switchboardId)
revokeRole
nonpayablefunction revokeRole(bytes32 role_, address revokee_)
sendOutboundMsg
payablefunction sendOutboundMsg(uint32 chainSlug, uint32 switchboardId, uint8 msgId, uint256 destGasLimit, bytes payload) payable
setBungeeGateway
nonpayablefunction setBungeeGateway(address _bungeeGateway)
events
OwnerClaimed
event OwnerClaimed(address indexed claimer)
OwnerNominated
event OwnerNominated(address indexed nominee)
RoleGranted
event RoleGranted(bytes32 indexed role, address indexed grantee)
RoleRevoked
event RoleRevoked(bytes32 indexed role, address indexed revokee)
errors
CallerNotBungeeGateway
error CallerNotBungeeGateway()
IncorrectSwitchboard
error IncorrectSwitchboard()
InvalidMsg
error InvalidMsg()
NoPermit
error NoPermit(bytes32 role)
NotSiblingBungeeGateway
error NotSiblingBungeeGateway()
NotSwitchboardPlug
error NotSwitchboardPlug()
OnlyNominee
error OnlyNominee()
OnlyOwner
error OnlyOwner()
SwitchboardPlugZero
error SwitchboardPlugZero()
creation bytecode
0x60806040526003805463ffffffff60a01b1916600160a01b1790553480156200002757600080fd5b506040516200138b3803806200138b8339810160408190526200004a91620001a4565b81806200005781620000d9565b506200008690507f82db594318110a04b6349ce48645aa69f0892751bc893d15e61d9e2b9c4630f5836200012c565b620000b27f6955dcfccb267c210753a24170c32eb247318344170168007811a84c16c37a60836200012c565b600380546001600160a01b0319166001600160a01b039290921691909117905550620001dc565b600080546001600160a01b0383166001600160a01b0319918216811783556001805490921690915560405190917ffbe19c9b601f5ee90b44c7390f3fa2319eba01762d34ee372aeafd59b25c7f8791a250565b60008281526002602090815260408083206001600160a01b0385168085529252808320805460ff1916600117905551909184917f2ae6a113c0ed5b78a53413ffbb7679881f11145ccfba4fb92e863dfcd5a1d2f39190a35050565b80516001600160a01b03811681146200019f57600080fd5b919050565b60008060408385031215620001b857600080fd5b620001c38362000187565b9150620001d36020840162000187565b90509250929050565b61119f80620001ec6000396000f3fe6080604052600436106101095760003560e01c8063757fb06c11610095578063a317055e11610064578063a317055e146102d6578063b25499a2146102f6578063b8898c081461032c578063bc455d2c14610362578063d547741f1461038257600080fd5b8063757fb06c146102485780638da5cb5b1461026857806391d14854146102865780639a78cbc5146102b657600080fd5b806340788883116100dc57806340788883146101b55780635813c9c5146101d55780635b94db27146101e857806367872a5d1461020857806370372d851461022857600080fd5b806320f99c0a1461010e5780632f2ff15d146101455780633123053d146101675780633bd1adec146101a0575b600080fd5b34801561011a57600080fd5b506001546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b34801561015157600080fd5b50610165610160366004610d50565b6103a2565b005b34801561017357600080fd5b5060035461018b90600160a01b900463ffffffff1681565b60405163ffffffff909116815260200161013c565b3480156101ac57600080fd5b506101656103db565b3480156101c157600080fd5b506101656101d0366004610dd3565b610411565b6101656101e3366004610e38565b610592565b3480156101f457600080fd5b50610165610203366004610ec3565b610637565b34801561021457600080fd5b50610165610223366004610ede565b6106ac565b34801561023457600080fd5b50600354610128906001600160a01b031681565b34801561025457600080fd5b50610165610263366004610f15565b61075a565b34801561027457600080fd5b506000546001600160a01b0316610128565b34801561029257600080fd5b506102a66102a1366004610d50565b61084f565b604051901515815260200161013c565b3480156102c257600080fd5b506101656102d1366004610ec3565b61087d565b3480156102e257600080fd5b506101656102f1366004610f5c565b610914565b34801561030257600080fd5b50610128610311366004610f5c565b6005602052600090815260409020546001600160a01b031681565b34801561033857600080fd5b50610128610347366004610f5c565b6004602052600090815260409020546001600160a01b031681565b34801561036e57600080fd5b5061016561037d366004610ec3565b6109ad565b34801561038e57600080fd5b5061016561039d366004610d50565b610b45565b6000546001600160a01b031633146103cd57604051635fc483c560e01b815260040160405180910390fd5b6103d78282610b7a565b5050565b6001546001600160a01b0316331461040657604051637c91ccdd60e01b815260040160405180910390fd5b61040f33610bd5565b565b63ffffffff84166000908152600460205260409020546001600160a01b0316331461044f5760405163fb60bbf960e01b815260040160405180910390fd5b600061045b8284610f79565b60f81c9050600061046f8360018187610fa9565b61047891610fd3565b60601c9050600061048c8460158188610fa9565b61049591610fd3565b60035460609190911c91506001600160a01b0383811691161415806104db575063ffffffff86166000908152600560205260409020546001600160a01b03828116911614155b156104f957604051631bd147a760e01b815260040160405180910390fd5b6001600160a01b03821663c66eaeb6848980610518896029818d610fa9565b60405160200161052a93929190611006565b6040516020818303038152906040526040518463ffffffff1660e01b815260040161055793929190611074565b600060405180830381600087803b15801561057157600080fd5b505af1158015610585573d6000803e3d6000fd5b5050505050505050505050565b60008061059f8888610c28565b91509150816001600160a01b0316630293f697348a888a86338b8b6040516020016105ce9594939291906110a5565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016105fb939291906110f5565b6000604051808303818588803b15801561061457600080fd5b505af1158015610628573d6000803e3d6000fd5b50505050505050505050505050565b6000546001600160a01b0316331461066257604051635fc483c560e01b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0383169081179091556040517f906a1c6bd7e3091ea86693dd029a831c19049ce77f1dce2ce0bab1cacbabce2290600090a250565b3360009081527f01e90903605908818f4785c46825db30465c70bc0545136a320d85d90661836160205260409020547f82db594318110a04b6349ce48645aa69f0892751bc893d15e61d9e2b9c4630f59060ff166107255760405163962f633360e01b8152600481018290526024015b60405180910390fd5b5063ffffffff16600090815260056020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b3360009081527f92525f56396379a60aa6906b073be7d5401202f84f3e9ead4475959f623ac01160205260409020547f6955dcfccb267c210753a24170c32eb247318344170168007811a84c16c37a609060ff166107ce5760405163962f633360e01b81526004810182905260240161071c565b63ffffffff848116600090815260046020819052604091829020549151638ec4a6e760e01b8152928616908301526001600160a01b0384811660248401521690638ec4a6e790604401600060405180830381600087803b15801561083157600080fd5b505af1158015610845573d6000803e3d6000fd5b5050505050505050565b60008281526002602090815260408083206001600160a01b038516845290915281205460ff165b9392505050565b3360009081527f01e90903605908818f4785c46825db30465c70bc0545136a320d85d90661836160205260409020547f82db594318110a04b6349ce48645aa69f0892751bc893d15e61d9e2b9c4630f59060ff166108f15760405163962f633360e01b81526004810182905260240161071c565b50600380546001600160a01b0319166001600160a01b0392909216919091179055565b3360009081527f92525f56396379a60aa6906b073be7d5401202f84f3e9ead4475959f623ac01160205260409020547f6955dcfccb267c210753a24170c32eb247318344170168007811a84c16c37a609060ff166109885760405163962f633360e01b81526004810182905260240161071c565b5063ffffffff16600090815260046020526040902080546001600160a01b0319169055565b3360009081527f92525f56396379a60aa6906b073be7d5401202f84f3e9ead4475959f623ac01160205260409020547f6955dcfccb267c210753a24170c32eb247318344170168007811a84c16c37a609060ff16610a215760405163962f633360e01b81526004810182905260240161071c565b60038054600160a01b9081900463ffffffff908116600090815260046020818152604080842080546001600160a01b0319166001600160a01b038b81169190911790915596549590950490931682529083902054835163441edf0160e11b8152935194169363883dbe02938083019392908290030181865afa158015610aab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610acf919061111a565b600354600160a01b900463ffffffff908116911614610b01576040516339bf270760e01b815260040160405180910390fd5b6001600360148282829054906101000a900463ffffffff16610b239190611137565b92506101000a81548163ffffffff021916908363ffffffff1602179055505050565b6000546001600160a01b03163314610b7057604051635fc483c560e01b815260040160405180910390fd5b6103d78282610cdc565b60008281526002602090815260408083206001600160a01b0385168085529252808320805460ff1916600117905551909184917f2ae6a113c0ed5b78a53413ffbb7679881f11145ccfba4fb92e863dfcd5a1d2f39190a35050565b600080546001600160a01b0383166001600160a01b0319918216811783556001805490921690915560405190917ffbe19c9b601f5ee90b44c7390f3fa2319eba01762d34ee372aeafd59b25c7f8791a250565b60035460009081906001600160a01b03163314610c5857604051634556123760e01b815260040160405180910390fd5b5063ffffffff83166000908152600560205260409020546001600160a01b031680610c9657604051634271b76f60e01b815260040160405180910390fd5b63ffffffff83166000908152600460205260409020546001600160a01b0316915081610cd5576040516381c5e9a160e01b815260040160405180910390fd5b9250929050565b60008281526002602090815260408083206001600160a01b0385168085529252808320805460ff1916905551909184917f155aaafb6329a2098580462df33ec4b7441b19729b9601c5fc17ae1cf99a8a529190a35050565b80356001600160a01b0381168114610d4b57600080fd5b919050565b60008060408385031215610d6357600080fd5b82359150610d7360208401610d34565b90509250929050565b63ffffffff81168114610d8e57600080fd5b50565b60008083601f840112610da357600080fd5b50813567ffffffffffffffff811115610dbb57600080fd5b602083019150836020828501011115610cd557600080fd5b60008060008060608587031215610de957600080fd5b8435610df481610d7c565b93506020850135610e0481610d7c565b9250604085013567ffffffffffffffff811115610e2057600080fd5b610e2c87828801610d91565b95989497509550505050565b60008060008060008060a08789031215610e5157600080fd5b8635610e5c81610d7c565b95506020870135610e6c81610d7c565b9450604087013560ff81168114610e8257600080fd5b935060608701359250608087013567ffffffffffffffff811115610ea557600080fd5b610eb189828a01610d91565b979a9699509497509295939492505050565b600060208284031215610ed557600080fd5b61087682610d34565b60008060408385031215610ef157600080fd5b610efa83610d34565b91506020830135610f0a81610d7c565b809150509250929050565b600080600060608486031215610f2a57600080fd5b8335610f3581610d7c565b92506020840135610f4581610d7c565b9150610f5360408501610d34565b90509250925092565b600060208284031215610f6e57600080fd5b813561087681610d7c565b6001600160f81b03198135818116916001851015610fa15780818660010360031b1b83161692505b505092915050565b60008085851115610fb957600080fd5b83861115610fc657600080fd5b5050820193919092039150565b6bffffffffffffffffffffffff198135818116916014851015610fa15760149490940360031b84901b1690921692915050565b60e084901b6001600160e01b0319168152818360048301376000910160040190815292915050565b6000815180845260005b8181101561105457602081850181015186830182015201611038565b506000602082860101526020601f19601f83011685010191505092915050565b60ff8416815263ffffffff8316602082015260606040820152600061109c606083018461102e565b95945050505050565b6001600160f81b031960f887901b1681526bffffffffffffffffffffffff19606086811b8216600184015285901b1660158201526000828460298401375060009101602901908152949350505050565b63ffffffff8416815282602082015260606040820152600061109c606083018461102e565b60006020828403121561112c57600080fd5b815161087681610d7c565b63ffffffff81811683821601908082111561116257634e487b7160e01b600052601160045260246000fd5b509291505056fea2646970667358221220132569d79efd52fbf92132c5b9de6066d20ee376040693bbb14e873b4c44028d64736f6c63430008130033000000000000000000000000daee4d2156de6fe6f7d50ca047136d758f96a6f00000000000000000000000000000000000000000000000000000000000000000