Skip to main content
Version: 2.0

Cheat Sheet

πŸ“ƒ Chain Support​

Swap and Gasless v2 APIs are currently supported on the following chains. Select the chain in your request by providing the corresponding chainId request parameter. To request support for a new chain, please submit a request here.

ChainChain IDSwap APIGasless API
Ethereum (Mainnet)1βœ…βœ…
Arbitrum42161βœ…βœ…
Avalanche43114βœ…βœ…
Base8453βœ…βœ…
Berachain80094βœ…
Blast81457βœ…βœ…
BSC56βœ…βœ…
Linea59144βœ…
Mantle5000βœ…βœ…
Mode34443βœ…βœ…
Monad10143βœ…
Optimism10βœ…βœ…
Polygon137βœ…βœ…
Scroll534352βœ…βœ…
Unichain130βœ…
World Chain480βœ…

Swap API v2​

Sample Request and Response​

See full list of required query parameters and responses here.

Request​

curl --request GET \
--url "https://api.0x.org/swap/permit2/quote?sellAmount=100000000000000000000000&taker=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&chainId=1&sellToken=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&buyToken=0x6b175474e89094c44da98b954eedeac495271d0f" \
--header "0x-api-key: YOUR_API_KEY" \
--header "0x-version: v2"

Response​

