Contract Overview
Balance:
0 AVAX

AVAX Value:
$0.00(@ $27.67/AVAX)

Token:
More Info
Tag:
Not Available. Update?

Contract Creators:
Contract Source Code Verified (Partial Match)
Contract Name:
DexSpanAdapter

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 1000000 runs

Created At:
Sat, 27 Apr 2024 14:28:37 GMT
Ownable.sol
@openzeppelin
contracts
access
Ownable.sol


Contract ABI
[
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "__native",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "__wnative",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "__dexspan",
        "type": "address"
      }
    ],
    "stateMutability": "nonpayable",
    "type": "constructor"
  },
  {
    "inputs": [],
    "name": "NonContractCall",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "NonContractCall",
    "type": "error"
  },
  {
    "inputs": [],
    "name": "ReentrantCall",
    "type": "error"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "string",
        "name": "adapterName",
        "type": "string"
      },
      {
        "indexed": false,
        "internalType": "bytes",
        "name": "data",
        "type": "bytes"
      }
    ],
    "name": "ExecutionEvent",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "address",
        "name": "token",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "address",
        "name": "recipient",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "OperationFailedRefundEvent",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "address",
        "name": "token",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "address",
        "name": "refundAddress",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount",
        "type": "uint256"
      }
    ],
    "name": "UnsupportedOperation",
    "type": "event"
  },
  {
    "inputs": [],
    "name": "adapterDataProvider",
    "outputs": [
      {
        "internalType": "contract AdapterDataProvider",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "dexSpanDataStore",
    "outputs": [
      {
        "internalType": "contract DexSpanDataStore",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes",
        "name": "data",
        "type": "bytes"
      }
    ],
    "name": "execute",
    "outputs": [
      {
        "internalType": "address[]",
        "name": "tokens",
        "type": "address[]"
      }
    ],
    "stateMutability": "payable",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "precedingContract",
        "type": "address"
      }
    ],
    "name": "isAuthorizedPrecedingContract",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "succeedingContract",
        "type": "address"
      }
    ],
    "name": "isAuthorizedSucceedingContract",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "asset",
        "type": "address"
      }
    ],
    "name": "isValidInboundAsset",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "address",
        "name": "asset",
        "type": "address"
      }
    ],
    "name": "isValidOutboundAsset",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "name",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "stateMutability": "pure",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "native",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [
      {
        "internalType": "bytes",
        "name": "data",
        "type": "bytes"
      }
    ],
    "name": "parseInputs",
    "outputs": [
      {
        "components": [
          {
            "internalType": "contract IERC20[]",
            "name": "tokens",
            "type": "address[]"
          },
          {
            "internalType": "uint256",
            "name": "widgetId",
            "type": "uint256"
          },
          {
            "internalType": "uint256",
            "name": "amount",
            "type": "uint256"
          },
          {
            "internalType": "uint256",
            "name": "minReturn",
            "type": "uint256"
          },
          {
            "internalType": "uint256[]",
            "name": "flags",
            "type": "uint256[]"
          },
          {
            "internalType": "bytes[]",
            "name": "dataTx",
            "type": "bytes[]"
          },
          {
            "internalType": "address",
            "name": "recipient",
            "type": "address"
          }
        ],
        "internalType": "struct IDexSpan.SameChainSwapParams",
        "name": "",
        "type": "tuple"
      }
    ],
    "stateMutability": "pure",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "self",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  },
  {
    "inputs": [],
    "name": "wnative",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "stateMutability": "view",
    "type": "function"
  }
]


