12 txs
13 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)
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)
nominateOwner
nonpayablefunction nominateOwner(address nominee_)
receiveAndDeliverMsg
nonpayablefunction receiveAndDeliverMsg(uint32 switchboardId, uint32 siblingChainId, bytes payload)
removeSwitchboardPlug
nonpayablefunction removeSwitchboardPlug(uint32 switchboardId)
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)
errors
IncorrectSwitchboard
error IncorrectSwitchboard()
InvalidMsg
error InvalidMsg()
NotBungeeGateway
error NotBungeeGateway()
NotSiblingBungeeGateway
error NotSiblingBungeeGateway()
NotSwitchboardPlug
error NotSwitchboardPlug()
OnlyNominee
error OnlyNominee()
OnlyOwner
error OnlyOwner()
SwitchboardPlugZero
error SwitchboardPlugZero()
creation bytecode
0x60806040526002805463ffffffff60a01b1916600160a01b17905534801561002657600080fd5b50604051610f53380380610f53833981016040819052610045916100e5565b8161004f81610076565b50600280546001600160a01b0319166001600160a01b039290921691909117905550610118565b600080546001600160a01b0383166001600160a01b0319918216811783556001805490921690915560405190917ffbe19c9b601f5ee90b44c7390f3fa2319eba01762d34ee372aeafd59b25c7f8791a250565b80516001600160a01b03811681146100e057600080fd5b919050565b600080604083850312156100f857600080fd5b610101836100c9565b915061010f602084016100c9565b90509250929050565b610e2c806101276000396000f3fe6080604052600436106100e85760003560e01c806370372d851161008a578063a317055e11610059578063a317055e14610265578063b25499a214610285578063b8898c08146102bb578063bc455d2c146102f157600080fd5b806370372d85146101e7578063757fb06c146102075780638da5cb5b146102275780639a78cbc51461024557600080fd5b806340788883116100c657806340788883146101745780635813c9c5146101945780635b94db27146101a757806367872a5d146101c757600080fd5b806320f99c0a146100ed5780633123053d146101245780633bd1adec1461015d575b600080fd5b3480156100f957600080fd5b506001546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b34801561013057600080fd5b5060025461014890600160a01b900463ffffffff1681565b60405163ffffffff909116815260200161011b565b34801561016957600080fd5b50610172610311565b005b34801561018057600080fd5b5061017261018f366004610a3d565b610347565b6101726101a2366004610aa2565b610493565b3480156101b357600080fd5b506101726101c2366004610b49565b610538565b3480156101d357600080fd5b506101726101e2366004610b6b565b6105ad565b3480156101f357600080fd5b50600254610107906001600160a01b031681565b34801561021357600080fd5b50610172610222366004610ba2565b61060c565b34801561023357600080fd5b506000546001600160a01b0316610107565b34801561025157600080fd5b50610172610260366004610b49565b6106b6565b34801561027157600080fd5b50610172610280366004610be9565b610703565b34801561029157600080fd5b506101076102a0366004610be9565b6004602052600090815260409020546001600160a01b031681565b3480156102c757600080fd5b506101076102d6366004610be9565b6003602052600090815260409020546001600160a01b031681565b3480156102fd57600080fd5b5061017261030c366004610b49565b610752565b6001546001600160a01b0316331461033c57604051637c91ccdd60e01b815260040160405180910390fd5b610345336108a1565b565b610350846108f4565b600061035c8284610c06565b60f81c905060006103708360018187610c36565b61037991610c60565b60601c9050600061038d8460158188610c36565b61039691610c60565b60025460609190911c91506001600160a01b0383811691161415806103dc575063ffffffff86166000908152600460205260409020546001600160a01b03828116911614155b156103fa57604051631bd147a760e01b815260040160405180910390fd5b6001600160a01b03821663c66eaeb6848980610419896029818d610c36565b60405160200161042b93929190610c93565b6040516020818303038152906040526040518463ffffffff1660e01b815260040161045893929190610d01565b600060405180830381600087803b15801561047257600080fd5b505af1158015610486573d6000803e3d6000fd5b5050505050505050505050565b6000806104a08888610935565b91509150816001600160a01b0316630293f697348a888a86338b8b6040516020016104cf959493929190610d32565b6040516020818303038152906040526040518563ffffffff1660e01b81526004016104fc93929190610d82565b6000604051808303818588803b15801561051557600080fd5b505af1158015610529573d6000803e3d6000fd5b50505050505050505050505050565b6000546001600160a01b0316331461056357604051635fc483c560e01b815260040160405180910390fd5b600180546001600160a01b0319166001600160a01b0383169081179091556040517f906a1c6bd7e3091ea86693dd029a831c19049ce77f1dce2ce0bab1cacbabce2290600090a250565b6000546001600160a01b031633146105d857604051635fc483c560e01b815260040160405180910390fd5b63ffffffff16600090815260046020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b0316331461063757604051635fc483c560e01b815260040160405180910390fd5b63ffffffff83811660009081526003602052604090819020549051638ec4a6e760e01b815291841660048301526001600160a01b0383811660248401521690638ec4a6e790604401600060405180830381600087803b15801561069957600080fd5b505af11580156106ad573d6000803e3d6000fd5b50505050505050565b6000546001600160a01b031633146106e157604051635fc483c560e01b815260040160405180910390fd5b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b0316331461072e57604051635fc483c560e01b815260040160405180910390fd5b63ffffffff16600090815260036020526040902080546001600160a01b0319169055565b6000546001600160a01b0316331461077d57604051635fc483c560e01b815260040160405180910390fd5b60028054600160a01b9081900463ffffffff908116600090815260036020908152604080832080546001600160a01b0319166001600160a01b0389811691909117909155955494909404909216815282902054825163441edf0160e11b8152925193169263883dbe029260048082019392918290030181865afa158015610808573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082c9190610da7565b600254600160a01b900463ffffffff90811691161461085e576040516339bf270760e01b815260040160405180910390fd5b6001600260148282829054906101000a900463ffffffff166108809190610dc4565b92506101000a81548163ffffffff021916908363ffffffff16021790555050565b600080546001600160a01b0383166001600160a01b0319918216811783556001805490921690915560405190917ffbe19c9b601f5ee90b44c7390f3fa2319eba01762d34ee372aeafd59b25c7f8791a250565b63ffffffff81166000908152600360205260409020546001600160a01b031633146109325760405163fb60bbf960e01b815260040160405180910390fd5b50565b60025460009081906001600160a01b03163314610965576040516308c277e160e31b815260040160405180910390fd5b5063ffffffff83166000908152600460205260409020546001600160a01b0316806109a357604051634271b76f60e01b815260040160405180910390fd5b63ffffffff83166000908152600360205260409020546001600160a01b03169150816109e2576040516381c5e9a160e01b815260040160405180910390fd5b9250929050565b63ffffffff8116811461093257600080fd5b60008083601f840112610a0d57600080fd5b50813567ffffffffffffffff811115610a2557600080fd5b6020830191508360208285010111156109e257600080fd5b60008060008060608587031215610a5357600080fd5b8435610a5e816109e9565b93506020850135610a6e816109e9565b9250604085013567ffffffffffffffff811115610a8a57600080fd5b610a96878288016109fb565b95989497509550505050565b60008060008060008060a08789031215610abb57600080fd5b8635610ac6816109e9565b95506020870135610ad6816109e9565b9450604087013560ff81168114610aec57600080fd5b935060608701359250608087013567ffffffffffffffff811115610b0f57600080fd5b610b1b89828a016109fb565b979a9699509497509295939492505050565b80356001600160a01b0381168114610b4457600080fd5b919050565b600060208284031215610b5b57600080fd5b610b6482610b2d565b9392505050565b60008060408385031215610b7e57600080fd5b610b8783610b2d565b91506020830135610b97816109e9565b809150509250929050565b600080600060608486031215610bb757600080fd5b8335610bc2816109e9565b92506020840135610bd2816109e9565b9150610be060408501610b2d565b90509250925092565b600060208284031215610bfb57600080fd5b8135610b64816109e9565b6001600160f81b03198135818116916001851015610c2e5780818660010360031b1b83161692505b505092915050565b60008085851115610c4657600080fd5b83861115610c5357600080fd5b5050820193919092039150565b6bffffffffffffffffffffffff198135818116916014851015610c2e5760149490940360031b84901b1690921692915050565b60e084901b6001600160e01b0319168152818360048301376000910160040190815292915050565b6000815180845260005b81811015610ce157602081850181015186830182015201610cc5565b506000602082860101526020601f19601f83011685010191505092915050565b60ff8416815263ffffffff83166020820152606060408201526000610d296060830184610cbb565b95945050505050565b6001600160f81b031960f887901b1681526bffffffffffffffffffffffff19606086811b8216600184015285901b1660158201526000828460298401375060009101602901908152949350505050565b63ffffffff84168152826020820152606060408201526000610d296060830184610cbb565b600060208284031215610db957600080fd5b8151610b64816109e9565b63ffffffff818116838216019080821115610def57634e487b7160e01b600052601160045260246000fd5b509291505056fea2646970667358221220dfe96e60dbdfde3e3617e4968fc1cf289ab3cce288fc762e311d5b7acdd4f70d64736f6c63430008130033000000000000000000000000a5acba07788f16b4790fcbb09ca3b7fc8dd053a20000000000000000000000000000000000000000000000000000000000000000