Expand to see response
{
"blockNumber": "21876249",
"buyAmount": "145110588712348756365465945",
"buyToken": "0x6b175474e89094c44da98b954eedeac495271d0f",
"fees": {
"integratorFee": null,
"zeroExFee": {
"amount": "207515265570963324735062",
"token": "0x6b175474e89094c44da98b954eedeac495271d0f",
"type": "volume"
},
"gasFee": null
},
"issues": {
"allowance": {
"actual": "0",
"spender": "0x000000000022d473030f116ddee9f6b43ac78ba3"
},
"balance": {
"token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"actual": "16320309787715287566",
"expected": "100000000000000000000000"
},
"simulationIncomplete": false,
"invalidSourcesPassed": []
},
"liquidityAvailable": true,
"minBuyAmount": "143659482825225268801805400",
"permit2": {
"type": "Permit2",
"hash": "0xafb2c83591d83ec04d0792eaa00d36f5a509dfab6666fa787e310afa276bf379",
"eip712": {
"types": {
"PermitTransferFrom": [
{
"name": "permitted",
"type": "TokenPermissions"
},
{
"name": "spender",
"type": "address"
},
{
"name": "nonce",
"type": "uint256"
},
{
"name": "deadline",
"type": "uint256"
}
],
"TokenPermissions": [
{
"name": "token",
"type": "address"
},
{
"name": "amount",
"type": "uint256"
}
],
"EIP712Domain": [
{
"name": "name",
"type": "string"
},
{
"name": "chainId",
"type": "uint256"
},
{
"name": "verifyingContract",
"type": "address"
}
]
},
"domain": {
"name": "Permit2",
"chainId": 1,
"verifyingContract": "0x000000000022d473030f116ddee9f6b43ac78ba3"
},
"message": {
"permitted": {
"token": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"amount": "100000000000000000000000"
},
"spender": "0x0d0e364aa7852291883c162b22d6d81f6355428f",
"nonce": "2241959297937691820908574931991559",
"deadline": "1739918089"
},
"primaryType": "PermitTransferFrom"
}
},
"route": {
"fills": [
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"source": "Uniswap_V3",
"proportionBps": "250"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"source": "Uniswap_V3",
"proportionBps": "749"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"source": "Curve",
"proportionBps": "250"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"source": "Curve",
"proportionBps": "250"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"source": "SushiSwap",
"proportionBps": "500"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"source": "Uniswap_V2",
"proportionBps": "251"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0x6b175474e89094c44da98b954eedeac495271d0f",
"source": "Uniswap_V3",
"proportionBps": "250"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0x6b175474e89094c44da98b954eedeac495271d0f",
"source": "SushiSwap",
"proportionBps": "250"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0x6b175474e89094c44da98b954eedeac495271d0f",
"source": "Uniswap_V2",
"proportionBps": "500"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"source": "Uniswap_V3",
"proportionBps": "499"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"source": "Uniswap_V3",
"proportionBps": "749"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"source": "Uniswap_V3",
"proportionBps": "249"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"source": "Uniswap_V2",
"proportionBps": "1583"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"source": "SushiSwap",
"proportionBps": "499"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"source": "Fluid",
"proportionBps": "249"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"source": "Uniswap_V4",
"proportionBps": "250"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0xf939e0a03fb07f59a73314e73794be0e57ac1b4e",
"source": "Curve",
"proportionBps": "250"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0xdac17f958d2ee523a2206206994597c13d831ec7",
"source": "Uniswap_V3",
"proportionBps": "250"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0xdac17f958d2ee523a2206206994597c13d831ec7",
"source": "Uniswap_V3",
"proportionBps": "750"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0xdac17f958d2ee523a2206206994597c13d831ec7",
"source": "Uniswap_V3",
"proportionBps": "250"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0xdac17f958d2ee523a2206206994597c13d831ec7",
"source": "PancakeSwap_V3",
"proportionBps": "250"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0xdac17f958d2ee523a2206206994597c13d831ec7",
"source": "Uniswap_V2",
"proportionBps": "750"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0xdac17f958d2ee523a2206206994597c13d831ec7",
"source": "0x_RFQ",
"proportionBps": "83"
},
{
"from": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"to": "0xdac17f958d2ee523a2206206994597c13d831ec7",
"source": "0x_RFQ",
"proportionBps": "84"
},
{
"from": "0xdac17f958d2ee523a2206206994597c13d831ec7",
"to": "0x6b175474e89094c44da98b954eedeac495271d0f",
"source": "Curve",
"proportionBps": "1942"
},
{
"from": "0xdac17f958d2ee523a2206206994597c13d831ec7",
"to": "0xf939e0a03fb07f59a73314e73794be0e57ac1b4e",
"source": "Curve",
"proportionBps": "323"
},
{
"from": "0xdac17f958d2ee523a2206206994597c13d831ec7",
"to": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"source": "Uniswap_V3",
"proportionBps": "86"
},
{
"from": "0xdac17f958d2ee523a2206206994597c13d831ec7",
"to": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"source": "0x_RFQ",
"proportionBps": "21"
},
{
"from": "0xdac17f958d2ee523a2206206994597c13d831ec7",
"to": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"source": "0x_RFQ",
"proportionBps": "21"
},
{
"from": "0xdac17f958d2ee523a2206206994597c13d831ec7",
"to": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"source": "0x_RFQ",
"proportionBps": "22"
},
{
"from": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"to": "0x6b175474e89094c44da98b954eedeac495271d0f",
"source": "0x_RFQ",
"proportionBps": "57"
},
{
"from": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"to": "0x6b175474e89094c44da98b954eedeac495271d0f",
"source": "0x_RFQ",
"proportionBps": "57"
},
{
"from": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"source": "Uniswap_V3",
"proportionBps": "38"
},
{
"from": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"source": "Uniswap_V3",
"proportionBps": "1696"
},
{
"from": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"source": "Curve",
"proportionBps": "343"
},
{
"from": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"source": "0x_RFQ",
"proportionBps": "133"
},
{
"from": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"source": "0x_RFQ",
"proportionBps": "19"
},
{
"from": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"source": "0x_RFQ",
"proportionBps": "58"
},
{
"from": "0xf939e0a03fb07f59a73314e73794be0e57ac1b4e",
"to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"source": "Curve",
"proportionBps": "573"
},
{
"from": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"to": "0x6b175474e89094c44da98b954eedeac495271d0f",
"source": "Maker_PSM",
"proportionBps": "6944"
}
],
"tokens": [
{
"address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"symbol": "WETH"
},
{
"address": "0xdac17f958d2ee523a2206206994597c13d831ec7",
"symbol": "USDT"
},
{
"address": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
"symbol": "WBTC"
},
{
"address": "0xf939e0a03fb07f59a73314e73794be0e57ac1b4e",
"symbol": "crvUSD"
},
{
"address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"symbol": "USDC"
},
{
"address": "0x6b175474e89094c44da98b954eedeac495271d0f",
"symbol": "DAI"
}
]
},
"sellAmount": "100000000000000000000000",
"sellToken": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"tokenMetadata": {
"buyToken": {
"buyTaxBps": "0",
"sellTaxBps": "0"
},
"sellToken": {
"buyTaxBps": "0",
"sellTaxBps": "0"
}
},
"totalNetworkFee": "54779430334381092",
"transaction": {
"to": "0x0d0e364aa7852291883c162b22d6d81f6355428f",
"data": "0x1fff991f000000000000000000000000d8da6bf26964af9d7eed9e03e53415d37aa960450000000000000000000000006b175474e89094c44da98b954eedeac495271d0f00000000000000000000000000000000000000000076d5142b3a955cadc39c5800000000000000000000000000000000000000000000000000000000000000a04394c57eeb18c52d02b7516f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002c0000000000000000000000000000000000000000000000000000000000004520000000000000000000000000000000000000000000000000000000000000058000000000000000000000000000000000000000000000000000000000000006a000000000000000000000000000000000000000000000000000000000000007c000000000000000000000000000000000000000000000000000000000000009800000000000000000000000000000000000000000000000000000000000000b400000000000000000000000000000000000000000000000000000000000000c400000000000000000000000000000000000000000000000000000000000000d400000000000000000000000000000000000000000000000000000000000000e600000000000000000000000000000000000000000000000000000000000000f600000000000000000000000000000000000000000000000000000000000001060000000000000000000000000000000000000000000000000000000000000118000000000000000000000000000000000000000000000000000000000000012a000000000000000000000000000000000000000000000000000000000000013c000000000000000000000000000000000000000000000000000000000000014c000000000000000000000000000000000000000000000000000000000000015c0000000000000000000000000000000000000000000000000000000000000170000000000000000000000000000000000000000000000000000000000000018a000000000000000000000000000000000000000000000000000000000000019e00000000000000000000000000000000000000000000000000000000000001b800000000000000000000000000000000000000000000000000000000000001d400000000000000000000000000000000000000000000000000000000000001e600000000000000000000000000000000000000000000000000000000000001f8000000000000000000000000000000000000000000000000000000000000020a000000000000000000000000000000000000000000000000000000000000021c000000000000000000000000000000000000000000000000000000000000022c00000000000000000000000000000000000000000000000000000000000002580000000000000000000000000000000000000000000000000000000000000276000000000000000000000000000000000000000000000000000000000000029000000000000000000000000000000000000000000000000000000000000002aa00000000000000000000000000000000000000000000000000000000000002bc00000000000000000000000000000000000000000000000000000000000002e8000000000000000000000000000000000000000000000000000000000000030600000000000000000000000000000000000000000000000000000000000003240000000000000000000000000000000000000000000000000000000000000350000000000000000000000000000000000000000000000000000000000000036e0000000000000000000000000000000000000000000000000000000000000380000000000000000000000000000000000000000000000000000000000000039200000000000000000000000000000000000000000000000000000000000003ae00000000000000000000000000000000000000000000000000000000000003da00000000000000000000000000000000000000000000000000000000000003f800000000000000000000000000000000000000000000000000000000000004160000000000000000000000000000000000000000000000000000000000000430000000000000000000000000000000000000000000000000000000000000043c000000000000000000000000000000000000000000000000000000000000000e48d68a1560000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f00000000000000000000000000000000000000000000000000000000000000fa00000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002cc02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000bb82260fac5e5542a773aa44fbcfedf7c193bc2c59900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e48d68a1560000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f000000000000000000000000000000000000000000000000000000000000030100000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002cc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000001f42260fac5e5542a773aa44fbcfedf7c193bc2c599000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018438c9c147000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000000000000000000000000000000000000000000115000000000000000000000000f5f5b97624542d72a9e06f04804bf81baa15e2b4000000000000000000000000000000000000000000000000000000000000004400000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000a45b41b908000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018438c9c147000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000000000000000000000000000000000000000011d000000000000000000000000d51a44d3fae010294c616388b506acda1bfaae46000000000000000000000000000000000000000000000000000000000000004400000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000a45b41b90800000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c4103b48be0000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000000000000000000000000000000000000000024c000000000000000000000000ceff51756c56ceffca006cd410b03ffc46dd3a580000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c4103b48be0000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000000000000000000000000000000000000000000138000000000000000000000000bb2b8038a1640196fbe3e38816f3e67cba72d9400000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e48d68a1560000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f000000000000000000000000000000000000000000000000000000000000014200000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002cc02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000bb86b175474e89094c44da98b954eedeac495271d0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c4103b48be0000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000000000000000000000000000000000000000014d000000000000000000000000c3d03e4f041fd4cd388c549ee2a29a9e5075882f0000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c4103b48be0000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000000000000000000000000000000000000000000000000000000000002b1000000000000000000000000a478c2975ab1ea89e8196811f51a7b7ade33eb110000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e48d68a1560000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f00000000000000000000000000000000000000000000000000000000000002e400000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002cc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000001f4a0b86991c6218b36c1d19d4a2e9eb0ce3606eb4800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e48d68a1560000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f00000000000000000000000000000000000000000000000000000000000004af00000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002cc02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000bb8a0b86991c6218b36c1d19d4a2e9eb0ce3606eb4800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e48d68a1560000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f00000000000000000000000000000000000000000000000000000000000001c600000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002cc02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000064a0b86991c6218b36c1d19d4a2e9eb0ce3606eb4800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c4103b48be0000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000000000000000000000000000000000000000000bc7000000000000000000000000b4e16d0168e52d35cacd2c6185b44281ec28c9dc0000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c4103b48be0000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000000000000000000000000000000000000000000553000000000000000000000000397ff1542f962076d0bfe58ea045ffa2d347aca00000000000000000000000000000000000000000000000000000000000001e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010438c9c147000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000000000000000000000000000000000000000000315000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000242e1a7d4d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016438c9c147000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee0000000000000000000000000000000000000000000000000000000000002710000000000000000000000000836951eb21f3df98273517b7249dceff270d34bf000000000000000000000000000000000000000000000000000000000000002400000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000842668dfaa0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010438c9c147000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000000000000000000000000000000000000000000359000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000242e1a7d4d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000164af72634f0000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee000000000000000000000000000000000000000000000000000000000000271000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000ffffffffffffffc5000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034271001a0b86991c6218b36c1d19d4a2e9eb0ce3606eb480001f400000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018438c9c147000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000000000000000000000000000000000000000000000000000000000003a90000000000000000000000004ebdf703948ddcea3b11f675b4d1fba9d2414a14000000000000000000000000000000000000000000000000000000000000004400000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000a45b41b90800000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e48d68a1560000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f000000000000000000000000000000000000000000000000000000000000040a00000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002cc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000001f4dac17f958d2ee523a2206206994597c13d831ec700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e48d68a1560000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f0000000000000000000000000000000000000000000000000000000000000d8500000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002cc02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000bb8dac17f958d2ee523a2206206994597c13d831ec700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e48d68a1560000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f00000000000000000000000000000000000000000000000000000000000006e400000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002cc02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000064dac17f958d2ee523a2206206994597c13d831ec700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e48d68a1560000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f000000000000000000000000000000000000000000000000000000000000085e00000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002cc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2010001f4dac17f958d2ee523a2206206994597c13d831ec700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c4103b48be0000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000000000000000000000000000000000000000001ff50000000000000000000000000d4a11d5eeaac28ec3f61d100daf4d40471f18520000000000000000000000000000000000000000000000000000000000001e01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000028438c9c147000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000000000000000000000000000000000000000001388000000000000000000000000def1c0ded9bec7f1a1670819833240f027b25eff000000000000000000000000000000000000000000000000000000000000018400000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a4dac748d4000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000000000000000000000000000000000000000000000000000203dad40bc200000000000000000000000000000000000000000000002d2cd2bb7a3984000000000000000000000000000051c72848c68a965f66fa7a88855f9f7784502a7f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d8da6bf26964af9d7eed9e03e53415d37aa960450000000067b50a19000000000000000400000000000000000000000067b509df0000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000001b30795b1c18f8841a9db536564e0b5e2f2eb745620627a8464a28e2a06894791338c2854e5d808d7be115cb9a3a81fd1b9fdf35bcb575c348f29b1ed1bd665a6f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a4d92aadfb0000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000000000000000000000000000000002042fb807eb0596fa4887014ea98fde97c9ed9175698d056dd14fc6c60bcf0952e00633795c0000000000000000000000000000000000000000000000000000000067b50a1e000000000000000000000000b02f39e382c90160eb816de5e0e428ac771d77b50000000000000000000000000000000000000000000000000000000000000120000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000000000000000000000000000000000000000000002d2cd2bb7a3984000000000000000000000000000000000000000000000000000000000000000000411b8b683c3f6cfc66eb92be3820bb6897792cf85cf80dbf7b8bef9684d6437534526605ed76d67cd3d66a467a1e75f3b1387a222ca09b8e8249a664d564e6acdc460000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016438c9c147000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec70000000000000000000000000000000000000000000000000000000000001f63000000000000000000000000bebc44782c7db0a1a60cb6fe97d0b483032ff1c7000000000000000000000000000000000000000000000000000000000000004400000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000843df0212400000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016438c9c147000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec70000000000000000000000000000000000000000000000000000000000001aa2000000000000000000000000390f3595bca2df7d23783dfd126427cceb997bf4000000000000000000000000000000000000000000000000000000000000004400000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000843df021240000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e48d68a1560000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f000000000000000000000000000000000000000000000000000000000000165200000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002cdac17f958d2ee523a2206206994597c13d831ec700000bb82260fac5e5542a773aa44fbcfedf7c193bc2c599000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000028438c9c147000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec70000000000000000000000000000000000000000000000000000000000000d05000000000000000000000000def1c0ded9bec7f1a1670819833240f027b25eff000000000000000000000000000000000000000000000000000000000000018400000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a4dac748d40000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c599000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000000000000000000000000000000000002b0c776c000000000000000000000000000000000000000000000000000000a065522c9b00000000000000000000000051c72848c68a965f66fa7a88855f9f7784502a7f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d8da6bf26964af9d7eed9e03e53415d37aa960450000000067b50a19000000000000000300000000000000000000000067b509de0000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000001cafb91bc0d4938fcc094968d29aa63852db6160ab86486411f64fa8c3df9ed6d92395a4d92bd11b53b267be84ce2bf47d621a7ea93f41b37f48fde3c827ff8f940000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a4d92aadfb0000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f0000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c599000000000000000000000000000000000000000000000000000000002afda0f60596fa4887014ea98fde97c9ed9175698d056dd14fc6c60bcf0952e0063379500000000000000000000000000000000000000000000000000000000067b50a19000000000000000000000000807cf9a772d5a3f9cefbc1192e939d62f0d9bd380000000000000000000000000000000000000000000000000000000000000120000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000000000000000000000000000000000a065522c9b0000000000000000000000000000000000000000000000000000000000000041c3e62447b839d1ccb019dd2937b4cd2d827c0595666504a51adcd4fbc714e2c53d230520fcd82670217f8ffae6f41cdadd612bccbf1ae5987a064654202a34361b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a4d92aadfb0000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f0000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c599000000000000000000000000000000000000000000000000000000002afce92e0596fa4887014ea98fde97c9ed9175698d056dd14fc6c60bcf0952e0063379540000000000000000000000000000000000000000000000000000000067b50a1e000000000000000000000000b02f39e382c90160eb816de5e0e428ac771d77b50000000000000000000000000000000000000000000000000000000000000120000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000000000000000000000000000000000a065522c9b00000000000000000000000000000000000000000000000000000000000000411cd57372643609dd41dcf60f56b67004790881ff77dcc7f3c3d22d2bd55d7247b24a4bcbd9f03a1d3d7b4fa91f0095492058877de4652ddbef472826e8b4d23c330000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000028438c9c1470000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c59900000000000000000000000000000000000000000000000000000000000000ee000000000000000000000000def1c0ded9bec7f1a1670819833240f027b25eff000000000000000000000000000000000000000000000000000000000000018400000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a4dac748d40000000000000000000000006b175474e89094c44da98b954eedeac495271d0f0000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c59900000000000000000000000000000000000000000000e311bf64dddee0000000000000000000000000000000000000000000000000000000000000004356ef0c00000000000000000000000051c72848c68a965f66fa7a88855f9f7784502a7f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d8da6bf26964af9d7eed9e03e53415d37aa960450000000067b50a19000000000000000500000000000000000000000067b509e00000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000001b042a037822c95929d4a07556450ef3edd6a38563a32f4c42fb31a875364eaaa44cc2813eda44496df6496a590120d048598eb57e0cfc8b946c6e1490963817e70000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a4d92aadfb0000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f0000000000000000000000006b175474e89094c44da98b954eedeac495271d0f00000000000000000000000000000000000000000000d36ca17e38b5cc1a134b0596fa4887014ea98fde97c9ed9175698d056dd14fc6c60bcf0952e0063379620000000000000000000000000000000000000000000000000000000067b50a1e000000000000000000000000b02f39e382c90160eb816de5e0e428ac771d77b500000000000000000000000000000000000000000000000000000000000001200000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c599000000000000000000000000000000000000000000000000000000004356ef0c00000000000000000000000000000000000000000000000000000000000000411be8220f13b18bc69a9331556efa907ea0ce07a008e97c60e89674b54cacbf926f30110cd19bbee4214f67ede162dfcfff9b4b7d2bc7d7d41b56f2e859384a02c5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e48d68a1560000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f00000000000000000000000000000000000000000000000000000000000000a600000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002c2260fac5e5542a773aa44fbcfedf7c193bc2c599000001f4a0b86991c6218b36c1d19d4a2e9eb0ce3606eb4800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e48d68a1560000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f0000000000000000000000000000000000000000000000000000000000001d7600000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002c2260fac5e5542a773aa44fbcfedf7c193bc2c59900000bb8a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018438c9c1470000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c599000000000000000000000000000000000000000000000000000000000000183e0000000000000000000000007f86bf177dd4f3494b841a37e810a34dd56c829b000000000000000000000000000000000000000000000000000000000000004400000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000a45b41b908000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000028438c9c1470000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c59900000000000000000000000000000000000000000000000000000000000018db000000000000000000000000def1c0ded9bec7f1a1670819833240f027b25eff000000000000000000000000000000000000000000000000000000000000018400000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001a4dac748d4000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb480000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c5990000000000000000000000000000000000000000000000000000026fe4103d8f00000000000000000000000000000000000000000000000000000000a859559d00000000000000000000000051c72848c68a965f66fa7a88855f9f7784502a7f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d8da6bf26964af9d7eed9e03e53415d37aa960450000000067b50a19000000000000000200000000000000000000000067b509dd0000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000001b9ef83b16b2d22be03b75e28e9bdac2f0bc011be59ad7c8c6c40854ad8395328d4bf11689d11f4c8bd9d57dcd67d45e41fb62ed214b80ba11c4221cc650f586110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a4d92aadfb0000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb480000000000000000000000000000000000000000000000000000007cad5193f50596fa4887014ea98fde97c9ed9175698d056dd14fc6c60bcf0952e0063379490000000000000000000000000000000000000000000000000000000067b50a19000000000000000000000000807cf9a772d5a3f9cefbc1192e939d62f0d9bd3800000000000000000000000000000000000000000000000000000000000001200000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c5990000000000000000000000000000000000000000000000000000000021ab77860000000000000000000000000000000000000000000000000000000000000041f1521b5a4b6fcd84b5d96d59a5d6b7960ae1bc1ba353982774b67dc1a184d851479af52b001ca6c6a0844f2ea8fbef18b916ef6cca317ed6ec6ae9fbebade71d1c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a4d92aadfb0000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48000000000000000000000000000000000000000000000000000000dbfef6e9590596fa4887014ea98fde97c9ed9175698d056dd14fc6c60bcf0952e00633794d0000000000000000000000000000000000000000000000000000000067b50a1e000000000000000000000000b02f39e382c90160eb816de5e0e428ac771d77b500000000000000000000000000000000000000000000000000000000000001200000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c599000000000000000000000000000000000000000000000000000000003fa9101700000000000000000000000000000000000000000000000000000000000000411ba7d413ff6cecbf30628dfdeb65b60d61bb9986d19e7a0f5b5e9137945bfba34428b6ddc75c6fe8c712e336760b67386687ba72e89cb0a78783e0e5acee6153ca0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016438c9c147000000000000000000000000f939e0a03fb07f59a73314e73794be0e57ac1b4e00000000000000000000000000000000000000000000000000000000000027100000000000000000000000004dece678ceceb27446b35c672dc7d61f30bad69e000000000000000000000000000000000000000000000000000000000000004400000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000843df02124000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000084bfda52920000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f00000000000000000000000000000000000000000000000000000000000027100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012438c9c1470000000000000000000000006b175474e89094c44da98b954eedeac495271d0f000000000000000000000000000000000000000000000000000000000000000f0000000000000000000000006b175474e89094c44da98b954eedeac495271d0f000000000000000000000000000000000000000000000000000000000000002400000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000044a9059cbb000000000000000000000000ad01c20d5886137e056775af56915de824c8fce500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffc1fb425e0000000000000000000000000d0e364aa7852291883c162b22d6d81f6355428f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000000000000000000000000000000000000000000152d02c7e14af68000000000000000000000000000000000000000006e898131631616b1779bad70bc070000000000000000000000000000000000000000000000000000000067b50b0900000000000000000000000000000000000000000000000000000000000000c0",
"gas": "53043726",
"gasPrice": "1032722142",
"value": "0"
},
"zid": "0x4394c57eeb18c52d02b7516f"
}