Contract Creation Code
6101203462000166576001600160401b0390601f6200207c38819003918201601f1916830191848311848410176200016b578084926060946040528339810103126200016657620000508162000181565b916200006d6040620000656020850162000181565b930162000181565b91600093600185553060805260a05260c0528260e052604051916104d18084019284841090841117620001525791839160209362001bab84396001600160a01b0316815203019082f0908115620001465750610100908152604051611a14918262000197833960805182818161028d0152610676015260a05182818161030301528181610408015281816105290152818161133e015261142d015260c05182610598015260e0518281816106070152818161074001528181610b7801528181610c460152610d83015251818181610cd701526110d20152f35b604051903d90823e3d90fd5b634e487b7160e01b85526041600452602485fd5b600080fd5b634e487b7160e01b600052604160045260246000fd5b51906001600160a01b0382168203620001665756fe6080604052600436101561001257600080fd5b60003560e01c806306fdde03146100d757806309c5eabe146100d257806311b0b42d146100cd5780632cebdeb2146100c85780636af563e9146100c35780637104ddb2146100be5780637e954a71146100b95780639093410d146100b457806397555947146100af578063abe66719146100aa578063caadcaf9146100a55763e34305b1146100a057600080fd5b610cfb565b610c8c565b610bbe565b610af0565b6109da565b6106b8565b61062b565b6105bc565b61054d565b6104de565b6101fe565b610156565b60005b8381106100ef5750506000910152565b81810151838201526020016100df565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f60209361013b815180928187528780880191016100dc565b0116010190565b9060206101539281815201906100ff565b90565b346101a85760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a8576101a4610190610ded565b6040519182916020835260208301906100ff565b0390f35b600080fd5b6020908160408183019282815285518094520193019160005b8281106101d4575050505090565b835173ffffffffffffffffffffffffffffffffffffffff16855293810193928101926001016101c6565b60207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a85760043567ffffffffffffffff8082116101a857366023830112156101a85781600401359081116101a85736602482840101116101a857610275916102709160243692016108ab565b611852565b73ffffffffffffffffffffffffffffffffffffffff907f000000000000000000000000000000000000000000000000000000000000000030838216036103b8579061034f916101a4936103016102e86102ce8551610e55565b5173ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1690565b7f0000000000000000000000000000000000000000000000000000000000000000821691161461039f5761034a9061033c6102ce8451610e55565b90604084015191339061195d565b61108a565b7f747c4bdbdc67811d44a02055ff9315a921247b8ba675158870da5dd871caf32961039061038361037e610ded565b610f1d565b9260405191829182610142565b0390a2604051918291826101ad565b5061034a604082015134146103b2610e9a565b90610ed3565b5060408101917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8351146103f6575b506101a4915061034f9061108a565b6104066102e86102ce8451610e55565b7f000000000000000000000000000000000000000000000000000000000000000082169116146104ce576104406102e86102ce8351610e55565b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529190602090839060249082905afa80156104c9576101a49361034f93600092610499575b50525b906103e7565b6104bb91925060203d81116104c2575b6104b38183610821565b810190610e8b565b9038610490565b503d6104a9565b610de1565b61034f906101a492479052610493565b346101a85760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a857602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346101a85760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a857602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346101a85760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a857602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346101a85760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a857602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b73ffffffffffffffffffffffffffffffffffffffff8116036101a857565b346101a85760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a857602460206004356106f78161069a565b604051928380927f7e954a7100000000000000000000000000000000000000000000000000000000825273ffffffffffffffffffffffffffffffffffffffff80911660048301527f0000000000000000000000000000000000000000000000000000000000000000165afa80156104c9576101a491600091610787575b5060405190151581529081906020820190565b6107a8915060203d81116107ae575b6107a08183610821565b810190610dc9565b38610774565b503d610796565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60e0810190811067ffffffffffffffff82111761080057604052565b6107b5565b6040810190811067ffffffffffffffff82111761080057604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761080057604052565b6040519061086f826107e4565b565b67ffffffffffffffff811161080057601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b9291926108b782610871565b916108c56040519384610821565b8294818452818301116101a8578281602093846000960137010152565b90815180825260208080930193019160005b828110610902575050505090565b835173ffffffffffffffffffffffffffffffffffffffff16855293810193928101926001016108f4565b90815180825260208080930193019160005b82811061094c575050505090565b83518552938101939281019260010161093e565b908082519081815260208091019281808460051b8301019501936000915b84831061098e5750505050505090565b90919293949584806109ca837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe086600196030187528a516100ff565b980193019301919493929061097e565b346101a85760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a85760043567ffffffffffffffff81116101a857366023820112156101a857610270610a3d9136906024816004013591016108ab565b60405180916020825273ffffffffffffffffffffffffffffffffffffffff60c0610ae3610a77845160e060208801526101008701906108e2565b602085015160408701526040850151606087015260608501516080870152610acf6080860151917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe092838983030160a08a015261092c565b9060a0860151908783030184880152610960565b9201511660e08301520390f35b346101a85760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a85760246020600435610b2f8161069a565b604051928380927f9755594700000000000000000000000000000000000000000000000000000000825273ffffffffffffffffffffffffffffffffffffffff80911660048301527f0000000000000000000000000000000000000000000000000000000000000000165afa80156104c9576101a491600091610787575060405190151581529081906020820190565b346101a85760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a85760246020600435610bfd8161069a565b604051928380927fabe6671900000000000000000000000000000000000000000000000000000000825273ffffffffffffffffffffffffffffffffffffffff80911660048301527f0000000000000000000000000000000000000000000000000000000000000000165afa80156104c9576101a491600091610787575060405190151581529081906020820190565b346101a85760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a857602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346101a85760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101a85760246020600435610d3a8161069a565b604051928380927fe34305b100000000000000000000000000000000000000000000000000000000825273ffffffffffffffffffffffffffffffffffffffff80911660048301527f0000000000000000000000000000000000000000000000000000000000000000165afa80156104c9576101a491600091610787575060405190151581529081906020820190565b908160209103126101a8575180151581036101a85790565b6040513d6000823e3d90fd5b60405190610dfa82610805565b600e82527f4465785370616e416461707465720000000000000000000000000000000000006020830152565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b805115610e625760200190565b610e26565b805160011015610e625760400190565b8051821015610e625760209160051b010190565b908160209103126101a8575190565b60405190610ea782610805565b600182527f32000000000000000000000000000000000000000000000000000000000000006020830152565b15610edb5750565b610f19906040519182917f08c379a00000000000000000000000000000000000000000000000000000000083526020600484015260248301906100ff565b0390fd5b610f35906020604051928284809451938492016100dc565b810103902090565b519061086f8261069a565b908160209103126101a857516101538161069a565b93610fbb92610fad9173ffffffffffffffffffffffffffffffffffffffff95610f9560e099959c9b9a9c610100808b528a01906108e2565b9260208901526040880152868203606088015261092c565b908482036080860152610960565b95600160a08401521660c08201520152565b67ffffffffffffffff81116108005760051b60200190565b604051906060820182811067ffffffffffffffff8211176108005760405260028252604082602036910137565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820191821161103f57565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b9291906110856020916040865260408601906108e2565b930152565b906040517f6cec044b00000000000000000000000000000000000000000000000000000000815260209073ffffffffffffffffffffffffffffffffffffffff918082600481867f0000000000000000000000000000000000000000000000000000000000000000165afa9182156104c957600092611279575b50806111156102e86102ce8851610e55565b936111276040880195858751916112d8565b508651938551600060608a01519360808b0151976111a060a08d01518d8961116660c083015173ffffffffffffffffffffffffffffffffffffffff1690565b910151916040519c8d9a8b998a977f183d9c9500000000000000000000000000000000000000000000000000000000895260048901610f5d565b0393165af19182156104c9576101539261125c575b506112306111c1610fe5565b956111f96111d56102e86102ce8451610e55565b6111de89610e55565b9073ffffffffffffffffffffffffffffffffffffffff169052565b6112206112176102e86102ce84516112118151611012565b90610e77565b6111de89610e67565b519351604051948593840161106e565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101835282610821565b61127290823d84116104c2576104b38183610821565b50386111b5565b8161129a9293503d84116112a1575b6112928183610821565b810190610f48565b9038611103565b503d611288565b3d156112d3573d906112b982610871565b916112c76040519384610821565b82523d6000602084013e565b606090565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8314611400575b829073ffffffffffffffffffffffffffffffffffffffff9283821680151590816113f5575b50806113ec575b611339575b5050505090565b8316927f00000000000000000000000000000000000000000000000000000000000000001683146113765761136d926114bd565b38818180611332565b6000809350809281925af16113896112a8565b5061136d5760646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f6e61746976652073656e64206661696c000000000000000000000000000000006044820152fd5b5082151561132d565b905030141538611326565b915061140c3082611412565b91611301565b73ffffffffffffffffffffffffffffffffffffffff908116907f00000000000000000000000000000000000000000000000000000000000000008116820361145a5750503190565b60246020929360405194859384927f70a082310000000000000000000000000000000000000000000000000000000084521660048301525afa9081156104c9576000916114a5575090565b610153915060203d81116104c2576104b38183610821565b9091604051907fa9059cbb00000000000000000000000000000000000000000000000000000000602083015273ffffffffffffffffffffffffffffffffffffffff8094166024830152604482015260448152608081019281841067ffffffffffffffff8511176108005761153d93604052611536611562565b9216611600565b805180611548575050565b8160208061155d9361086f9501019101610dc9565b61159b565b6040519061156f82610805565b602082527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65646020830152565b156115a257565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f5361666545524332303a206f7065726174696f6e206661696c656400000000006044820152fd5b803f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081141590816116c6575b501561169c5781600092918360208194519301915af19061164c6112a8565b9115611656575090565b8151156116665750805190602001fd5b610f19906040519182917f08c379a000000000000000000000000000000000000000000000000000000000835260048301610142565b60046040517f304619b5000000000000000000000000000000000000000000000000000000008152fd5b905015153861162d565b81601f820112156101a8578051916116e783610fcd565b926116f56040519485610821565b808452602092838086019260051b8201019283116101a8578301905b82821061171f575050505090565b838091835161172d8161069a565b815201910190611711565b81601f820112156101a85780519161174f83610fcd565b9261175d6040519485610821565b808452602092838086019260051b8201019283116101a8578301905b828210611787575050505090565b81518152908301908301611779565b9080601f830112156101a8578151916117ae83610fcd565b926040906117be82519586610821565b808552602093848087019260051b850101938185116101a857858101925b8584106117ed575050505050505090565b835167ffffffffffffffff81116101a85782019083603f830112156101a857878201519061181a82610871565b61182688519182610821565b828152858884860101116101a8576118478a949385948a86850191016100dc565b8152019301926117dc565b6040519061185f826107e4565b6060918281526000908160c0602092828482015282604082015282878201528660808201528660a082015201528251830192818401928282860312611952578282015167ffffffffffffffff92838211611959579060e0910180960312611952576118c8610862565b95838601518381116119595785856118e2928901016116d0565b875260408601518488015280860151604088015260808601519087015260a085015182811161195557848461191992880101611738565b608087015260c0850151918211611952575060e092849261193f9261194a960101611796565b60a085015201610f3d565b60c082015290565b80fd5b5080fd5b8280fd5b9192604051917f23b872dd00000000000000000000000000000000000000000000000000000000602084015273ffffffffffffffffffffffffffffffffffffffff9485809216602485015216604483015260648201526064815260a081019281841067ffffffffffffffff8511176108005761153d9360405261153661156256fea2646970667358221220b04b4e6e94e3a70d2fccbc8f0b920883625dd77b1578753d9e411f73ff91b27364736f6c634300081200336080346100a757601f6104d138819003918201601f19168301916001600160401b038311848410176100ac578084926020946040528339810103126100a757516001600160a01b0390818116908190036100a75760005460018060a01b0319903382821617600055604051933391167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3600154161760015561040e90816100c38239f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe608080604052600436101561001357600080fd5b600090813560e01c9081636cec044b1461030957508063715018a61461026d5780638da5cb5b1461021c578063cb6cc107146101935763f2fde38b1461005857600080fd5b346101905760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101905760043573ffffffffffffffffffffffffffffffffffffffff80821680920361018c576100b1610359565b8115610108578254827fffffffffffffffffffffffff00000000000000000000000000000000000000008216178455167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08380a380f35b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152fd5b8280fd5b80fd5b50346101905760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101905760043573ffffffffffffffffffffffffffffffffffffffff8116809103610218576101ec610359565b7fffffffffffffffffffffffff0000000000000000000000000000000000000000600154161760015580f35b5080fd5b503461019057807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101905773ffffffffffffffffffffffffffffffffffffffff6020915416604051908152f35b503461019057807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610190576102a4610359565b8073ffffffffffffffffffffffffffffffffffffffff81547fffffffffffffffffffffffff000000000000000000000000000000000000000081168355167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a380f35b90503461021857817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102185760209073ffffffffffffffffffffffffffffffffffffffff600154168152f35b73ffffffffffffffffffffffffffffffffffffffff60005416330361037a57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fdfea2646970667358221220551f0e7354745c02e776ce163164a0adf65fd7b6784df92b62cf3993935ec6a364736f6c63430008120033000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee000000000000000000000000b31f66aa3c1e785363f0875a1b74e27b85fd66c70000000000000000000000004406ebeb7028fc0fc06bb7706a736ac6ada8d2bf