@layerzerolabs/oapp-evm
Version:
LayerZero Labs reference EVM OmniChain Application (OApp) implementation
1 lines • 22.6 kB
JSON
{"abi":[{"type":"function","name":"getAppUlnConfig","inputs":[{"name":"_oapp","type":"address","internalType":"address"},{"name":"_remoteEid","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"","type":"tuple","internalType":"struct UlnConfig","components":[{"name":"confirmations","type":"uint64","internalType":"uint64"},{"name":"requiredDVNCount","type":"uint8","internalType":"uint8"},{"name":"optionalDVNCount","type":"uint8","internalType":"uint8"},{"name":"optionalDVNThreshold","type":"uint8","internalType":"uint8"},{"name":"requiredDVNs","type":"address[]","internalType":"address[]"},{"name":"optionalDVNs","type":"address[]","internalType":"address[]"}]}],"stateMutability":"view"},{"type":"function","name":"getUlnConfig","inputs":[{"name":"_oapp","type":"address","internalType":"address"},{"name":"_remoteEid","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"rtnConfig","type":"tuple","internalType":"struct UlnConfig","components":[{"name":"confirmations","type":"uint64","internalType":"uint64"},{"name":"requiredDVNCount","type":"uint8","internalType":"uint8"},{"name":"optionalDVNCount","type":"uint8","internalType":"uint8"},{"name":"optionalDVNThreshold","type":"uint8","internalType":"uint8"},{"name":"requiredDVNs","type":"address[]","internalType":"address[]"},{"name":"optionalDVNs","type":"address[]","internalType":"address[]"}]}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setDefaultUlnConfigs","inputs":[{"name":"_params","type":"tuple[]","internalType":"struct SetDefaultUlnConfigParam[]","components":[{"name":"eid","type":"uint32","internalType":"uint32"},{"name":"config","type":"tuple","internalType":"struct UlnConfig","components":[{"name":"confirmations","type":"uint64","internalType":"uint64"},{"name":"requiredDVNCount","type":"uint8","internalType":"uint8"},{"name":"optionalDVNCount","type":"uint8","internalType":"uint8"},{"name":"optionalDVNThreshold","type":"uint8","internalType":"uint8"},{"name":"requiredDVNs","type":"address[]","internalType":"address[]"},{"name":"optionalDVNs","type":"address[]","internalType":"address[]"}]}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"DefaultUlnConfigsSet","inputs":[{"name":"params","type":"tuple[]","indexed":false,"internalType":"struct SetDefaultUlnConfigParam[]","components":[{"name":"eid","type":"uint32","internalType":"uint32"},{"name":"config","type":"tuple","internalType":"struct UlnConfig","components":[{"name":"confirmations","type":"uint64","internalType":"uint64"},{"name":"requiredDVNCount","type":"uint8","internalType":"uint8"},{"name":"optionalDVNCount","type":"uint8","internalType":"uint8"},{"name":"optionalDVNThreshold","type":"uint8","internalType":"uint8"},{"name":"requiredDVNs","type":"address[]","internalType":"address[]"},{"name":"optionalDVNs","type":"address[]","internalType":"address[]"}]}]}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"UlnConfigSet","inputs":[{"name":"oapp","type":"address","indexed":false,"internalType":"address"},{"name":"eid","type":"uint32","indexed":false,"internalType":"uint32"},{"name":"config","type":"tuple","indexed":false,"internalType":"struct UlnConfig","components":[{"name":"confirmations","type":"uint64","internalType":"uint64"},{"name":"requiredDVNCount","type":"uint8","internalType":"uint8"},{"name":"optionalDVNCount","type":"uint8","internalType":"uint8"},{"name":"optionalDVNThreshold","type":"uint8","internalType":"uint8"},{"name":"requiredDVNs","type":"address[]","internalType":"address[]"},{"name":"optionalDVNs","type":"address[]","internalType":"address[]"}]}],"anonymous":false},{"type":"error","name":"LZ_ULN_AtLeastOneDVN","inputs":[]},{"type":"error","name":"LZ_ULN_InvalidConfirmations","inputs":[]},{"type":"error","name":"LZ_ULN_InvalidOptionalDVNCount","inputs":[]},{"type":"error","name":"LZ_ULN_InvalidOptionalDVNThreshold","inputs":[]},{"type":"error","name":"LZ_ULN_InvalidRequiredDVNCount","inputs":[]},{"type":"error","name":"LZ_ULN_Unsorted","inputs":[]},{"type":"error","name":"LZ_ULN_UnsupportedEid","inputs":[{"name":"eid","type":"uint32","internalType":"uint32"}]},{"type":"error","name":"OwnableInvalidOwner","inputs":[{"name":"owner","type":"address","internalType":"address"}]},{"type":"error","name":"OwnableUnauthorizedAccount","inputs":[{"name":"account","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"getAppUlnConfig(address,uint32)":"39e3f938","getUlnConfig(address,uint32)":"43ea4fa9","owner()":"8da5cb5b","renounceOwnership()":"715018a6","setDefaultUlnConfigs((uint32,(uint64,uint8,uint8,uint8,address[],address[]))[])":"29460b0b","transferOwnership(address)":"f2fde38b"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.22+commit.4fc1097e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"LZ_ULN_AtLeastOneDVN\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"LZ_ULN_InvalidConfirmations\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"LZ_ULN_InvalidOptionalDVNCount\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"LZ_ULN_InvalidOptionalDVNThreshold\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"LZ_ULN_InvalidRequiredDVNCount\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"LZ_ULN_Unsorted\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"eid\",\"type\":\"uint32\"}],\"name\":\"LZ_ULN_UnsupportedEid\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"OwnableInvalidOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"OwnableUnauthorizedAccount\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"eid\",\"type\":\"uint32\"},{\"components\":[{\"internalType\":\"uint64\",\"name\":\"confirmations\",\"type\":\"uint64\"},{\"internalType\":\"uint8\",\"name\":\"requiredDVNCount\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"optionalDVNCount\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"optionalDVNThreshold\",\"type\":\"uint8\"},{\"internalType\":\"address[]\",\"name\":\"requiredDVNs\",\"type\":\"address[]\"},{\"internalType\":\"address[]\",\"name\":\"optionalDVNs\",\"type\":\"address[]\"}],\"internalType\":\"struct UlnConfig\",\"name\":\"config\",\"type\":\"tuple\"}],\"indexed\":false,\"internalType\":\"struct SetDefaultUlnConfigParam[]\",\"name\":\"params\",\"type\":\"tuple[]\"}],\"name\":\"DefaultUlnConfigsSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"oapp\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint32\",\"name\":\"eid\",\"type\":\"uint32\"},{\"components\":[{\"internalType\":\"uint64\",\"name\":\"confirmations\",\"type\":\"uint64\"},{\"internalType\":\"uint8\",\"name\":\"requiredDVNCount\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"optionalDVNCount\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"optionalDVNThreshold\",\"type\":\"uint8\"},{\"internalType\":\"address[]\",\"name\":\"requiredDVNs\",\"type\":\"address[]\"},{\"internalType\":\"address[]\",\"name\":\"optionalDVNs\",\"type\":\"address[]\"}],\"indexed\":false,\"internalType\":\"struct UlnConfig\",\"name\":\"config\",\"type\":\"tuple\"}],\"name\":\"UlnConfigSet\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_oapp\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"_remoteEid\",\"type\":\"uint32\"}],\"name\":\"getAppUlnConfig\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"confirmations\",\"type\":\"uint64\"},{\"internalType\":\"uint8\",\"name\":\"requiredDVNCount\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"optionalDVNCount\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"optionalDVNThreshold\",\"type\":\"uint8\"},{\"internalType\":\"address[]\",\"name\":\"requiredDVNs\",\"type\":\"address[]\"},{\"internalType\":\"address[]\",\"name\":\"optionalDVNs\",\"type\":\"address[]\"}],\"internalType\":\"struct UlnConfig\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_oapp\",\"type\":\"address\"},{\"internalType\":\"uint32\",\"name\":\"_remoteEid\",\"type\":\"uint32\"}],\"name\":\"getUlnConfig\",\"outputs\":[{\"components\":[{\"internalType\":\"uint64\",\"name\":\"confirmations\",\"type\":\"uint64\"},{\"internalType\":\"uint8\",\"name\":\"requiredDVNCount\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"optionalDVNCount\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"optionalDVNThreshold\",\"type\":\"uint8\"},{\"internalType\":\"address[]\",\"name\":\"requiredDVNs\",\"type\":\"address[]\"},{\"internalType\":\"address[]\",\"name\":\"optionalDVNs\",\"type\":\"address[]\"}],\"internalType\":\"struct UlnConfig\",\"name\":\"rtnConfig\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"eid\",\"type\":\"uint32\"},{\"components\":[{\"internalType\":\"uint64\",\"name\":\"confirmations\",\"type\":\"uint64\"},{\"internalType\":\"uint8\",\"name\":\"requiredDVNCount\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"optionalDVNCount\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"optionalDVNThreshold\",\"type\":\"uint8\"},{\"internalType\":\"address[]\",\"name\":\"requiredDVNs\",\"type\":\"address[]\"},{\"internalType\":\"address[]\",\"name\":\"optionalDVNs\",\"type\":\"address[]\"}],\"internalType\":\"struct UlnConfig\",\"name\":\"config\",\"type\":\"tuple\"}],\"internalType\":\"struct SetDefaultUlnConfigParam[]\",\"name\":\"_params\",\"type\":\"tuple[]\"}],\"name\":\"setDefaultUlnConfigs\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"includes the utility functions for checking ULN states and logics\",\"errors\":{\"OwnableInvalidOwner(address)\":[{\"details\":\"The owner is not a valid owner account. (eg. `address(0)`)\"}],\"OwnableUnauthorizedAccount(address)\":[{\"details\":\"The caller account is not authorized to perform an operation.\"}]},\"kind\":\"dev\",\"methods\":{\"getAppUlnConfig(address,uint32)\":{\"details\":\"Get the uln config without the default config for the given remoteEid.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"setDefaultUlnConfigs((uint32,(uint64,uint8,uint8,uint8,address[],address[]))[])\":{\"details\":\"about the DEFAULT ULN config 1) its values are all LITERAL (e.g. 0 is 0). whereas in the oapp ULN config, 0 (default value) points to the default ULN config this design enables the oapp to point to DEFAULT config without explicitly setting the config 2) its configuration is more restrictive than the oapp ULN config that a) it must not use NIL value, where NIL is used only by oapps to indicate the LITERAL 0 b) it must have at least one DVN\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@layerzerolabs/lz-evm-messagelib-v2/contracts/uln/UlnBase.sol\":\"UlnBase\"},\"evmVersion\":\"shanghai\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@layerzerolabs/=node_modules/@layerzerolabs/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":ds-test/=node_modules/@layerzerolabs/toolbox-foundry/src/ds-test/src/\",\":forge-std/=node_modules/@layerzerolabs/toolbox-foundry/src/forge-std/src/\",\":solidity-bytes-utils/contracts/=node_modules/@layerzerolabs/toolbox-foundry/lib/solidity-bytes-utils/\"]},\"sources\":{\"node_modules/@layerzerolabs/lz-evm-messagelib-v2/contracts/uln/UlnBase.sol\":{\"keccak256\":\"0xfdb1d04f4996c0a9d35abfbfcf10d978da638885eb77d0a9dc35cea5993074e3\",\"license\":\"LZBL-1.2\",\"urls\":[\"bzz-raw://776d58d88d13b058f236cf18c32b4b9718a021513fc4e198287f4fe18ec5aba4\",\"dweb:/ipfs/QmdNX8jJu2aXJ8Dpbt2ohfhT8RKQLuvh58sW6SAXcUTcV9\"]},\"node_modules/@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0xff6d0bb2e285473e5311d9d3caacb525ae3538a80758c10649a4d61029b017bb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed324d3920bb545059d66ab97d43e43ee85fd3bd52e03e401f020afb0b120f6\",\"dweb:/ipfs/QmfEckWLmZkDDcoWrkEvMWhms66xwTLff9DDhegYpvHo1a\"]},\"node_modules/@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12\",\"dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.22+commit.4fc1097e"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"LZ_ULN_AtLeastOneDVN"},{"inputs":[],"type":"error","name":"LZ_ULN_InvalidConfirmations"},{"inputs":[],"type":"error","name":"LZ_ULN_InvalidOptionalDVNCount"},{"inputs":[],"type":"error","name":"LZ_ULN_InvalidOptionalDVNThreshold"},{"inputs":[],"type":"error","name":"LZ_ULN_InvalidRequiredDVNCount"},{"inputs":[],"type":"error","name":"LZ_ULN_Unsorted"},{"inputs":[{"internalType":"uint32","name":"eid","type":"uint32"}],"type":"error","name":"LZ_ULN_UnsupportedEid"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"type":"error","name":"OwnableInvalidOwner"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"type":"error","name":"OwnableUnauthorizedAccount"},{"inputs":[{"internalType":"struct SetDefaultUlnConfigParam[]","name":"params","type":"tuple[]","components":[{"internalType":"uint32","name":"eid","type":"uint32"},{"internalType":"struct UlnConfig","name":"config","type":"tuple","components":[{"internalType":"uint64","name":"confirmations","type":"uint64"},{"internalType":"uint8","name":"requiredDVNCount","type":"uint8"},{"internalType":"uint8","name":"optionalDVNCount","type":"uint8"},{"internalType":"uint8","name":"optionalDVNThreshold","type":"uint8"},{"internalType":"address[]","name":"requiredDVNs","type":"address[]"},{"internalType":"address[]","name":"optionalDVNs","type":"address[]"}]}],"indexed":false}],"type":"event","name":"DefaultUlnConfigsSet","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"oapp","type":"address","indexed":false},{"internalType":"uint32","name":"eid","type":"uint32","indexed":false},{"internalType":"struct UlnConfig","name":"config","type":"tuple","components":[{"internalType":"uint64","name":"confirmations","type":"uint64"},{"internalType":"uint8","name":"requiredDVNCount","type":"uint8"},{"internalType":"uint8","name":"optionalDVNCount","type":"uint8"},{"internalType":"uint8","name":"optionalDVNThreshold","type":"uint8"},{"internalType":"address[]","name":"requiredDVNs","type":"address[]"},{"internalType":"address[]","name":"optionalDVNs","type":"address[]"}],"indexed":false}],"type":"event","name":"UlnConfigSet","anonymous":false},{"inputs":[{"internalType":"address","name":"_oapp","type":"address"},{"internalType":"uint32","name":"_remoteEid","type":"uint32"}],"stateMutability":"view","type":"function","name":"getAppUlnConfig","outputs":[{"internalType":"struct UlnConfig","name":"","type":"tuple","components":[{"internalType":"uint64","name":"confirmations","type":"uint64"},{"internalType":"uint8","name":"requiredDVNCount","type":"uint8"},{"internalType":"uint8","name":"optionalDVNCount","type":"uint8"},{"internalType":"uint8","name":"optionalDVNThreshold","type":"uint8"},{"internalType":"address[]","name":"requiredDVNs","type":"address[]"},{"internalType":"address[]","name":"optionalDVNs","type":"address[]"}]}]},{"inputs":[{"internalType":"address","name":"_oapp","type":"address"},{"internalType":"uint32","name":"_remoteEid","type":"uint32"}],"stateMutability":"view","type":"function","name":"getUlnConfig","outputs":[{"internalType":"struct UlnConfig","name":"rtnConfig","type":"tuple","components":[{"internalType":"uint64","name":"confirmations","type":"uint64"},{"internalType":"uint8","name":"requiredDVNCount","type":"uint8"},{"internalType":"uint8","name":"optionalDVNCount","type":"uint8"},{"internalType":"uint8","name":"optionalDVNThreshold","type":"uint8"},{"internalType":"address[]","name":"requiredDVNs","type":"address[]"},{"internalType":"address[]","name":"optionalDVNs","type":"address[]"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"struct SetDefaultUlnConfigParam[]","name":"_params","type":"tuple[]","components":[{"internalType":"uint32","name":"eid","type":"uint32"},{"internalType":"struct UlnConfig","name":"config","type":"tuple","components":[{"internalType":"uint64","name":"confirmations","type":"uint64"},{"internalType":"uint8","name":"requiredDVNCount","type":"uint8"},{"internalType":"uint8","name":"optionalDVNCount","type":"uint8"},{"internalType":"uint8","name":"optionalDVNThreshold","type":"uint8"},{"internalType":"address[]","name":"requiredDVNs","type":"address[]"},{"internalType":"address[]","name":"optionalDVNs","type":"address[]"}]}]}],"stateMutability":"nonpayable","type":"function","name":"setDefaultUlnConfigs"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"}],"devdoc":{"kind":"dev","methods":{"getAppUlnConfig(address,uint32)":{"details":"Get the uln config without the default config for the given remoteEid."},"owner()":{"details":"Returns the address of the current owner."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"setDefaultUlnConfigs((uint32,(uint64,uint8,uint8,uint8,address[],address[]))[])":{"details":"about the DEFAULT ULN config 1) its values are all LITERAL (e.g. 0 is 0). whereas in the oapp ULN config, 0 (default value) points to the default ULN config this design enables the oapp to point to DEFAULT config without explicitly setting the config 2) its configuration is more restrictive than the oapp ULN config that a) it must not use NIL value, where NIL is used only by oapps to indicate the LITERAL 0 b) it must have at least one DVN"},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@layerzerolabs/=node_modules/@layerzerolabs/","@openzeppelin/=node_modules/@openzeppelin/","ds-test/=node_modules/@layerzerolabs/toolbox-foundry/src/ds-test/src/","forge-std/=node_modules/@layerzerolabs/toolbox-foundry/src/forge-std/src/","solidity-bytes-utils/contracts/=node_modules/@layerzerolabs/toolbox-foundry/lib/solidity-bytes-utils/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"node_modules/@layerzerolabs/lz-evm-messagelib-v2/contracts/uln/UlnBase.sol":"UlnBase"},"evmVersion":"shanghai","libraries":{}},"sources":{"node_modules/@layerzerolabs/lz-evm-messagelib-v2/contracts/uln/UlnBase.sol":{"keccak256":"0xfdb1d04f4996c0a9d35abfbfcf10d978da638885eb77d0a9dc35cea5993074e3","urls":["bzz-raw://776d58d88d13b058f236cf18c32b4b9718a021513fc4e198287f4fe18ec5aba4","dweb:/ipfs/QmdNX8jJu2aXJ8Dpbt2ohfhT8RKQLuvh58sW6SAXcUTcV9"],"license":"LZBL-1.2"},"node_modules/@openzeppelin/contracts/access/Ownable.sol":{"keccak256":"0xff6d0bb2e285473e5311d9d3caacb525ae3538a80758c10649a4d61029b017bb","urls":["bzz-raw://8ed324d3920bb545059d66ab97d43e43ee85fd3bd52e03e401f020afb0b120f6","dweb:/ipfs/QmfEckWLmZkDDcoWrkEvMWhms66xwTLff9DDhegYpvHo1a"],"license":"MIT"},"node_modules/@openzeppelin/contracts/utils/Context.sol":{"keccak256":"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2","urls":["bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12","dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF"],"license":"MIT"}},"version":1},"id":36}