Gasless API v2​

Sample Request and Response​

See full list of required query parameters and responses here.

Request​

curl --request GET \
--url 'https://api.0x.org/gasless/quote?chainId=8453&sellToken=0x833589fcd6edb6e08f4c7c32d4f71b54bda02913&buyToken=0x4200000000000000000000000000000000000006&sellAmount=100000000&taker=0x4D2A422dB44144996E855ce15FB581a477dbB947' \
--header '0x-api-key: YOUR_API_KEY'
--header '0x-version: v2'

Response​

Expand to see response
{
"approval": {
"type": "permit",
"hash": "0x334281749a8d1c7e518024109ee8f31c5e55109764efa33b2864a6ab26d90889",
"eip712": {
"types": {
"EIP712Domain": [
{
"name": "name",
"type": "string"
},
{
"name": "version",
"type": "string"
},
{
"name": "chainId",
"type": "uint256"
},
{
"name": "verifyingContract",
"type": "address"
}
],
"Permit": [
{
"name": "owner",
"type": "address"
},
{
"name": "spender",
"type": "address"
},
{
"name": "value",
"type": "uint256"
},
{
"name": "nonce",
"type": "uint256"
},
{
"name": "deadline",
"type": "uint256"
}
]
},
"domain": {
"name": "USD Coin",
"version": "2",
"chainId": 8453,
"verifyingContract": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913"
},
"message": {
"owner": "0x4d2a422db44144996e855ce15fb581a477dbb947",
"spender": "0x000000000022d473030f116ddee9f6b43ac78ba3",
"value": "115792089237316195423570985008687907853269984665640564039457584007913129639935",
"nonce": 1,
"deadline": "1720033166"
},
"primaryType": "Permit"
}
},
"blockNumber": "16621609",
"buyAmount": "28520257810978",
"buyToken": "0x4200000000000000000000000000000000000006",
"fees": {
"integratorFee": null,
"zeroExFee": {
"amount": "150",
"token": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"type": "volume"
},
"gasFee": {
"amount": "5842",
"token": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"type": "gas"
}
},
"issues": {
"allowance": null,
"balance": null,
"simulationIncomplete": false,
"invalidSourcesPassed": []
},
"liquidityAvailable": true,
"minBuyAmount": "28434697037546",
"route": {
"fills": [
{
"from": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"to": "0x4200000000000000000000000000000000000006",
"source": "Solidly_V3",
"proportionBps": "10000"
}
],
"tokens": [
{
"address": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"symbol": "USDC"
},
{
"address": "0x4200000000000000000000000000000000000006",
"symbol": "WETH"
}
]
},
"sellAmount": "99850",
"sellToken": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"target": "0x5ce929ddb01804bff35b2f5c77b735bdb094aac8",
"trade": {
"type": "settler_metatransaction",
"hash": "0xf8b1cea260453fabbeb8d38195e3f034b638714553084753bbe83f4d2aaa45ba",
"eip712": {
"types": {
"PermitWitnessTransferFrom": [
{
"name": "permitted",
"type": "TokenPermissions"
},
{
"name": "spender",
"type": "address"
},
{
"name": "nonce",
"type": "uint256"
},
{
"name": "deadline",
"type": "uint256"
},
{
"name": "slippageAndActions",
"type": "SlippageAndActions"
}
],
"EIP712Domain": [
{
"name": "name",
"type": "string"
},
{
"name": "chainId",
"type": "uint256"
},
{
"name": "verifyingContract",
"type": "address"
}
],
"TokenPermissions": [
{
"name": "token",
"type": "address"
},
{
"name": "amount",
"type": "uint256"
}
],
"SlippageAndActions": [
{
"name": "recipient",
"type": "address"
},
{
"name": "buyToken",
"type": "address"
},
{
"name": "minAmountOut",
"type": "uint256"
},
{
"name": "actions",
"type": "bytes[]"
}
]
},
"domain": {
"name": "Permit2",
"chainId": 8453,
"verifyingContract": "0x000000000022d473030f116ddee9f6b43ac78ba3"
},
"message": {
"permitted": {
"token": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"amount": "100000"
},
"spender": "0x5ce929ddb01804bff35b2f5c77b735bdb094aac8",
"nonce": "2241959297937691820908574931991566",
"deadline": "1720032866",
"slippageAndActions": {
"recipient": "0x4d2a422db44144996e855ce15fb581a477dbb947",
"buyToken": "0x4200000000000000000000000000000000000006",
"minAmountOut": "28434697037546",
"actions": [
"0x0dfeb4190000000000000000000000005ce929ddb01804bff35b2f5c77b735bdb094aac8000000000000000000000000833589fcd6edb6e08f4c7c32d4f71b54bda0291300000000000000000000000000000000000000000000000000000000000186a00000000000000000000000000000000000006e898131631616b1779bad70bc0e0000000000000000000000000000000000000000000000000000000066859e62",
"0x38c9c147000000000000000000000000833589fcd6edb6e08f4c7c32d4f71b54bda029130000000000000000000000000000000000000000000000000000000000000257000000000000000000000000833589fcd6edb6e08f4c7c32d4f71b54bda02913000000000000000000000000000000000000000000000000000000000000002400000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000044a9059cbb0000000000000000000000009f6601854dee374b1bfaf6350ffd27a97309d431000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
"0x38c9c147000000000000000000000000833589fcd6edb6e08f4c7c32d4f71b54bda029130000000000000000000000000000000000000000000000000000000000002710000000000000000000000000551a0e3d267bea87048f08cc94cc6035ad99221b000000000000000000000000000000000000000000000000000000000000004400000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000084c31b8d7a0000000000000000000000005ce929ddb01804bff35b2f5c77b735bdb094aac80000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001860a000000000000000000000000fffd8963efd1fc6a506488495d951d5263988d2500000000000000000000000000000000000000000000000000000000"
]
}
},
"primaryType": "PermitWitnessTransferFrom"
}
}
}

0x Contracts​

This section provides an overview of the three main contracts developers need to understand when working with the 0x API - 0x Settler, AllowanceHolder, and Permit2. For more in-depth details, refer to the 0x Contracts section.

A Note About Setting Token Allowances​

danger
  • NEVER set an allowance on the Settler contract. Doing so may result in unintended consequences, including potential loss of tokens or exposure to security risks. The Settler contract does not support or require token allowances for its operation. Setting an allowance on the Settler contract will lead to misuse by other parties.

  • ONLY set allowances on Permit2 or AllowanceHolder contracts, as indicated by the API responses.

  • The correct allowance target is returned in issues.allowance.spender. :::

0x Settler Contracts​

The 0x Settler contract is the core execution layer of 0x v2, designed for flexibility and security. It dynamically updates based on the latest deployments and handles swaps without requiring passive token allowances.

Key Points:

  • Avoid setting token allowances on the Settler contract; it does not require them.
  • The entry point contract (where you send data) changes dynamically per deployment.
  • The correct contract address is always returned in transaction.to via the API.

Further reading: 0x Settler

Permit2 Contract​

The Permit2 contract, developed by Uniswap, enables gas-efficient and flexible token approvals. It eliminates the need for repeated approvals and enhances security by supporting time-limited, granular approvals.

When using the Swap API with Permit2, the Permit2 contract is the allowance target (also referred to as the spender or operator):

Key Points:

  • The correct allowance target will be returned in issues.allowance.spender.
  • Recommened for most applications, including multisig and smart contract wallets, as long as the smart contract supports EIP-1271, which most do.
  • Permit2 is deployed to 0x000000000022D473030F116dDEE9F6B43aC78BA3 across all chains. You can hardcode this address in your integration.

Further Reading: Permit2 Contract

AllowanceHolder Contract​

We recommend using Permit2 for most situations. However, if your integration doesn't support a double-signature flow, such as with smart contracts that aren't compatible with EIP-1271, AllowanceHolder is a better choice. It works best for single-signature use cases, including:

Projects integrating the Swap API into smart contracts without EIP-1271 support. Teams aggregating across multiple sources and aiming for a consistent user experience across all integrations.

For AllowanceHolder, use the following endpoints:

Key Points:

  • The correct allowance target will be returned in issues.allowance.spender.
  • More flexible than the traditional contract-wide approvals.
  • The AllowanceHolder contract is deployed at different addresses, depending on the chain’s latest supported EVM hardfork. These addresses can be hardcoded in your integration:
    • 0x0000000000001fF3684f28c67538d4D072C22734 on chains supporting the Cancun hardfork (Ethereum Mainnet, Ethereum Sepolia, Polygon, Base, Optimism, Arbitrum, Avalanche, Blast, Bnb)
    • 0x0000000000005E88410CcDFaDe4a5EfaE4b49562 on chains supporting the Shanghai hardfork (Scroll, Mantle)
    • 0x000000000000175a8b9bC6d539B3708EEd92EA6c on chains supporting the London hardfork (Linea)

Further Reading: AllowanceHolder Contract