{
  "contractName": "WitnetMockedRandomness",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "contract WitnetMockedOracle",
          "name": "_wrb",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "inputs": [],
      "name": "EmptyBuffer",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "index",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "range",
          "type": "uint256"
        }
      ],
      "name": "IndexOutOfBounds",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "length",
          "type": "uint256"
        }
      ],
      "name": "InvalidLengthEncoding",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "OwnableInvalidOwner",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        }
      ],
      "name": "OwnableUnauthorizedAccount",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "read",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "expected",
          "type": "uint256"
        }
      ],
      "name": "UnexpectedMajorType",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "unexpected",
          "type": "uint256"
        }
      ],
      "name": "UnsupportedMajorType",
      "type": "error"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "previousOwner",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "OwnershipTransferStarted",
      "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": "uint256",
          "name": "blockNumber",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "evmTxGasPrice",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "evmRandomizeFee",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "witnetQueryId",
          "type": "uint256"
        },
        {
          "components": [
            {
              "internalType": "uint8",
              "name": "committeeSize",
              "type": "uint8"
            },
            {
              "internalType": "uint64",
              "name": "witnessingFeeNanoWit",
              "type": "uint64"
            }
          ],
          "indexed": false,
          "internalType": "struct WitnetV2.RadonSLA",
          "name": "witnetQuerySLA",
          "type": "tuple"
        }
      ],
      "name": "Randomizing",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "id",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "evmReward",
          "type": "uint256"
        },
        {
          "components": [
            {
              "internalType": "uint8",
              "name": "committeeSize",
              "type": "uint8"
            },
            {
              "internalType": "uint64",
              "name": "witnessingFeeNanoWit",
              "type": "uint64"
            }
          ],
          "indexed": false,
          "internalType": "struct WitnetV2.RadonSLA",
          "name": "witnetSLA",
          "type": "tuple"
        }
      ],
      "name": "WitnetQuery",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "id",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "evmGasPrice",
          "type": "uint256"
        }
      ],
      "name": "WitnetQueryResponse",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "id",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "evmGasPrice",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "evmCallbackGas",
          "type": "uint256"
        }
      ],
      "name": "WitnetQueryResponseDelivered",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "id",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "bytes",
          "name": "resultCborBytes",
          "type": "bytes"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "evmGasPrice",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "evmCallbackActualGas",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "string",
          "name": "evmCallbackRevertReason",
          "type": "string"
        }
      ],
      "name": "WitnetQueryResponseDeliveryFailed",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "id",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "evmReward",
          "type": "uint256"
        }
      ],
      "name": "WitnetQueryRewardUpgraded",
      "type": "event"
    },
    {
      "stateMutability": "payable",
      "type": "fallback"
    },
    {
      "inputs": [],
      "name": "acceptOwnership",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "baseFeeOverheadPercentage",
      "outputs": [
        {
          "internalType": "uint16",
          "name": "",
          "type": "uint16"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "class",
      "outputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_evmGasPrice",
          "type": "uint256"
        }
      ],
      "name": "estimateRandomizeFee",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_blockNumber",
          "type": "uint256"
        }
      ],
      "name": "fetchRandomnessAfter",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_blockNumber",
          "type": "uint256"
        }
      ],
      "name": "fetchRandomnessAfterProof",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "_witnetResultRandomness",
          "type": "bytes32"
        },
        {
          "internalType": "uint64",
          "name": "_witnetResultTimestamp",
          "type": "uint64"
        },
        {
          "internalType": "bytes32",
          "name": "_witnetResultTallyHash",
          "type": "bytes32"
        },
        {
          "internalType": "uint256",
          "name": "_witnetResultFinalityBlock",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getLastRandomizeBlock",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_blockNumber",
          "type": "uint256"
        }
      ],
      "name": "getRandomizeData",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "_witnetQueryId",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_prevRandomizeBlock",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_nextRandomizeBlock",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_blockNumber",
          "type": "uint256"
        }
      ],
      "name": "getRandomizeNextBlock",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_blockNumber",
          "type": "uint256"
        }
      ],
      "name": "getRandomizePrevBlock",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_blockNumber",
          "type": "uint256"
        }
      ],
      "name": "getRandomizeStatus",
      "outputs": [
        {
          "internalType": "enum WitnetV2.ResponseStatus",
          "name": "",
          "type": "uint8"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_blockNumber",
          "type": "uint256"
        }
      ],
      "name": "isRandomized",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "owner",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "pendingOwner",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint32",
          "name": "_range",
          "type": "uint32"
        },
        {
          "internalType": "uint256",
          "name": "_nonce",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_blockNumber",
          "type": "uint256"
        }
      ],
      "name": "random",
      "outputs": [
        {
          "internalType": "uint32",
          "name": "",
          "type": "uint32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "randomize",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "_evmRandomizeFee",
          "type": "uint256"
        }
      ],
      "stateMutability": "payable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "renounceOwnership",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint16",
          "name": "_baseFeeOverheadPercentage",
          "type": "uint16"
        }
      ],
      "name": "settleBaseFeeOverheadPercentage",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "uint8",
              "name": "committeeSize",
              "type": "uint8"
            },
            {
              "internalType": "uint64",
              "name": "witnessingFeeNanoWit",
              "type": "uint64"
            }
          ],
          "internalType": "struct WitnetV2.RadonSLA",
          "name": "_witnetQuerySLA",
          "type": "tuple"
        }
      ],
      "name": "settleWitnetQuerySLA",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "specs",
      "outputs": [
        {
          "internalType": "bytes4",
          "name": "",
          "type": "bytes4"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_newOwner",
          "type": "address"
        }
      ],
      "name": "transferOwnership",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "witnet",
      "outputs": [
        {
          "internalType": "contract WitnetOracle",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "witnetQuerySLA",
      "outputs": [
        {
          "components": [
            {
              "internalType": "uint8",
              "name": "committeeSize",
              "type": "uint8"
            },
            {
              "internalType": "uint64",
              "name": "witnessingFeeNanoWit",
              "type": "uint64"
            }
          ],
          "internalType": "struct WitnetV2.RadonSLA",
          "name": "",
          "type": "tuple"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "witnetRadHash",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "stateMutability": "payable",
      "type": "receive"
    }
  ],
  "metadata": "{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract WitnetMockedOracle\",\"name\":\"_wrb\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"EmptyBuffer\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"range\",\"type\":\"uint256\"}],\"name\":\"IndexOutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"InvalidLengthEncoding\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"OwnableInvalidOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"OwnableUnauthorizedAccount\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"read\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"}],\"name\":\"UnexpectedMajorType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"unexpected\",\"type\":\"uint256\"}],\"name\":\"UnsupportedMajorType\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferStarted\",\"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\":\"uint256\",\"name\":\"blockNumber\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"evmTxGasPrice\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"evmRandomizeFee\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"witnetQueryId\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint8\",\"name\":\"committeeSize\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"witnessingFeeNanoWit\",\"type\":\"uint64\"}],\"indexed\":false,\"internalType\":\"struct WitnetV2.RadonSLA\",\"name\":\"witnetQuerySLA\",\"type\":\"tuple\"}],\"name\":\"Randomizing\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"evmReward\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint8\",\"name\":\"committeeSize\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"witnessingFeeNanoWit\",\"type\":\"uint64\"}],\"indexed\":false,\"internalType\":\"struct WitnetV2.RadonSLA\",\"name\":\"witnetSLA\",\"type\":\"tuple\"}],\"name\":\"WitnetQuery\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"evmGasPrice\",\"type\":\"uint256\"}],\"name\":\"WitnetQueryResponse\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"evmGasPrice\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"evmCallbackGas\",\"type\":\"uint256\"}],\"name\":\"WitnetQueryResponseDelivered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"resultCborBytes\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"evmGasPrice\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"evmCallbackActualGas\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"evmCallbackRevertReason\",\"type\":\"string\"}],\"name\":\"WitnetQueryResponseDeliveryFailed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"evmReward\",\"type\":\"uint256\"}],\"name\":\"WitnetQueryRewardUpgraded\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"baseFeeOverheadPercentage\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"class\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_evmGasPrice\",\"type\":\"uint256\"}],\"name\":\"estimateRandomizeFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_blockNumber\",\"type\":\"uint256\"}],\"name\":\"fetchRandomnessAfter\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_blockNumber\",\"type\":\"uint256\"}],\"name\":\"fetchRandomnessAfterProof\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"_witnetResultRandomness\",\"type\":\"bytes32\"},{\"internalType\":\"uint64\",\"name\":\"_witnetResultTimestamp\",\"type\":\"uint64\"},{\"internalType\":\"bytes32\",\"name\":\"_witnetResultTallyHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_witnetResultFinalityBlock\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getLastRandomizeBlock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_blockNumber\",\"type\":\"uint256\"}],\"name\":\"getRandomizeData\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_witnetQueryId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_prevRandomizeBlock\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nextRandomizeBlock\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_blockNumber\",\"type\":\"uint256\"}],\"name\":\"getRandomizeNextBlock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_blockNumber\",\"type\":\"uint256\"}],\"name\":\"getRandomizePrevBlock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_blockNumber\",\"type\":\"uint256\"}],\"name\":\"getRandomizeStatus\",\"outputs\":[{\"internalType\":\"enum WitnetV2.ResponseStatus\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_blockNumber\",\"type\":\"uint256\"}],\"name\":\"isRandomized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"_range\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_blockNumber\",\"type\":\"uint256\"}],\"name\":\"random\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"randomize\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_evmRandomizeFee\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint16\",\"name\":\"_baseFeeOverheadPercentage\",\"type\":\"uint16\"}],\"name\":\"settleBaseFeeOverheadPercentage\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"committeeSize\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"witnessingFeeNanoWit\",\"type\":\"uint64\"}],\"internalType\":\"struct WitnetV2.RadonSLA\",\"name\":\"_witnetQuerySLA\",\"type\":\"tuple\"}],\"name\":\"settleWitnetQuerySLA\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"specs\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"witnet\",\"outputs\":[{\"internalType\":\"contract WitnetOracle\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"witnetQuerySLA\",\"outputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"committeeSize\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"witnessingFeeNanoWit\",\"type\":\"uint64\"}],\"internalType\":\"struct WitnetV2.RadonSLA\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"witnetRadHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"details\":\"TO BE USED ONLY ON DEVELOPMENT ENVIRONMENTS. ON SUPPORTED TESTNETS AND MAINNETS, PLEASE USE THE `WitnetRandomness` CONTRACT ADDRESS PROVIDED BY THE WITNET FOUNDATION.\",\"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\":{\"fetchRandomnessAfter(uint256)\":{\"details\":\"Reverts if:i.   no `randomize()` was requested on neither the given block, nor afterwards.ii.  the first non-errored `randomize()` request found on or after the given block is not solved yet.iii. all `randomize()` requests that took place on or after the given block were solved with errors.\",\"params\":{\"_blockNumber\":\"Block number from which the search will start\"}},\"fetchRandomnessAfterProof(uint256)\":{\"details\":\"Reverts if:i.   no `randomize()` was requested on neither the given block, nor afterwards.ii.  the first non-errored `randomize()` request found on or after the given block is not solved yet.iii. all `randomize()` requests that took place on or after the given block were solved with errors.\",\"params\":{\"_blockNumber\":\"Block number from which the search will start.\"},\"returns\":{\"_witnetResultFinalityBlock\":\"EVM block number from which the provided randomness can be considered to be final.\",\"_witnetResultRandomness\":\"Random value provided by the Witnet blockchain and used for solving randomness after given block.\",\"_witnetResultTallyHash\":\"Hash of the witnessing commit/reveal act that took place on the Witnet blockchain.\",\"_witnetResultTimestamp\":\"Timestamp at which the randomness value was generated by the Witnet blockchain.\"}},\"getRandomizeData(uint256)\":{\"details\":\"Returns zero values if no randomize request was actually posted on the given block.\",\"returns\":{\"_nextRandomizeBlock\":\"Block number in which a randomize request got posted just after this one, 0 if none.\",\"_prevRandomizeBlock\":\"Block number in which a randomize request got posted just before this one. 0 if none.\",\"_witnetQueryId\":\"Identifier of the underlying Witnet query created on the given block number. \"}},\"getRandomizeNextBlock(uint256)\":{\"params\":{\"_blockNumber\":\"Block number from which the search will start.\"},\"returns\":{\"_0\":\"Number of the first block found after the given one, or `0` otherwise.\"}},\"getRandomizePrevBlock(uint256)\":{\"params\":{\"_blockNumber\":\"Block number from which the search will start. Cannot be zero.\"},\"returns\":{\"_0\":\"First block found before the given one, or `0` otherwise.\"}},\"getRandomizeStatus(uint256)\":{\"details\":\"Possible values:- 0 -> Void: no randomize request was actually posted on or after the given block number.- 1 -> Awaiting: a randomize request was found but it's not yet solved by the Witnet blockchain.- 2 -> Ready: a successfull randomize value was reported and ready to be read.- 3 -> Error: all randomize requests after the given block were solved with errors.- 4 -> Finalizing: a randomize resolution has been reported from the Witnet blockchain, but it's not yet final.  \"},\"random(uint32,uint256,uint256)\":{\"details\":\"Fails under same conditions as `getRandomnessAfter(uint256)` does.\",\"params\":{\"_blockNumber\":\"Block number from which the search for the first randomize request solved aftewards will start.\",\"_nonce\":\"Nonce value enabling multiple random numbers from the same randomness value.\",\"_range\":\"Range within which the uniformly-distributed random number will be generated.\"}},\"randomize()\":{\"details\":\"Only one randomness request per block will be actually posted to the Witnet Oracle. \",\"returns\":{\"_evmRandomizeFee\":\"Funds actually paid as randomize fee.\"}},\"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.\"}},\"title\":\"Mocked implementation of `WitnetRandomness`.\",\"version\":1},\"userdoc\":{\"events\":{\"WitnetQuery(uint256,uint256,(uint8,uint64))\":{\"notice\":\"Emitted every time a new query containing some verified data request is posted to the WRB.\"},\"WitnetQueryResponse(uint256,uint256)\":{\"notice\":\"Emitted when a query with no callback gets reported into the WRB.\"},\"WitnetQueryResponseDelivered(uint256,uint256,uint256)\":{\"notice\":\"Emitted when a query with a callback gets successfully reported into the WRB.\"},\"WitnetQueryResponseDeliveryFailed(uint256,bytes,uint256,uint256,string)\":{\"notice\":\"Emitted when a query with a callback cannot get reported into the WRB.\"},\"WitnetQueryRewardUpgraded(uint256,uint256)\":{\"notice\":\"Emitted when the reward of some not-yet reported query is upgraded.\"}},\"kind\":\"user\",\"methods\":{\"acceptOwnership()\":{\"notice\":\"=============================================================================================================== --- 'IWitnetRandomnessAdmin' implementation -------------------------------------------------------------------\"},\"estimateRandomizeFee(uint256)\":{\"notice\":\"Returns amount of wei required to be paid as a fee when requesting randomization with a  transaction gas price as the one given.\"},\"fetchRandomnessAfter(uint256)\":{\"notice\":\"Retrieves the result of keccak256-hashing the given block number with the randomness value generated by the Witnet Oracle blockchain in response to the first non-errored randomize request solved after such block number.\"},\"fetchRandomnessAfterProof(uint256)\":{\"notice\":\"Retrieves the actual random value, unique hash and timestamp of the witnessing commit/reveal act that tookplace in the Witnet Oracle blockchain in response to the first non-errored randomize requestsolved after the given block number.\"},\"getLastRandomizeBlock()\":{\"notice\":\"Returns last block number on which a randomize was requested.\"},\"getRandomizeData(uint256)\":{\"notice\":\"Retrieves metadata related to the randomize request that got posted to the Witnet Oracle contract on the given block number.\"},\"getRandomizeNextBlock(uint256)\":{\"notice\":\"Returns the number of the next block in which a randomize request was posted after the given one. \"},\"getRandomizePrevBlock(uint256)\":{\"notice\":\"Returns the number of the previous block in which a randomize request was posted before the given one.\"},\"getRandomizeStatus(uint256)\":{\"notice\":\"Returns status of the first non-errored randomize request posted on or after the given block number.\"},\"isRandomized(uint256)\":{\"notice\":\"Returns `true` only if a successfull resolution from the Witnet blockchain is found for the first non-errored randomize request posted on or after the given block number.\"},\"random(uint32,uint256,uint256)\":{\"notice\":\"Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using the given `nonce` and the randomness returned by `getRandomnessAfter(blockNumber)`. \"},\"randomize()\":{\"notice\":\"Requests the Witnet oracle to generate an EVM-agnostic and trustless source of randomness. \"},\"witnetQuerySLA()\":{\"notice\":\"Returns the SLA parameters required for the Witnet Oracle blockchain to fulfill when solving randomness requests:- number of witnessing nodes contributing to randomness generation- reward in $nanoWIT received by every contributing node in the Witnet blockchain\"},\"witnetRadHash()\":{\"notice\":\"Unique identifier of the RNG data request used on the Witnet Oracle blockchain for solving randomness.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/mocks/WitnetMockedRandomness.sol\":\"WitnetMockedRandomness\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x631188737069917d2f909d29ce62c4d48611d326686ba6683e26b72a23bfac0b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7a61054ae84cd6c4d04c0c4450ba1d6de41e27e0a2c4f1bcdf58f796b401c609\",\"dweb:/ipfs/QmUvtdp7X1mRVyC3CsHrtPbgoqWaXHp3S1ZR24tpAQYJWM\"]},\"@openzeppelin/contracts/access/Ownable.sol\":{\"keccak256\":\"0xff6d0bb2e285473e5311d9d3caacb525ae3538a80758c10649a4d61029b017bb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed324d3920bb545059d66ab97d43e43ee85fd3bd52e03e401f020afb0b120f6\",\"dweb:/ipfs/QmfEckWLmZkDDcoWrkEvMWhms66xwTLff9DDhegYpvHo1a\"]},\"@openzeppelin/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0xe06a3f08a987af6ad2e1c1e774405d4fe08f1694b67517438b467cecf0da0ef7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://df6f0c459663c9858b6cba2cda1d14a7d05a985bed6d2de72bd8e78c25ee79db\",\"dweb:/ipfs/QmeTTxZ7qVk9rjEv2R4CpCwdf8UMCcRqDNMvzNxHc3Fnn9\"]},\"@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0x493033a8d1b176a037b2cc6a04dad01a5c157722049bbecf632ca876224dd4b2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a708e8a5bdb1011c2c381c9a5cfd8a9a956d7d0a9dc1bd8bcdaf52f76ef2f12\",\"dweb:/ipfs/Qmax9WHBnVsZP46ZxEMNRQpLQnrdE4dK8LehML1Py8FowF\"]},\"@openzeppelin/contracts/utils/ReentrancyGuard.sol\":{\"keccak256\":\"0x11a5a79827df29e915a12740caf62fe21ebe27c08c9ae3e09abe9ee3ba3866d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3cf0c69ab827e3251db9ee6a50647d62c90ba580a4d7bbff21f2bea39e7b2f4a\",\"dweb:/ipfs/QmZiKwtKU1SBX4RGfQtY7PZfiapbbu6SZ9vizGQD9UHjRA\"]},\"@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xddce8e17e3d3f9ed818b4f4c4478a8262aab8b11ed322f1bf5ed705bb4bd97fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8084aa71a4cc7d2980972412a88fe4f114869faea3fefa5436431644eb5c0287\",\"dweb:/ipfs/Qmbqfs5dRdPvHVKY8kTaeyc65NdqXRQwRK7h9s5UJEhD1p\"]},\"@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x79796192ec90263f21b464d5bc90b777a525971d3de8232be80d9c4f9fb353b8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f6fda447a62815e8064f47eff0dd1cf58d9207ad69b5d32280f8d7ed1d1e4621\",\"dweb:/ipfs/QmfDRc7pxfaXB2Dh9np5Uf29Na3pQ7tafRS684wd3GLjVL\"]},\"ado-contracts/contracts/interfaces/IERC2362.sol\":{\"keccak256\":\"0x4df66aa83b94d7c3d52aba3522b6eeafc19f2c45299b7c871ef46eb199ee4f6b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0af92023c38ab97a95fb7e2a196a697cfc1d90bb1b8bfe73e0ba69cbb7a8f5ab\",\"dweb:/ipfs/QmVSBWxe2QCZvAxiuTfEwprK9MbDtFNptoWeMBbmUcwQnx\"]},\"project:/contracts/WitnetFeeds.sol\":{\"keccak256\":\"0x63cfffc29fd03a7ec3818a6989f9f33f1fcb6d5442ad91397057dcabc6e2ae7c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://03ec4a156972fd6cd626f0c4c5d191d4b48934a42167bba5d143e32efebd3752\",\"dweb:/ipfs/QmTM85sFCfP1ikHsBznELkRGYfugJko3gwtc6RPSgXoN4f\"]},\"project:/contracts/WitnetOracle.sol\":{\"keccak256\":\"0x84ef8d2ebcba273e4bc23a5ee414a1213df55d1b4e496197a146031fea3a4874\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c4a6e31964ed08c4c9dfe5279b4ffe9eeba6e759f15901e080e174e98e96a7f5\",\"dweb:/ipfs/QmTghzVFf2EHnfnHejgFGRBjanXYcstK9ftVaYmHWJfk8w\"]},\"project:/contracts/WitnetPriceFeeds.sol\":{\"keccak256\":\"0x39c71fddffeea3dab7e9c380a63d193e7a6104cf64e7be459c8305f7dcff08a3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5bc610939116dbac6c9105b336a572c38a5b674c7aedeeacac8cb7d89c2e5382\",\"dweb:/ipfs/QmeRKxkRBhs5pjxRvRj2ZNqimfYN4vQc9p3Qna5yKmGw3p\"]},\"project:/contracts/WitnetRandomness.sol\":{\"keccak256\":\"0xa18727bf1e426ea2cd9c51e29f20090d2e305bd4548225b612deac8a175eb290\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://358755b23533fd4e59c26de21a5996a494867ff9324f5a8969674cc50f0de371\",\"dweb:/ipfs/QmSbLdscuJTortmR4LoCriKbGTSepUgMuxptN9xCsFuFJ1\"]},\"project:/contracts/WitnetRequest.sol\":{\"keccak256\":\"0x5b5e8e9744de10fe86adf97826e3db5c5bcbf357d179a532ef4d7073c7c3af88\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://25bed2c86e46beb6f59024b731b9f3d1ab176312a28b090ad149ddea48841c32\",\"dweb:/ipfs/QmT3aAXfKQ2MTHo4dK1pCyhdvaLYf5TJtgcim5DfbWHjp4\"]},\"project:/contracts/WitnetRequestBytecodes.sol\":{\"keccak256\":\"0x2a79d919dd79c0e3f857e6bee08368ad0b463188aced4a52de29270ed0f5f3d2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://290d6013ee9f75fedbbb7726527a637ea2ae7a5da0ad118ecc43b298846f0bb0\",\"dweb:/ipfs/QmU8AZtPyctrrvxdmH297p595ZMS6DgcD6djSFKNxAqYMs\"]},\"project:/contracts/WitnetRequestFactory.sol\":{\"keccak256\":\"0x3c66f27d7c1db0e662c37d98005c4cbd871ceb75e97079d7bf673fb75d59c858\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://52adb318b870d0825718125e94fdbdd0e968ced09926420e2543b0ca4c6eb579\",\"dweb:/ipfs/QmYack87Q2UTfQb8KLLEPFBrMJgN2o6PaPqPNSc95McPVH\"]},\"project:/contracts/WitnetRequestTemplate.sol\":{\"keccak256\":\"0x10084f4f493f87d0acd9937fa786bf9e92512bf3670ee0427445d43c2cae973e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2491b8a6ec8f01a53f35f6aa602df8630955000f3dc67e7dc8b61b0b25a71657\",\"dweb:/ipfs/QmXEuPy6pVnSQpbg8G1DuVMKQyVfbTdtsDUrPYCbZNHARD\"]},\"project:/contracts/apps/UsingWitnet.sol\":{\"keccak256\":\"0x3fe6f2f1162bd1c128fb6aad2db81eaa1fdf04b5d15a5eeadf3e44bc81e2d4ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://927de4c99298ede8a240305bfd8e9daa5c79a32ed68cef19ece9b7f5bb37860b\",\"dweb:/ipfs/QmeZEbXpCTHegD6H7cVDipyXLYHUE4e3C66XojzYk8CpE4\"]},\"project:/contracts/apps/WitnetRandomnessV2.sol\":{\"keccak256\":\"0x37d7fd285315e04e985c4292b48f7fc76d7f32b3394385c99428d8ac80ede389\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c2ed10cbe60c7b3c68e5d6f01b02d10d8724863194c77fb293f74cd673cc0e64\",\"dweb:/ipfs/QmfTeQaZm6Fcn9pEfKjxdcrQWg9infgKiaXxwfzYRapb8N\"]},\"project:/contracts/core/WitnetProxy.sol\":{\"keccak256\":\"0x2b2f56fc69bf0e01f6f1062202d1682cd394fa3b3d9ff2f8f833ab51c9e866cc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8017f76a71e4a52a5a5e249081c92510bac5b91f03f727e66ff4406238521337\",\"dweb:/ipfs/QmdWcPAL3MGtxGdpX5CMfgzz4YzxYEeCiFRoGHVCr8rLEL\"]},\"project:/contracts/core/WitnetUpgradableBase.sol\":{\"keccak256\":\"0x9cea47781e0005266e14fadf8d1ee565d0814d4d51b30dced11bdee37b663060\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb1f843f53c693f4b5a8f32249ac2eb93095671b99c90aa7c6d335eb7153e827\",\"dweb:/ipfs/QmSLvVGCcg2FZVWPB82yVb57SFixkuDm2BqjvgzJpnYfZp\"]},\"project:/contracts/core/defaults/WitnetOracleTrustableBase.sol\":{\"keccak256\":\"0xeb14d9ac86e9983b41cc3a307acd4e6546c9c3f790234ca1c208aa4c189a27df\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://73c7f71f22a0cf9e70681641b131ba42233c6bd03c4170d5ac153153de206c04\",\"dweb:/ipfs/QmPMKe45EGWbUoDPTF2Y8VDZ8Q3eEfbJFHt8DW9Y5x6NYn\"]},\"project:/contracts/core/defaults/WitnetOracleTrustableDefault.sol\":{\"keccak256\":\"0x3e4ce76102aef381af61296fb19e5fa1e36682cb13f0c21b882b590b06efc218\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ae39d2d0043a5b073177eb94f876dda7a2531d99f01162852d513dee36a7465e\",\"dweb:/ipfs/QmdGnCi4m478KEUdFv5w9Zqmmdc1SgmYB6KeRtbW4MC41P\"]},\"project:/contracts/core/defaults/WitnetPriceFeedsDefault.sol\":{\"keccak256\":\"0x29b7f4f082c2d6f6f58ab10224ec808fd900baf1bc338286a1d45c2af20014f2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c0ae76597a1d376a3ed0d68aa9f1458345ead06b73fb4151dd6b6348d30265d2\",\"dweb:/ipfs/QmSfScGKHTWZSwdDnsR7pYWDxCEvHtJKNEZK5tZEocv2cd\"]},\"project:/contracts/core/defaults/WitnetRequestBytecodesDefault.sol\":{\"keccak256\":\"0xc374ee78ae25ddf24168134d9f57f39db3ad4dc7eeac74db872acf16a7e63973\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ed598640e3dbff2d9aaf29000196a6f781546462eae00a3bb5a91f1db96b7bbe\",\"dweb:/ipfs/QmZUkx21gb1hz75Xm6bLeknXJewy3cjaCEkC3YdPw9niN5\"]},\"project:/contracts/core/defaults/WitnetRequestFactoryDefault.sol\":{\"keccak256\":\"0x2a5c91bb433afaa9ddfa674a1847bbdc5b0a59594a6a2ceed863fbb6c1473ab8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://80e9db7f239a5c67b0f521206e553576b127045a8c3852a9c8ca5eded8d32305\",\"dweb:/ipfs/QmZBEBX18QU6h2v7P6tnYDE7x1S9RXTMWkJimyHEQ7w25a\"]},\"project:/contracts/data/WitnetOracleDataLib.sol\":{\"keccak256\":\"0x03c8b61605f0c5324047aa99c896fe189933e3e9a59b070b9b3ea6141f7db960\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cedd0416337f718a44bbbaf53efa99ba490f7de1e6ab45f6bdf29e03082aa29d\",\"dweb:/ipfs/Qmb8RUaZEFX5CvE1VTYpTrm1EhM62gAUcZ4dGt3w39gZBA\"]},\"project:/contracts/data/WitnetPriceFeedsData.sol\":{\"keccak256\":\"0x8cc848254deb42ab5c6d29d02c312c42cbee2b88f9dfed4289f990faa9079787\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://23922b87c483c75397f5a5a8837ac8feef98517893dc4f38ec3f8f830263f15c\",\"dweb:/ipfs/QmUk9Re19ft1qqpPbG4RDMuZRe9Cj7dChHhhVmvjeH3GLj\"]},\"project:/contracts/data/WitnetRequestBytecodesData.sol\":{\"keccak256\":\"0xfe7cab06f3999216c6db1a280a85370a17cb51d9e487052ab8d18547661d55d4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b53c61a3476416c420658b04b7e1a77c2e634e469ea3837dcbbcb86c17ea2cb2\",\"dweb:/ipfs/QmcBRZPfAcqk4zq5VrPH38hvYhYx7wJUgmAiYrKqLyn8JX\"]},\"project:/contracts/data/WitnetRequestFactoryData.sol\":{\"keccak256\":\"0xb3528c3284a976fb0a16612099f32210bdbda911864c3c8eaac5c6080ac48c5d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://480ba9c2845d017fd3f9e629b09847ae541a9051f6a1f7fdc44d4b3cb48ec527\",\"dweb:/ipfs/Qmew29QFLgNSfC74qFP5TbitnvzfC7hMRyehNqkxmjtexX\"]},\"project:/contracts/interfaces/IFeeds.sol\":{\"keccak256\":\"0x4edf84815f844f8ca6e4a277fab21082d3bb2b5e6c2b50198551b0f9aad88121\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://848dd5a610dbb08b566ed9878d09e1c2d37d1849327834b61d0d7ba35beab80f\",\"dweb:/ipfs/Qma4VvwjgTB7Na5WEv6tdxs6VbTuMtkW8GMJzxFsXiqbVE\"]},\"project:/contracts/interfaces/IWitnetConsumer.sol\":{\"keccak256\":\"0xf90fbcf0a59428c0ac13a3903214656060a95175adfdef8c11a7e16675b849e0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c2606640d3f343051ea18dfb8e136dfdb73ceecd8016c82ddb73d67ad39a30e0\",\"dweb:/ipfs/QmTADVW4M8pge6pGfenFAauEDk4yZEy78o5ksZiKGwP3DT\"]},\"project:/contracts/interfaces/IWitnetFeeds.sol\":{\"keccak256\":\"0xc25f2a3789b2773cf9adeb42f44a309ac0149b8a17971a0802ad1ce1cfefa211\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c5168913fbdada53072e4539b2c2e91e6db2de1fe334ab7968a72075ef8760f3\",\"dweb:/ipfs/QmaBigUMBB2mE7z368RsGdfN2r7y1vJaA3Xe4riLAaAQYY\"]},\"project:/contracts/interfaces/IWitnetFeedsAdmin.sol\":{\"keccak256\":\"0x2c579a1cce3a3e9d8f63ff2bb0ed4dd51a64cf65af8ba7a990652fb32bcd59d0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b46a0b1acf1ac98ac628cc94fde6d0311c9f1b427d3f16ba6a6b0bbae52ed5fb\",\"dweb:/ipfs/QmV1efnWWAm5pnhtkS79sZQVV4zMJFmsgrhocNN111KVmX\"]},\"project:/contracts/interfaces/IWitnetOracle.sol\":{\"keccak256\":\"0x5dbb04fce5e05675325232a735c46617378982b48dac2138aca0c6cc95e6e4d5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7447a70455478239500e16aebe5dce6676dc86307d22f662761d8e9f7c5d1276\",\"dweb:/ipfs/QmVkvA4Mt6G1JXxE8ebxKGAjT1WvNbp5QMKg9sUKdrJjhv\"]},\"project:/contracts/interfaces/IWitnetOracleEvents.sol\":{\"keccak256\":\"0x0442f474f253dc1f6bd6a4f153c3adb2abe5f6f0f24c76d1baf666185e61e659\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://535e8efcfc5693669d9bd2b6f62e6fc65aca19b7de355a27152e4362b410540d\",\"dweb:/ipfs/QmVZRXgku1cZewhoucebaiBKAyUjF2dmEzYrzGvjPzbwN9\"]},\"project:/contracts/interfaces/IWitnetOracleReporter.sol\":{\"keccak256\":\"0xf4726c5c522b99ce01c2c870c259ebb8dc1563a25df3d715ed78cff89a8bb122\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://11d4d7205c416fc2927856c2ab64a7d2d5374900c6ad41320f512a0f2e17f215\",\"dweb:/ipfs/QmW8gmJ5rkd4K7ahPQ6KuCQ5wdnhoZJTpSL5iPkZcg2dAe\"]},\"project:/contracts/interfaces/IWitnetPriceFeeds.sol\":{\"keccak256\":\"0xa667f859734bc20c34a07c35a9fda348e4f3242a8d2391b84c4ac8534fbcdc7d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://81e6a9286ce05cbac22b05e89e6ed9395a5650d73aeef778bbf50b845539ab7d\",\"dweb:/ipfs/QmT26ovLwnCkGmXC7mF3CrmcZEJa3rxQF2YT97mnuxUyqz\"]},\"project:/contracts/interfaces/IWitnetPriceSolver.sol\":{\"keccak256\":\"0x858441dafaa0617a8d679b3cda493b418284d865899c3f235cb3f41535db7a16\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://43d25f8985aede9c32cee369872a9f21db41c7b9abc87d5d4d02ff7e15879b98\",\"dweb:/ipfs/QmdoZnVpx9FZeg8KHgMjGRLmVKtdn7zzFTadFUjT8xd3dR\"]},\"project:/contracts/interfaces/IWitnetPriceSolverDeployer.sol\":{\"keccak256\":\"0x52d4e504fb6e699893a592ba5723794688c70ad36af7eb5ffdc08e692b2ddb21\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4ab7f54312c0c8443e9220d41a72513ef84377d315cad3c49397da94361d5c42\",\"dweb:/ipfs/QmRTJtxnoRhh9AXMixRvSa8BT4vprZttLgqGzmLEjZG6oB\"]},\"project:/contracts/interfaces/IWitnetRandomness.sol\":{\"keccak256\":\"0xe1dece4459bee43e03cbc83e3feb455de406e633c778ac70e3da5d0c65402d68\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8d79acbdbddc0882e6067d4722184423102b78fa1ca9fd94e4d0b9c6dd9f4485\",\"dweb:/ipfs/QmVs5it4bV2cqZPfdCejmHh3SybxciuQoKE8pswUWqPc1R\"]},\"project:/contracts/interfaces/IWitnetRandomnessAdmin.sol\":{\"keccak256\":\"0x496cd3d89fb8bb44dc627da202372fab60a5422b12d00fe97582a8fa1e6fd856\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://99f15e8dc494e45e3a9540f3c8ca1d996faed9ae1de3d931d5e7acd87ca15adc\",\"dweb:/ipfs/QmYEQx7KtDRiUzUDfLRm1WnguF6LkiYtLVq6nkRg9CraS4\"]},\"project:/contracts/interfaces/IWitnetRandomnessEvents.sol\":{\"keccak256\":\"0x3d5510777da725c0772a04bc40a967c07713139bc50bb732462baccc1acfb0eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://481f334e116fa761e2d9fdc668cf9278c8d192f0b0511066637dab6011fac908\",\"dweb:/ipfs/QmS1Vh6Xab5oBmTxLempvGvpAsVfEQthbrg1aWXe2SqRRa\"]},\"project:/contracts/interfaces/IWitnetRequestBoardAdminACLs.sol\":{\"keccak256\":\"0xf7dccb4e47d281ce229a9dc219fb2b30dea26f6ad80225f21c75b103d5ab1230\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://814f304ff435f64bbcac9ac512ca636c3245f522f87285909c9a9e0ec6dc5368\",\"dweb:/ipfs/QmXtmoYRgm2iXQmLUmVoRz8d5PNqrZXid4SgX4BoDs8rcm\"]},\"project:/contracts/interfaces/IWitnetRequestBytecodes.sol\":{\"keccak256\":\"0x8da168bee9a78442216965976b1f29087f760f37dcb09337283242599ed1cbca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e120623262ee0559913bdae56c0a7921147dfe08ada7ea81061b14e2fc38c5e1\",\"dweb:/ipfs/Qmbxe8XRrH6ZjJHiR6YYzcZV1jnSWwo9iBYz5r6GJ6To5G\"]},\"project:/contracts/interfaces/IWitnetRequestFactory.sol\":{\"keccak256\":\"0x3b19ec4a976745ba2646e7e1886d647ef30ad678460a712c93bbfb4405b57f1f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fa759ae15b7d4da622a81d50933474910959ac490d8b63ea2e7ed8608859a9c9\",\"dweb:/ipfs/QmRckCu7eBBP5fn9ff6djs7VbdhFc7sxYb2yqDr4go66jV\"]},\"project:/contracts/libs/Slices.sol\":{\"keccak256\":\"0x9d046fa558be922c9625a1fdc470f6e68b3c9b5745b6185cb4a4fc59181fa006\",\"license\":\"APACHE-2.0\",\"urls\":[\"bzz-raw://ab19ba09faf83aaa92947f0a0907f6522be89279a9a1b0e53d5393a23085947d\",\"dweb:/ipfs/QmeE9MwhpSFNTwyqDFpMFjftrJKR1edBhLjV3bdKQQHUVm\"]},\"project:/contracts/libs/Witnet.sol\":{\"keccak256\":\"0x65a87375dd79d63a83fb454b7199b6c999bd59c50b3b59d521c5c4d45a7d3cc3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ca865b681d810c2fc5c3672ea6343c3bdf6fd71764ab824d25994744dc85866b\",\"dweb:/ipfs/QmPGcP3xGTNZfsQ9GSKdujNLRVs8dWDdubyUko1rbQqJNv\"]},\"project:/contracts/libs/WitnetBuffer.sol\":{\"keccak256\":\"0xa14570492eb5a313ddbacae0185c850ec99c67211eb33989a5e21d31bf06a150\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e83c11edb49cab6a767c0b685825bc22ece0d3d2897e0d54fe1923df5cc76ba5\",\"dweb:/ipfs/QmdLDgCc3tnKbgRrXwfNzsg6uUDirNmjvBB8V3iMmnD69a\"]},\"project:/contracts/libs/WitnetCBOR.sol\":{\"keccak256\":\"0xb346547ff731163beea2c657c52675cdf7936691d566a76a045577cf9c34ade0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6d4b5b6424a033584b41f1204d635db98fda9ca9bd2a614c9d82539a3e4e6529\",\"dweb:/ipfs/QmW6Qy3wWpzHSECYaCPaf9LWGfPqWDKVoP2kPSNNQu7LMQ\"]},\"project:/contracts/libs/WitnetEncodingLib.sol\":{\"keccak256\":\"0x2c2ccc824f28dccdfb0b51c26a09b5cf1dc3c0519933e01b1a4211cee3634cb9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4f5b7e3db8dcbdf521ad510ae3edbbc5accccbfabaf31a50bfe21ef9f5c40973\",\"dweb:/ipfs/QmZktfyrGF5pmaYerDA6oZYVwRt2HEeGk1Q7ruAG66QtXh\"]},\"project:/contracts/libs/WitnetErrorsLib.sol\":{\"keccak256\":\"0x6cc28a70034f65099ec7e69d03a6c9cb643a77032c0e6d76532b77b036ef8436\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://44eff62b48c4daf5606fae9b04dca6201af4336909d5966c2a2503c866b9efb0\",\"dweb:/ipfs/QmSc4qNo2ymtCevvgDKESYuVi1JD7PCWbMKfDoEhNwj4aS\"]},\"project:/contracts/libs/WitnetPriceFeedsLib.sol\":{\"keccak256\":\"0x28b4a473e8432d83ecdfcb9b712277e51f1090e7f827cec14bf0ad56efebf3df\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c09a3799d20b35a94aa3246706426ee54bd18031aa68c13f93554491f5d088d0\",\"dweb:/ipfs/QmUUt459tcusH5TnriFpNDTeKCfEtEX6E6Y8RANFzfLDVb\"]},\"project:/contracts/libs/WitnetV2.sol\":{\"keccak256\":\"0xb276a6da373bfbe9cd942dd7e59979cda898215d1e36ab3df95a6d6cc6ff770f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc4890876b9bc64f501ccdd48408bb63724865cb2ce8d2057f6b318540adce7c\",\"dweb:/ipfs/QmPMHPdbCsKBavhiLcaDgQ9EjNSvwwzv8TKffotcCv1ctP\"]},\"project:/contracts/mocks/WitnetMockedOracle.sol\":{\"keccak256\":\"0x7e3dacf761ab257a5d9d374a046585f02f6d562c5ba20ee07d3c0a67a84d47f1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9f080e65979686b334b76911e9045503d4dab7a1a556dca4237d636dc22d749b\",\"dweb:/ipfs/QmQqy7Jri7qJFZ4KwsFRaRCTSBT2DoUAF8tzjgLN32JUcx\"]},\"project:/contracts/mocks/WitnetMockedPriceFeeds.sol\":{\"keccak256\":\"0xc0744563d93708e73b6443586689edbcce73e650cdd6c269145b13ede114b933\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://773fde874532cb96b4daa8cd7421b9762bcd88901313c994979920d1506a675e\",\"dweb:/ipfs/QmeFVt1SKHcvx8uaEHAAaStjntLTCtdUXK9WTWjqNcoVf4\"]},\"project:/contracts/mocks/WitnetMockedRandomness.sol\":{\"keccak256\":\"0xe16d2ed1ee2c8a969dfa2909aa70be88c98436747b5931f1ea18bd0cf162a5ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c76e5859ba319681c3984d03409bad2e1cb9831288693b27c3dbbab7a9abf150\",\"dweb:/ipfs/QmYGaZKF3ER7sq7vntC1G2jRWLg5fNNhAHwsMNTNauWJrG\"]},\"project:/contracts/mocks/WitnetMockedRequestBytecodes.sol\":{\"keccak256\":\"0x2894dae277c770f306b470bb430a29539da13232e89e9a21348fcc602e417190\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f26af44ca845526dccb5a42faa56ee87d4b60deae665b5d70ad8a7ecc76867e6\",\"dweb:/ipfs/QmfTUQT8kRSENTeNjdFF5WbjHtNhroYkjRe8BzddNKh8ez\"]},\"project:/contracts/mocks/WitnetMockedRequestFactory.sol\":{\"keccak256\":\"0x5534149bde65bb7c8133582d23d6ca84d285c292a7af616747df635393067d61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://90457003dd0ffe181111c92e9cebc6a189e486a6bec554af4366fe87ffcde146\",\"dweb:/ipfs/QmapnUAXKpp9MpiKhw93oL6TaiBzja2m6WaHUyaK8zJQAN\"]},\"project:/contracts/patterns/Clonable.sol\":{\"keccak256\":\"0xdfaf080d882e5b4f5e419da4ed2a5f1f0367eb2449b37b9d62d6b3d5649c3b6a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ed194f0ddb44f9c2e14156090f1f43c055d4fda23115041ab928da9ca538f6ed\",\"dweb:/ipfs/QmZnD4Z9yrT1SY5HTZagwv1bT9FJfsgmntZHf9qzLwDX7K\"]},\"project:/contracts/patterns/Initializable.sol\":{\"keccak256\":\"0xaac470e87f361cf15d68d1618d6eb7d4913885d33ccc39c797841a9591d44296\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ef3760b2039feda8715d4bd9f8de8e3885f25573d12ba92f52d626ba880a08bf\",\"dweb:/ipfs/QmP2mfHPBKkjTAKft95sPDb4PBsjfmAwc47Kdcv3xYSf3g\"]},\"project:/contracts/patterns/Ownable.sol\":{\"keccak256\":\"0x494bda32f9a218d9c33ea82112129c0933ab52f57eabfbf0d14a8742a3370800\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6c4cf04ebb052fed9d15cf93ff4523955ee311aa4425ee85f0e80b4489c94e76\",\"dweb:/ipfs/QmfMf4WD7woTaQSTbJxxoan2aXSeY7ovY5NoipSBw5rMPK\"]},\"project:/contracts/patterns/Ownable2Step.sol\":{\"keccak256\":\"0x7033d8133957a291cf9b8be30bfc4b95e6414a20995911d1b5df8ea149580604\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e20a079adc224113306392d27e0cf202c6c4a7678c4705fd3bbbca99c1e9b816\",\"dweb:/ipfs/QmWrFv2SbSokhrWhwL94sW5x1HyT7rX5f4Scowe4bWHHqu\"]},\"project:/contracts/patterns/Payable.sol\":{\"keccak256\":\"0x83401b23b1c144561e674e86738e0d907c8fa15d90d79254415b3f5f215035c9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e031f9a24c7030cd2d160a64a581fd3a69a06d7dc71bcf704b48f391c3d63fc6\",\"dweb:/ipfs/QmVpX6PdfgPGJZp3W5H4CGqVUqmNx9ttb4V5cz3YgBTypQ\"]},\"project:/contracts/patterns/Proxiable.sol\":{\"keccak256\":\"0x86032205378fed9ed2bf155eed8ce4bdbb13b7f5960850c6d50954a38b61a3d8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f89978eda4244a13f42a6092a94ac829bb3e38c92d77d4978b9f32894b187a63\",\"dweb:/ipfs/Qmbc1XaFCvLm3Sxvh7tP29Ug32jBGy3avsCqBGAptxs765\"]},\"project:/contracts/patterns/ReentrancyGuard.sol\":{\"keccak256\":\"0x1470caf4bd78b79f706e28a8a85c95a6e13ec33eda04275e5da84464130831e6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c974fb4dc29718a84f9ab5fa3f8c25c7f889050a38445e16c3ead5ff9d4b4bab\",\"dweb:/ipfs/QmbuGjkSjngbTZMRPijL9p56fP9cK5jMnWsFmvYAQj3qAY\"]},\"project:/contracts/patterns/Upgradeable.sol\":{\"keccak256\":\"0xbeb025c71f037acb1a668174eb6930631bf397129beb825f2660e5d8cf19614f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fe6ce4dcd500093ae069d35b91829ccb471e1ca33ed0851fb053fbfe76c78aba\",\"dweb:/ipfs/QmT7huvCFS6bHDxt7HhEogJmyvYNbeb6dFTJudsVSX6nEs\"]}},\"version\":1}",
  "bytecode": "0x60c060405234801561001057600080fd5b50604051612fd1380380612fd183398101604081905261002f916106d8565b803381818061005957604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b610062816105ad565b5063baeca88b60e01b6001600160e01b031916816001600160a01b031663adb7c3f76040518163ffffffff1660e01b8152600401602060405180830381865afa1580156100b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100d791906106fc565b6001600160e01b0319161461013c5760405162461bcd60e51b815260206004820152602560248201527f5573696e675769746e65743a20756e636f6d706c69616e74205769746e65744f6044820152647261636c6560d81b6064820152608401610050565b6001600160a01b0390811660805260408051808201909152600a8152630bebc20060209091015260028054640bebc2000a6001600160481b03199091161790556003805461ffff191660211790556102509083161580610217575063baeca88b60e01b6001600160e01b031916836001600160a01b031663adb7c3f76040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061020b91906106fc565b6001600160e01b031916145b60408051808201909152601881527f756e636f6d706c69616e74205769746e65744f7261636c65000000000000000060208201526105c9565b600061025a6105db565b6001600160a01b0316637b1039996040518163ffffffff1660e01b8152600401602060405180830381865afa158015610297573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102bb91906106d8565b60408051600180825281830190925291925060009190602080830190803683375050604080516000808252602082019092529293506001600160a01b03851692639eb3ab1f9250600291610325565b61031261069c565b81526020019060019003908161030a5790505b506040518363ffffffff1660e01b81526004016103439291906107a2565b6020604051808303816000875af1158015610362573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103869190610885565b816000815181106103995761039961089e565b60200260200101818152505060606000836001600160a01b0316637f412e2360405180604001604052806002600b8111156103d6576103d661073c565b8152602001858152506040518263ffffffff1660e01b81526004016103fb91906108b4565b6020604051808303816000875af115801561041a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061043e9190610885565b90506000846001600160a01b0316637f412e236040518060400160405280600b8081111561046e5761046e61073c565b8152602001868152506040518263ffffffff1660e01b815260040161049391906108b4565b6020604051808303816000875af11580156104b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104d69190610885565b9050846001600160a01b031663a4a7cecd858484602089516001600160401b0381111561050557610505610726565b60405190808252806020026020018201604052801561053857816020015b60608152602001906001900390816105235790505b506040518663ffffffff1660e01b815260040161055995949392919061095b565b6020604051808303816000875af1158015610578573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059c9190610885565b60a05250610aa09650505050505050565b600180546001600160a01b03191690556105c6816105eb565b50565b816105d7576105d78161063b565b5050565b60006105e660805190565b905090565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6040805180820190915260128152712bb4ba3732ba2930b73237b6b732b9b9ab1960711b602082015281604051602001610676929190610a50565b60408051601f198184030181529082905262461bcd60e51b825261005091600401610a8d565b60405180604001604052806002905b60608152602001906001900390816106ab5790505090565b6001600160a01b03811681146105c657600080fd5b6000602082840312156106ea57600080fd5b81516106f5816106c3565b9392505050565b60006020828403121561070e57600080fd5b81516001600160e01b0319811681146106f557600080fd5b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052602160045260246000fd5b60005b8381101561076d578181015183820152602001610755565b50506000910152565b6000815180845261078e816020860160208601610752565b601f01601f19169290920160200192915050565b6000600584106107b4576107b461073c565b838252602060a08184015260008060a0850152604060c06040860152600060c086015260e0850160e0606087015280875180835261010092508288019150828160051b890101925085890160005b8281101561085b5789850360ff19018452815185878101895b6002811015610846578882038352610834828551610776565b938c0193928c0192915060010161081b565b50965050509287019290870190600101610802565b50505050858103608087015260018152600160ff1b60208201526040810198975050505050505050565b60006020828403121561089757600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b60006020808352606083018451600c81106108d1576108d161073c565b828501528482015160408086018190528151928390526080600584901b8701810193928501929087019060005b8181101561094d57888603607f1901835284518051600a81106109235761092361073c565b875287015187870185905261093a85880182610776565b96505093860193918601916001016108fe565b509398975050505050505050565b60a0808252865190820181905260009060209060c0840190828a01845b8281101561099457815184529284019290840190600101610978565b505050878285015286604085015261ffff86166060850152838103608085015280855180835283830191506005848260051b85010185890160005b84811015610a3d57601f198784038101875282518051808652908a01908a86019080881b87018c0160005b82811015610a265785898303018452610a14828651610776565b948e0194938e019391506001016109fa565b50998c0199965050509289019250506001016109cf565b50909d9c50505050505050505050505050565b60008351610a62818460208801610752565b6101d160f51b9083019081528351610a81816002840160208801610752565b01600201949350505050565b6020815260006106f56020830184610776565b60805160a0516124d4610afd600039600081816102d20152610a84015260008181610288015281816107dc0152818161088301528181610a5401528181610c7701528181610e2e01528181611255015261130901526124d46000f3fe60806040526004361061014f5760003560e01c80639bc86fec116100b6578063c0248bf11161006f578063c0248bf11461051f578063d2bc459b1461053f578063de0958ac1461055f578063e30c39781461057f578063eb92b29b14610594578063f2fde38b146105b75761018c565b80639bc86fec14610411578063a3252f6814610441578063a60ee2681461047c578063adb7c3f71461049c578063b8d38c96146104be578063bff852fa146104de5761018c565b806376fa9d201161010857806376fa9d201461031f57806379ba50971461034c57806382b1c174146103615780638da5cb5b146103815780638f2616841461039f5780639353badd146103b45761018c565b806317f45487146101f757806324cbbfc11461024457806346d1d21a14610279578063613e9978146102c0578063699b328a14610302578063715018a61461030a5761018c565b3661018c5761018a604051806040016040528060158152602001741b9bc81d1c985b9cd9995c9cc81858d8d95c1d1959605a1b8152506105d7565b005b61018a61019d60003560f81c610641565b6101ae60ff60003560f01c16610641565b6101bf60ff60003560e81c16610641565b6101d060ff60003560e01c16610641565b6040516020016101e39493929190611dd8565b6040516020818303038152906040526105d7565b34801561020357600080fd5b50610217610212366004611e57565b610733565b604080519485526001600160401b0390931660208501529183015260608201526080015b60405180910390f35b34801561025057600080fd5b5061026461025f366004611e82565b6109e6565b60405163ffffffff909116815260200161023b565b34801561028557600080fd5b507f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b03909116815260200161023b565b3480156102cc57600080fd5b506102f47f000000000000000000000000000000000000000000000000000000000000000081565b60405190815260200161023b565b6102f4610a3b565b34801561031657600080fd5b5061018a610bec565b34801561032b57600080fd5b5061033f61033a366004611e57565b610c00565b60405161023b9190611ecd565b34801561035857600080fd5b5061018a610d53565b34801561036d57600080fd5b506102f461037c366004611e57565b610d5b565b34801561038d57600080fd5b506000546001600160a01b03166102a8565b3480156103ab57600080fd5b506102f4610d96565b3480156103c057600080fd5b5060408051808201825260008082526020918201528151808301835260025460ff81168083526001600160401b0361010090920482169284019283528451908152915116918101919091520161023b565b34801561041d57600080fd5b5061043161042c366004611e57565b610da6565b604051901515815260200161023b565b34801561044d57600080fd5b5061046161045c366004611e57565b610dcb565b6040805193845260208401929092529082015260600161023b565b34801561048857600080fd5b506102f4610497366004611e57565b610e03565b3480156104a857600080fd5b5060405163124f910d60e01b815260200161023b565b3480156104ca57600080fd5b5061018a6104d9366004611ef5565b610ec9565b3480156104ea57600080fd5b5060408051808201825260128152712bb4ba3732ba2930b73237b6b732b9b9ab1960711b6020820152905161023b9190611f19565b34801561052b57600080fd5b506102f461053a366004611e57565b610ee9565b34801561054b57600080fd5b5061018a61055a366004611f4c565b610f37565b34801561056b57600080fd5b506102f461057a366004611e57565b610f86565b34801561058b57600080fd5b506102a8610fdf565b3480156105a057600080fd5b5060035460405161ffff909116815260200161023b565b3480156105c357600080fd5b5061018a6105d2366004611f73565b610ff3565b6040805180820190915260128152712bb4ba3732ba2930b73237b6b732b9b9ab1960711b602082015281604051602001610612929190611f90565b60408051601f198184030181529082905262461bcd60e51b825261063891600401611f19565b60405180910390fd5b60408051600280825281830190925260609160009190602082018180368337019050509050600061067360108561200f565b61067e906030612031565b9050600061068d60108661204a565b610698906030612031565b905060398260ff1611156106b4576106b1600783612031565b91505b60398160ff1611156106ce576106cb600782612031565b90505b8160f81b836000815181106106e5576106e561206c565b60200101906001600160f81b031916908160001a9053508060f81b836001815181106107135761071361206c565b60200101906001600160f81b031916908160001a90535091949350505050565b600080600080610741611007565b6000868152600191909101602052604081205490036107665761076385610f86565b94505b6000610770611007565b600101600087815260200190815260200160002090506000816000015490506107c381600014156040518060400160405280600e81526020016d1b9bdd081c985b991bdb5a5e995960921b81525061102b565b60405163234fe6e360e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063234fe6e390602401602060405180830381865afa15801561082b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061084f9190612082565b9050600281600581111561086557610865611eb7565b0361093d57604051637b0c90d960e11b8152600481018390526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063f61921b290602401600060405180830381865afa1580156108d2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526108fa919081019061215d565b9050806040015163ffffffff1696508060600151955080602001516001600160401b03169450610935610930826080015161103d565b61105b565b9750506109db565b600381600581111561095157610951611eb7565b036109a957600283015460408051808201909152601081526f6661756c74792072616e646f6d697a6560801b602082015261098f908215159061102b565b61099881610733565b9750975097509750505050506109df565b6109db6040518060400160405280601181526020017070656e64696e672072616e646f6d697a6560781b8152506105d7565b5050505b9193509193565b6000610a2c8484336109f786610d5b565b604080516001600160a01b03909316602084015282015260600160405160208183030381529060405280519060200120611090565b90505b9392505050565b905090565b600043610a46611007565b541015610ba95734905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316633dc2b7a2837f000000000000000000000000000000000000000000000000000000000000000060026040518463ffffffff1660e01b8152600401610ac292919061220c565b60206040518083038185885af1158015610ae0573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610b059190612236565b90506000610b11611007565b436000908152600191909101602052604081208381559150610b31611007565b5460018301819055905043610b44611007565b6000838152600191909101602052604090206002015543610b63611007565b556040517f8cb766b09215126141c41df86fd488fe4745f22f3c995c3ad9aaf4c07195b94690610b9d9043903a908890889060029061224f565b60405180910390a15050505b34811015610be957336108fc610bbf833461228f565b6040518115909202916000818181858888f19350505050158015610be7573d6000803e3d6000fd5b505b90565b610bf46110ef565b610bfe600061111c565b565b6000610c0a611007565b600083815260019190910160205260408120549003610c2f57610c2c82610f86565b91505b6000610c39611007565b600084815260019190910160205260408120549150819003610c5e5750600092915050565b60405163234fe6e360e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063234fe6e390602401602060405180830381865afa158015610cc6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cea9190612082565b90506003816005811115610d0057610d00611eb7565b03610a2f576000610d0f611007565b6000868152600191909101602052604090206002015490508015610d3f57610d3681610c00565b95945050505050565b506003949350505050565b505b5050919050565b610bfe611135565b600081610d67836111b0565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6000610da0611007565b54919050565b60006002610db383610c00565b6005811115610dc457610dc4611eb7565b1492915050565b600080600080610dd9611007565b60009586526001908101602052604090952080549581015460029091015495969095945092505050565b604051630f7b104360e31b815260048101829052602260248201526000906064906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690637bd8821890604401602060405180830381865afa158015610e75573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e999190612236565b600354610eab9061ffff1660646122a2565b61ffff16610eb991906122bd565b610ec391906122d4565b92915050565b610ed16110ef565b6003805461ffff191661ffff92909216919091179055565b6000808211610efa57610efa6122e8565b6000610f04611007565b549050808311610ec357610f3283610f1a611007565b60008481526001918201602052604090200154611414565b610a2f565b610f3f6110ef565b610f74610f4b82611447565b6040518060400160405280600b81526020016a696e76616c696420534c4160a81b81525061102b565b806002610f81828261230d565b505050565b6000610f90611007565b600083815260019190910160205260408120549003610fc057610fbb82610fb5611007565b546114a0565b610ec3565b610fc8611007565b600092835260010160205250604090206002015490565b6000610a366001546001600160a01b031690565b610ffb6110ef565b611004816114ef565b50565b7f643778935c57df947f6944f6a5242a3e91445f6337f4b2ec670c8642153b614f90565b8161103957611039816105d7565b5050565b611045611d4c565b600061105083611521565b9050610a2f81611546565b600081806000015161107f5760405162461bcd60e51b81526004016106389061235f565b610a2f61108b8461157a565b6115ab565b6000806001600160e01b0383856040516020016110b7929190918252602082015260400190565b60408051601f19818403018152919052805160209091012016905060e06110e463ffffffff8716836122bd565b901c95945050505050565b6000546001600160a01b03163314610bfe5760405163118cdaa760e01b8152336004820152602401610638565b600180546001600160a01b0319169055611004816115b8565b338061113f610fdf565b6001600160a01b0316146111a75760405162461bcd60e51b815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865206044820152683732bb9037bbb732b960b91b6064820152608401610638565b6110048161111c565b60006111ba611007565b6000838152600191909101602052604081205490036111df576111dc82610f86565b91505b60006111e9611007565b6001016000848152602001908152602001600020905060008160000154905061123c81600014156040518060400160405280600e81526020016d1b9bdd081c985b991bdb5a5e995960921b81525061102b565b60405163234fe6e360e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063234fe6e390602401602060405180830381865afa1580156112a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112c89190612082565b905060028160058111156112de576112de611eb7565b0361137d576040516311a7b16760e31b815260048101839052610d3690610930906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638d3d8b3890602401600060405180830381865afa158015611350573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261137891908101906123b1565b61103d565b600381600581111561139157611391611eb7565b036113e257600283015460408051808201909152601081526f6661756c74792072616e646f6d697a6560801b60208201526113cf908215159061102b565b6113d8816111b0565b9695505050505050565b610d4a6040518060400160405280601181526020017070656e64696e672072616e646f6d697a6560781b8152506105d7565b600081831161144157610f3283611429611007565b60008581526001918201602052604090200154611414565b50919050565b60008061145a60408401602085016123ed565b6001600160401b031611801561147f5750600061147a602084018461240a565b60ff16115b8015610ec35750607f611495602084018461240a565b60ff16111592915050565b6000818310156114ce57610f32836114b6611007565b600085815260019182016020526040902001546114a0565b6114d6611007565b6000928352600101602052506040902060020154919050565b6114f76110ef565b6001600160a01b0381166111a757604051631e4fbdf760e01b815260006004820152602401610638565b611529611d6d565b6040805180820190915282815260006020820152610a2f81611608565b61154e611d4c565b5060a0810151604080518082019091526001600160401b03909116602714158152602081019190915290565b606081806000015161159e5760405162461bcd60e51b81526004016106389061235f565b610a2f8360200151611728565b6000610ec3826020611871565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b611610611d6d565b8151518290600003611635576040516309036d4760e21b815260040160405180910390fd5b600060ff816001600160401b038160015b80156116b857611655896118e9565b95508161166181612427565b6007600589901c169650601f8816955092505060051985016116b057602089015161168c8a8661194b565b9350808a6020015161169e919061228f565b6116a89084612440565b925050611646565b506000611646565b600760ff861611156116e25760405163bd2ac87960e01b815260ff86166004820152602401610638565b506040805160c08101825298895260ff95861660208a015293851693880193909352921660608601526001600160401b0390811660808601521660a08401525090919050565b60608160028060ff16826040015160ff161461176857604080830151905161800560e51b815260ff91821660048201529082166024820152604401610638565b61177a8460000151856060015161194b565b6001600160401b03166080850181905263fffffffe19016118505760006117a985600001518660400151611a13565b905063ffffffff8082161015610d4a5784516117ce9063ffffffff80841690611ac016565b6040516020016117de9190612453565b604051602081830303815290604052935061180185600001518660400151611a13565b905063ffffffff8082161015610d4a57845184906118289063ffffffff80851690611ac016565b60405160200161183992919061246f565b604051602081830303815290604052935050610d4c565b6080840151845161186a9163ffffffff90811690611ac016565b9250610d4c565b600060208260ff161115611887576118876122e8565b60008260ff1684511161189b5783516118a0565b8260ff165b905060005b818110156118e157806008028582815181106118c3576118c361206c565b01602001516001600160f81b031916901c92909217916001016118a5565b505092915050565b6000816020015182600001515180821115611921576040516363a056dd60e01b81526004810183905260248101829052604401610638565b835160208501805180830160010151955090819061193e82612427565b8152505050505050919050565b600060188260ff161015611963575060ff8116610ec3565b8160ff1660180361198157611977836118e9565b60ff169050610ec3565b8160ff166019036119a05761199583611b80565b61ffff169050610ec3565b8160ff16601a036119c1576119b483611bec565b63ffffffff169050610ec3565b8160ff16601b036119dc576119d583611c4b565b9050610ec3565b8160ff16601f036119f557506001600160401b03610ec3565b604051636d785b1360e01b815260ff83166004820152602401610638565b600080611a1f846118e9565b90508060ff1660ff03611a3c576001600160401b03915050610ec3565b611a498482601f1661194b565b91506001600160401b0380831610611a7f57604051636d785b1360e01b81526001600160401b0383166004820152602401610638565b60ff83166007600583901c1614611ab95760405161800560e51b81526007600583901c16600482015260ff84166024820152604401610638565b5092915050565b6060818360200151611ad29190612440565b83515180821115611b00576040516363a056dd60e01b81526004810183905260248101829052604401610638565b836001600160401b03811115611b1857611b18611fcd565b6040519080825280601f01601f191660200182016040528015611b42576020820181803683370190505b50925083156118e1578451602080870151908183018101908601611b6781838a611caa565b611b7389896001611cf0565b5050505050505092915050565b600081602001516002611b939190612440565b82515180821115611bc1576040516363a056dd60e01b81526004810183905260248101829052604401610638565b8351602085018051600281840181015196509091611bdf8284612440565b9052509395945050505050565b600081602001516004611bff9190612440565b82515180821115611c2d576040516363a056dd60e01b81526004810183905260248101829052604401610638565b8351602085018051600481840181015196509091611bdf8284612440565b600081602001516008611c5e9190612440565b82515180821115611c8c576040516363a056dd60e01b81526004810183905260248101829052604401610638565b8351602085018051600881840181015196509091611bdf8284612440565b5b60208110611cca578151835260209283019290910190601f1901611cab565b8015610f81578151835160208390036101000a6000190180199092169116178352505050565b60008284600001515180821115611d24576040516363a056dd60e01b81526004810183905260248101829052604401610638565b8315611d3c576020860151611d399086612440565b94505b5050505060209190910181905290565b6040518060400160405280600015158152602001611d68611d6d565b905290565b604080516101008101909152606060c08201908152600060e08301528190815260006020820181905260408201819052606082018190526080820181905260a09091015290565b60005b83811015611dcf578181015183820152602001611db7565b50506000910152565b720dcdee840d2dae0d8cadacadce8cac8744060f606b1b815260008551611e06816013850160208a01611db4565b855190830190611e1d816013840160208a01611db4565b8551910190611e33816013840160208901611db4565b8451910190611e49816013840160208801611db4565b016013019695505050505050565b600060208284031215611e6957600080fd5b5035919050565b63ffffffff8116811461100457600080fd5b600080600060608486031215611e9757600080fd5b8335611ea281611e70565b95602085013595506040909401359392505050565b634e487b7160e01b600052602160045260246000fd5b6020810160068310611eef57634e487b7160e01b600052602160045260246000fd5b91905290565b600060208284031215611f0757600080fd5b813561ffff81168114610a2f57600080fd5b6020815260008251806020840152611f38816040850160208701611db4565b601f01601f19169190910160400192915050565b60006040828403121561144157600080fd5b6001600160a01b038116811461100457600080fd5b600060208284031215611f8557600080fd5b8135610a2f81611f5e565b60008351611fa2818460208801611db4565b6101d160f51b9083019081528351611fc1816002840160208801611db4565b01600201949350505050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060ff83168061202257612022611fe3565b8060ff84160491505092915050565b60ff8181168382160190811115610ec357610ec3611ff9565b600060ff83168061205d5761205d611fe3565b8060ff84160691505092915050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561209457600080fd5b815160068110610a2f57600080fd5b60405160a081016001600160401b03811182821017156120c5576120c5611fcd565b60405290565b6001600160401b038116811461100457600080fd5b600082601f8301126120f157600080fd5b81516001600160401b038082111561210b5761210b611fcd565b604051601f8301601f19908116603f0116810190828211818310171561213357612133611fcd565b8160405283815286602085880101111561214c57600080fd5b6113d8846020830160208901611db4565b60006020828403121561216f57600080fd5b81516001600160401b038082111561218657600080fd5b9083019060a0828603121561219a57600080fd5b6121a26120a3565b82516121ad81611f5e565b815260208301516121bd816120cb565b602082015260408301516121d081611e70565b6040820152606083810151908201526080830151828111156121f157600080fd5b6121fd878286016120e0565b60808301525095945050505050565b82815260608101610a2f60208301845460ff8116825260081c6001600160401b0316602090910152565b60006020828403121561224857600080fd5b5051919050565b600060c0820190508682528560208301528460408301528360608301526113d860808301845460ff8116825260081c6001600160401b0316602090910152565b81810381811115610ec357610ec3611ff9565b61ffff818116838216019080821115611ab957611ab9611ff9565b8082028115828204841417610ec357610ec3611ff9565b6000826122e3576122e3611fe3565b500490565b634e487b7160e01b600052600160045260246000fd5b60ff8116811461100457600080fd5b8135612318816122fe565b60ff8116905081548160ff1982161783556020840135612337816120cb565b68ffffffffffffffff008160081b168368ffffffffffffffffff198416171784555050505050565b60208082526032908201527f5769746e65743a20747269656420746f206465636f64652076616c756520667260408201527137b69032b93937b932b2103932b9bab63a1760711b606082015260800190565b6000602082840312156123c357600080fd5b81516001600160401b038111156123d957600080fd5b6123e5848285016120e0565b949350505050565b6000602082840312156123ff57600080fd5b8135610a2f816120cb565b60006020828403121561241c57600080fd5b8135610a2f816122fe565b60006001820161243957612439611ff9565b5060010190565b80820180821115610ec357610ec3611ff9565b60008251612465818460208701611db4565b9190910192915050565b60008351612481818460208801611db4565b835190830190612495818360208801611db4565b0194935050505056fea2646970667358221220bec1a3d55975c81be97cdbeb13ea1e452f2c1bc5a009b8c57366496fe51576e064736f6c63430008190033",
  "deployedBytecode": "0x60806040526004361061014f5760003560e01c80639bc86fec116100b6578063c0248bf11161006f578063c0248bf11461051f578063d2bc459b1461053f578063de0958ac1461055f578063e30c39781461057f578063eb92b29b14610594578063f2fde38b146105b75761018c565b80639bc86fec14610411578063a3252f6814610441578063a60ee2681461047c578063adb7c3f71461049c578063b8d38c96146104be578063bff852fa146104de5761018c565b806376fa9d201161010857806376fa9d201461031f57806379ba50971461034c57806382b1c174146103615780638da5cb5b146103815780638f2616841461039f5780639353badd146103b45761018c565b806317f45487146101f757806324cbbfc11461024457806346d1d21a14610279578063613e9978146102c0578063699b328a14610302578063715018a61461030a5761018c565b3661018c5761018a604051806040016040528060158152602001741b9bc81d1c985b9cd9995c9cc81858d8d95c1d1959605a1b8152506105d7565b005b61018a61019d60003560f81c610641565b6101ae60ff60003560f01c16610641565b6101bf60ff60003560e81c16610641565b6101d060ff60003560e01c16610641565b6040516020016101e39493929190611dd8565b6040516020818303038152906040526105d7565b34801561020357600080fd5b50610217610212366004611e57565b610733565b604080519485526001600160401b0390931660208501529183015260608201526080015b60405180910390f35b34801561025057600080fd5b5061026461025f366004611e82565b6109e6565b60405163ffffffff909116815260200161023b565b34801561028557600080fd5b507f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b03909116815260200161023b565b3480156102cc57600080fd5b506102f47f000000000000000000000000000000000000000000000000000000000000000081565b60405190815260200161023b565b6102f4610a3b565b34801561031657600080fd5b5061018a610bec565b34801561032b57600080fd5b5061033f61033a366004611e57565b610c00565b60405161023b9190611ecd565b34801561035857600080fd5b5061018a610d53565b34801561036d57600080fd5b506102f461037c366004611e57565b610d5b565b34801561038d57600080fd5b506000546001600160a01b03166102a8565b3480156103ab57600080fd5b506102f4610d96565b3480156103c057600080fd5b5060408051808201825260008082526020918201528151808301835260025460ff81168083526001600160401b0361010090920482169284019283528451908152915116918101919091520161023b565b34801561041d57600080fd5b5061043161042c366004611e57565b610da6565b604051901515815260200161023b565b34801561044d57600080fd5b5061046161045c366004611e57565b610dcb565b6040805193845260208401929092529082015260600161023b565b34801561048857600080fd5b506102f4610497366004611e57565b610e03565b3480156104a857600080fd5b5060405163124f910d60e01b815260200161023b565b3480156104ca57600080fd5b5061018a6104d9366004611ef5565b610ec9565b3480156104ea57600080fd5b5060408051808201825260128152712bb4ba3732ba2930b73237b6b732b9b9ab1960711b6020820152905161023b9190611f19565b34801561052b57600080fd5b506102f461053a366004611e57565b610ee9565b34801561054b57600080fd5b5061018a61055a366004611f4c565b610f37565b34801561056b57600080fd5b506102f461057a366004611e57565b610f86565b34801561058b57600080fd5b506102a8610fdf565b3480156105a057600080fd5b5060035460405161ffff909116815260200161023b565b3480156105c357600080fd5b5061018a6105d2366004611f73565b610ff3565b6040805180820190915260128152712bb4ba3732ba2930b73237b6b732b9b9ab1960711b602082015281604051602001610612929190611f90565b60408051601f198184030181529082905262461bcd60e51b825261063891600401611f19565b60405180910390fd5b60408051600280825281830190925260609160009190602082018180368337019050509050600061067360108561200f565b61067e906030612031565b9050600061068d60108661204a565b610698906030612031565b905060398260ff1611156106b4576106b1600783612031565b91505b60398160ff1611156106ce576106cb600782612031565b90505b8160f81b836000815181106106e5576106e561206c565b60200101906001600160f81b031916908160001a9053508060f81b836001815181106107135761071361206c565b60200101906001600160f81b031916908160001a90535091949350505050565b600080600080610741611007565b6000868152600191909101602052604081205490036107665761076385610f86565b94505b6000610770611007565b600101600087815260200190815260200160002090506000816000015490506107c381600014156040518060400160405280600e81526020016d1b9bdd081c985b991bdb5a5e995960921b81525061102b565b60405163234fe6e360e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063234fe6e390602401602060405180830381865afa15801561082b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061084f9190612082565b9050600281600581111561086557610865611eb7565b0361093d57604051637b0c90d960e11b8152600481018390526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063f61921b290602401600060405180830381865afa1580156108d2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526108fa919081019061215d565b9050806040015163ffffffff1696508060600151955080602001516001600160401b03169450610935610930826080015161103d565b61105b565b9750506109db565b600381600581111561095157610951611eb7565b036109a957600283015460408051808201909152601081526f6661756c74792072616e646f6d697a6560801b602082015261098f908215159061102b565b61099881610733565b9750975097509750505050506109df565b6109db6040518060400160405280601181526020017070656e64696e672072616e646f6d697a6560781b8152506105d7565b5050505b9193509193565b6000610a2c8484336109f786610d5b565b604080516001600160a01b03909316602084015282015260600160405160208183030381529060405280519060200120611090565b90505b9392505050565b905090565b600043610a46611007565b541015610ba95734905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316633dc2b7a2837f000000000000000000000000000000000000000000000000000000000000000060026040518463ffffffff1660e01b8152600401610ac292919061220c565b60206040518083038185885af1158015610ae0573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610b059190612236565b90506000610b11611007565b436000908152600191909101602052604081208381559150610b31611007565b5460018301819055905043610b44611007565b6000838152600191909101602052604090206002015543610b63611007565b556040517f8cb766b09215126141c41df86fd488fe4745f22f3c995c3ad9aaf4c07195b94690610b9d9043903a908890889060029061224f565b60405180910390a15050505b34811015610be957336108fc610bbf833461228f565b6040518115909202916000818181858888f19350505050158015610be7573d6000803e3d6000fd5b505b90565b610bf46110ef565b610bfe600061111c565b565b6000610c0a611007565b600083815260019190910160205260408120549003610c2f57610c2c82610f86565b91505b6000610c39611007565b600084815260019190910160205260408120549150819003610c5e5750600092915050565b60405163234fe6e360e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063234fe6e390602401602060405180830381865afa158015610cc6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cea9190612082565b90506003816005811115610d0057610d00611eb7565b03610a2f576000610d0f611007565b6000868152600191909101602052604090206002015490508015610d3f57610d3681610c00565b95945050505050565b506003949350505050565b505b5050919050565b610bfe611135565b600081610d67836111b0565b604080516020810193909352820152606001604051602081830303815290604052805190602001209050919050565b6000610da0611007565b54919050565b60006002610db383610c00565b6005811115610dc457610dc4611eb7565b1492915050565b600080600080610dd9611007565b60009586526001908101602052604090952080549581015460029091015495969095945092505050565b604051630f7b104360e31b815260048101829052602260248201526000906064906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690637bd8821890604401602060405180830381865afa158015610e75573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e999190612236565b600354610eab9061ffff1660646122a2565b61ffff16610eb991906122bd565b610ec391906122d4565b92915050565b610ed16110ef565b6003805461ffff191661ffff92909216919091179055565b6000808211610efa57610efa6122e8565b6000610f04611007565b549050808311610ec357610f3283610f1a611007565b60008481526001918201602052604090200154611414565b610a2f565b610f3f6110ef565b610f74610f4b82611447565b6040518060400160405280600b81526020016a696e76616c696420534c4160a81b81525061102b565b806002610f81828261230d565b505050565b6000610f90611007565b600083815260019190910160205260408120549003610fc057610fbb82610fb5611007565b546114a0565b610ec3565b610fc8611007565b600092835260010160205250604090206002015490565b6000610a366001546001600160a01b031690565b610ffb6110ef565b611004816114ef565b50565b7f643778935c57df947f6944f6a5242a3e91445f6337f4b2ec670c8642153b614f90565b8161103957611039816105d7565b5050565b611045611d4c565b600061105083611521565b9050610a2f81611546565b600081806000015161107f5760405162461bcd60e51b81526004016106389061235f565b610a2f61108b8461157a565b6115ab565b6000806001600160e01b0383856040516020016110b7929190918252602082015260400190565b60408051601f19818403018152919052805160209091012016905060e06110e463ffffffff8716836122bd565b901c95945050505050565b6000546001600160a01b03163314610bfe5760405163118cdaa760e01b8152336004820152602401610638565b600180546001600160a01b0319169055611004816115b8565b338061113f610fdf565b6001600160a01b0316146111a75760405162461bcd60e51b815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865206044820152683732bb9037bbb732b960b91b6064820152608401610638565b6110048161111c565b60006111ba611007565b6000838152600191909101602052604081205490036111df576111dc82610f86565b91505b60006111e9611007565b6001016000848152602001908152602001600020905060008160000154905061123c81600014156040518060400160405280600e81526020016d1b9bdd081c985b991bdb5a5e995960921b81525061102b565b60405163234fe6e360e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063234fe6e390602401602060405180830381865afa1580156112a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112c89190612082565b905060028160058111156112de576112de611eb7565b0361137d576040516311a7b16760e31b815260048101839052610d3690610930906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638d3d8b3890602401600060405180830381865afa158015611350573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261137891908101906123b1565b61103d565b600381600581111561139157611391611eb7565b036113e257600283015460408051808201909152601081526f6661756c74792072616e646f6d697a6560801b60208201526113cf908215159061102b565b6113d8816111b0565b9695505050505050565b610d4a6040518060400160405280601181526020017070656e64696e672072616e646f6d697a6560781b8152506105d7565b600081831161144157610f3283611429611007565b60008581526001918201602052604090200154611414565b50919050565b60008061145a60408401602085016123ed565b6001600160401b031611801561147f5750600061147a602084018461240a565b60ff16115b8015610ec35750607f611495602084018461240a565b60ff16111592915050565b6000818310156114ce57610f32836114b6611007565b600085815260019182016020526040902001546114a0565b6114d6611007565b6000928352600101602052506040902060020154919050565b6114f76110ef565b6001600160a01b0381166111a757604051631e4fbdf760e01b815260006004820152602401610638565b611529611d6d565b6040805180820190915282815260006020820152610a2f81611608565b61154e611d4c565b5060a0810151604080518082019091526001600160401b03909116602714158152602081019190915290565b606081806000015161159e5760405162461bcd60e51b81526004016106389061235f565b610a2f8360200151611728565b6000610ec3826020611871565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b611610611d6d565b8151518290600003611635576040516309036d4760e21b815260040160405180910390fd5b600060ff816001600160401b038160015b80156116b857611655896118e9565b95508161166181612427565b6007600589901c169650601f8816955092505060051985016116b057602089015161168c8a8661194b565b9350808a6020015161169e919061228f565b6116a89084612440565b925050611646565b506000611646565b600760ff861611156116e25760405163bd2ac87960e01b815260ff86166004820152602401610638565b506040805160c08101825298895260ff95861660208a015293851693880193909352921660608601526001600160401b0390811660808601521660a08401525090919050565b60608160028060ff16826040015160ff161461176857604080830151905161800560e51b815260ff91821660048201529082166024820152604401610638565b61177a8460000151856060015161194b565b6001600160401b03166080850181905263fffffffe19016118505760006117a985600001518660400151611a13565b905063ffffffff8082161015610d4a5784516117ce9063ffffffff80841690611ac016565b6040516020016117de9190612453565b604051602081830303815290604052935061180185600001518660400151611a13565b905063ffffffff8082161015610d4a57845184906118289063ffffffff80851690611ac016565b60405160200161183992919061246f565b604051602081830303815290604052935050610d4c565b6080840151845161186a9163ffffffff90811690611ac016565b9250610d4c565b600060208260ff161115611887576118876122e8565b60008260ff1684511161189b5783516118a0565b8260ff165b905060005b818110156118e157806008028582815181106118c3576118c361206c565b01602001516001600160f81b031916901c92909217916001016118a5565b505092915050565b6000816020015182600001515180821115611921576040516363a056dd60e01b81526004810183905260248101829052604401610638565b835160208501805180830160010151955090819061193e82612427565b8152505050505050919050565b600060188260ff161015611963575060ff8116610ec3565b8160ff1660180361198157611977836118e9565b60ff169050610ec3565b8160ff166019036119a05761199583611b80565b61ffff169050610ec3565b8160ff16601a036119c1576119b483611bec565b63ffffffff169050610ec3565b8160ff16601b036119dc576119d583611c4b565b9050610ec3565b8160ff16601f036119f557506001600160401b03610ec3565b604051636d785b1360e01b815260ff83166004820152602401610638565b600080611a1f846118e9565b90508060ff1660ff03611a3c576001600160401b03915050610ec3565b611a498482601f1661194b565b91506001600160401b0380831610611a7f57604051636d785b1360e01b81526001600160401b0383166004820152602401610638565b60ff83166007600583901c1614611ab95760405161800560e51b81526007600583901c16600482015260ff84166024820152604401610638565b5092915050565b6060818360200151611ad29190612440565b83515180821115611b00576040516363a056dd60e01b81526004810183905260248101829052604401610638565b836001600160401b03811115611b1857611b18611fcd565b6040519080825280601f01601f191660200182016040528015611b42576020820181803683370190505b50925083156118e1578451602080870151908183018101908601611b6781838a611caa565b611b7389896001611cf0565b5050505050505092915050565b600081602001516002611b939190612440565b82515180821115611bc1576040516363a056dd60e01b81526004810183905260248101829052604401610638565b8351602085018051600281840181015196509091611bdf8284612440565b9052509395945050505050565b600081602001516004611bff9190612440565b82515180821115611c2d576040516363a056dd60e01b81526004810183905260248101829052604401610638565b8351602085018051600481840181015196509091611bdf8284612440565b600081602001516008611c5e9190612440565b82515180821115611c8c576040516363a056dd60e01b81526004810183905260248101829052604401610638565b8351602085018051600881840181015196509091611bdf8284612440565b5b60208110611cca578151835260209283019290910190601f1901611cab565b8015610f81578151835160208390036101000a6000190180199092169116178352505050565b60008284600001515180821115611d24576040516363a056dd60e01b81526004810183905260248101829052604401610638565b8315611d3c576020860151611d399086612440565b94505b5050505060209190910181905290565b6040518060400160405280600015158152602001611d68611d6d565b905290565b604080516101008101909152606060c08201908152600060e08301528190815260006020820181905260408201819052606082018190526080820181905260a09091015290565b60005b83811015611dcf578181015183820152602001611db7565b50506000910152565b720dcdee840d2dae0d8cadacadce8cac8744060f606b1b815260008551611e06816013850160208a01611db4565b855190830190611e1d816013840160208a01611db4565b8551910190611e33816013840160208901611db4565b8451910190611e49816013840160208801611db4565b016013019695505050505050565b600060208284031215611e6957600080fd5b5035919050565b63ffffffff8116811461100457600080fd5b600080600060608486031215611e9757600080fd5b8335611ea281611e70565b95602085013595506040909401359392505050565b634e487b7160e01b600052602160045260246000fd5b6020810160068310611eef57634e487b7160e01b600052602160045260246000fd5b91905290565b600060208284031215611f0757600080fd5b813561ffff81168114610a2f57600080fd5b6020815260008251806020840152611f38816040850160208701611db4565b601f01601f19169190910160400192915050565b60006040828403121561144157600080fd5b6001600160a01b038116811461100457600080fd5b600060208284031215611f8557600080fd5b8135610a2f81611f5e565b60008351611fa2818460208801611db4565b6101d160f51b9083019081528351611fc1816002840160208801611db4565b01600201949350505050565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060ff83168061202257612022611fe3565b8060ff84160491505092915050565b60ff8181168382160190811115610ec357610ec3611ff9565b600060ff83168061205d5761205d611fe3565b8060ff84160691505092915050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561209457600080fd5b815160068110610a2f57600080fd5b60405160a081016001600160401b03811182821017156120c5576120c5611fcd565b60405290565b6001600160401b038116811461100457600080fd5b600082601f8301126120f157600080fd5b81516001600160401b038082111561210b5761210b611fcd565b604051601f8301601f19908116603f0116810190828211818310171561213357612133611fcd565b8160405283815286602085880101111561214c57600080fd5b6113d8846020830160208901611db4565b60006020828403121561216f57600080fd5b81516001600160401b038082111561218657600080fd5b9083019060a0828603121561219a57600080fd5b6121a26120a3565b82516121ad81611f5e565b815260208301516121bd816120cb565b602082015260408301516121d081611e70565b6040820152606083810151908201526080830151828111156121f157600080fd5b6121fd878286016120e0565b60808301525095945050505050565b82815260608101610a2f60208301845460ff8116825260081c6001600160401b0316602090910152565b60006020828403121561224857600080fd5b5051919050565b600060c0820190508682528560208301528460408301528360608301526113d860808301845460ff8116825260081c6001600160401b0316602090910152565b81810381811115610ec357610ec3611ff9565b61ffff818116838216019080821115611ab957611ab9611ff9565b8082028115828204841417610ec357610ec3611ff9565b6000826122e3576122e3611fe3565b500490565b634e487b7160e01b600052600160045260246000fd5b60ff8116811461100457600080fd5b8135612318816122fe565b60ff8116905081548160ff1982161783556020840135612337816120cb565b68ffffffffffffffff008160081b168368ffffffffffffffffff198416171784555050505050565b60208082526032908201527f5769746e65743a20747269656420746f206465636f64652076616c756520667260408201527137b69032b93937b932b2103932b9bab63a1760711b606082015260800190565b6000602082840312156123c357600080fd5b81516001600160401b038111156123d957600080fd5b6123e5848285016120e0565b949350505050565b6000602082840312156123ff57600080fd5b8135610a2f816120cb565b60006020828403121561241c57600080fd5b8135610a2f816122fe565b60006001820161243957612439611ff9565b5060010190565b80820180821115610ec357610ec3611ff9565b60008251612465818460208701611db4565b9190910192915050565b60008351612481818460208801611db4565b835190830190612495818360208801611db4565b0194935050505056fea2646970667358221220bec1a3d55975c81be97cdbeb13ea1e452f2c1bc5a009b8c57366496fe51576e064736f6c63430008190033",
  "immutableReferences": {
    "1016": [
      {
        "length": 32,
        "start": 648
      },
      {
        "length": 32,
        "start": 2012
      },
      {
        "length": 32,
        "start": 2179
      },
      {
        "length": 32,
        "start": 2644
      },
      {
        "length": 32,
        "start": 3191
      },
      {
        "length": 32,
        "start": 3630
      },
      {
        "length": 32,
        "start": 4693
      },
      {
        "length": 32,
        "start": 4873
      }
    ],
    "2037": [
      {
        "length": 32,
        "start": 722
      },
      {
        "length": 32,
        "start": 2692
      }
    ]
  },
  "generatedSources": [
    {
      "ast": {
        "nativeSrc": "0:9472:84",
        "nodeType": "YulBlock",
        "src": "0:9472:84",
        "statements": [
          {
            "nativeSrc": "6:3:84",
            "nodeType": "YulBlock",
            "src": "6:3:84",
            "statements": []
          },
          {
            "body": {
              "nativeSrc": "79:86:84",
              "nodeType": "YulBlock",
              "src": "79:86:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "143:16:84",
                    "nodeType": "YulBlock",
                    "src": "143:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "152:1:84",
                              "nodeType": "YulLiteral",
                              "src": "152:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "155:1:84",
                              "nodeType": "YulLiteral",
                              "src": "155:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "145:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "145:6:84"
                          },
                          "nativeSrc": "145:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "145:12:84"
                        },
                        "nativeSrc": "145:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "145:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "102:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "102:5:84"
                          },
                          {
                            "arguments": [
                              {
                                "name": "value",
                                "nativeSrc": "113:5:84",
                                "nodeType": "YulIdentifier",
                                "src": "113:5:84"
                              },
                              {
                                "arguments": [
                                  {
                                    "arguments": [
                                      {
                                        "kind": "number",
                                        "nativeSrc": "128:3:84",
                                        "nodeType": "YulLiteral",
                                        "src": "128:3:84",
                                        "type": "",
                                        "value": "160"
                                      },
                                      {
                                        "kind": "number",
                                        "nativeSrc": "133:1:84",
                                        "nodeType": "YulLiteral",
                                        "src": "133:1:84",
                                        "type": "",
                                        "value": "1"
                                      }
                                    ],
                                    "functionName": {
                                      "name": "shl",
                                      "nativeSrc": "124:3:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "124:3:84"
                                    },
                                    "nativeSrc": "124:11:84",
                                    "nodeType": "YulFunctionCall",
                                    "src": "124:11:84"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "137:1:84",
                                    "nodeType": "YulLiteral",
                                    "src": "137:1:84",
                                    "type": "",
                                    "value": "1"
                                  }
                                ],
                                "functionName": {
                                  "name": "sub",
                                  "nativeSrc": "120:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "120:3:84"
                                },
                                "nativeSrc": "120:19:84",
                                "nodeType": "YulFunctionCall",
                                "src": "120:19:84"
                              }
                            ],
                            "functionName": {
                              "name": "and",
                              "nativeSrc": "109:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "109:3:84"
                            },
                            "nativeSrc": "109:31:84",
                            "nodeType": "YulFunctionCall",
                            "src": "109:31:84"
                          }
                        ],
                        "functionName": {
                          "name": "eq",
                          "nativeSrc": "99:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "99:2:84"
                        },
                        "nativeSrc": "99:42:84",
                        "nodeType": "YulFunctionCall",
                        "src": "99:42:84"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "92:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "92:6:84"
                    },
                    "nativeSrc": "92:50:84",
                    "nodeType": "YulFunctionCall",
                    "src": "92:50:84"
                  },
                  "nativeSrc": "89:70:84",
                  "nodeType": "YulIf",
                  "src": "89:70:84"
                }
              ]
            },
            "name": "validator_revert_contract_WitnetMockedOracle",
            "nativeSrc": "14:151:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "value",
                "nativeSrc": "68:5:84",
                "nodeType": "YulTypedName",
                "src": "68:5:84",
                "type": ""
              }
            ],
            "src": "14:151:84"
          },
          {
            "body": {
              "nativeSrc": "279:190:84",
              "nodeType": "YulBlock",
              "src": "279:190:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "325:16:84",
                    "nodeType": "YulBlock",
                    "src": "325:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "334:1:84",
                              "nodeType": "YulLiteral",
                              "src": "334:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "337:1:84",
                              "nodeType": "YulLiteral",
                              "src": "337:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "327:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "327:6:84"
                          },
                          "nativeSrc": "327:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "327:12:84"
                        },
                        "nativeSrc": "327:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "327:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "300:7:84",
                            "nodeType": "YulIdentifier",
                            "src": "300:7:84"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "309:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "309:9:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "296:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "296:3:84"
                        },
                        "nativeSrc": "296:23:84",
                        "nodeType": "YulFunctionCall",
                        "src": "296:23:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "321:2:84",
                        "nodeType": "YulLiteral",
                        "src": "321:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "292:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "292:3:84"
                    },
                    "nativeSrc": "292:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "292:32:84"
                  },
                  "nativeSrc": "289:52:84",
                  "nodeType": "YulIf",
                  "src": "289:52:84"
                },
                {
                  "nativeSrc": "350:29:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "350:29:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "369:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "369:9:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "363:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "363:5:84"
                    },
                    "nativeSrc": "363:16:84",
                    "nodeType": "YulFunctionCall",
                    "src": "363:16:84"
                  },
                  "variables": [
                    {
                      "name": "value",
                      "nativeSrc": "354:5:84",
                      "nodeType": "YulTypedName",
                      "src": "354:5:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "433:5:84",
                        "nodeType": "YulIdentifier",
                        "src": "433:5:84"
                      }
                    ],
                    "functionName": {
                      "name": "validator_revert_contract_WitnetMockedOracle",
                      "nativeSrc": "388:44:84",
                      "nodeType": "YulIdentifier",
                      "src": "388:44:84"
                    },
                    "nativeSrc": "388:51:84",
                    "nodeType": "YulFunctionCall",
                    "src": "388:51:84"
                  },
                  "nativeSrc": "388:51:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "388:51:84"
                },
                {
                  "nativeSrc": "448:15:84",
                  "nodeType": "YulAssignment",
                  "src": "448:15:84",
                  "value": {
                    "name": "value",
                    "nativeSrc": "458:5:84",
                    "nodeType": "YulIdentifier",
                    "src": "458:5:84"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "448:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "448:6:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_contract$_WitnetMockedOracle_$23735_fromMemory",
            "nativeSrc": "170:299:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "245:9:84",
                "nodeType": "YulTypedName",
                "src": "245:9:84",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "256:7:84",
                "nodeType": "YulTypedName",
                "src": "256:7:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "268:6:84",
                "nodeType": "YulTypedName",
                "src": "268:6:84",
                "type": ""
              }
            ],
            "src": "170:299:84"
          },
          {
            "body": {
              "nativeSrc": "575:102:84",
              "nodeType": "YulBlock",
              "src": "575:102:84",
              "statements": [
                {
                  "nativeSrc": "585:26:84",
                  "nodeType": "YulAssignment",
                  "src": "585:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "597:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "597:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "608:2:84",
                        "nodeType": "YulLiteral",
                        "src": "608:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "593:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "593:3:84"
                    },
                    "nativeSrc": "593:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "593:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "585:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "585:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "627:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "627:9:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "642:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "642:6:84"
                          },
                          {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "658:3:84",
                                    "nodeType": "YulLiteral",
                                    "src": "658:3:84",
                                    "type": "",
                                    "value": "160"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "663:1:84",
                                    "nodeType": "YulLiteral",
                                    "src": "663:1:84",
                                    "type": "",
                                    "value": "1"
                                  }
                                ],
                                "functionName": {
                                  "name": "shl",
                                  "nativeSrc": "654:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "654:3:84"
                                },
                                "nativeSrc": "654:11:84",
                                "nodeType": "YulFunctionCall",
                                "src": "654:11:84"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "667:1:84",
                                "nodeType": "YulLiteral",
                                "src": "667:1:84",
                                "type": "",
                                "value": "1"
                              }
                            ],
                            "functionName": {
                              "name": "sub",
                              "nativeSrc": "650:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "650:3:84"
                            },
                            "nativeSrc": "650:19:84",
                            "nodeType": "YulFunctionCall",
                            "src": "650:19:84"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "638:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "638:3:84"
                        },
                        "nativeSrc": "638:32:84",
                        "nodeType": "YulFunctionCall",
                        "src": "638:32:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "620:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "620:6:84"
                    },
                    "nativeSrc": "620:51:84",
                    "nodeType": "YulFunctionCall",
                    "src": "620:51:84"
                  },
                  "nativeSrc": "620:51:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "620:51:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed",
            "nativeSrc": "474:203:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "544:9:84",
                "nodeType": "YulTypedName",
                "src": "544:9:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "555:6:84",
                "nodeType": "YulTypedName",
                "src": "555:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "566:4:84",
                "nodeType": "YulTypedName",
                "src": "566:4:84",
                "type": ""
              }
            ],
            "src": "474:203:84"
          },
          {
            "body": {
              "nativeSrc": "762:210:84",
              "nodeType": "YulBlock",
              "src": "762:210:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "808:16:84",
                    "nodeType": "YulBlock",
                    "src": "808:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "817:1:84",
                              "nodeType": "YulLiteral",
                              "src": "817:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "820:1:84",
                              "nodeType": "YulLiteral",
                              "src": "820:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "810:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "810:6:84"
                          },
                          "nativeSrc": "810:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "810:12:84"
                        },
                        "nativeSrc": "810:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "810:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "783:7:84",
                            "nodeType": "YulIdentifier",
                            "src": "783:7:84"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "792:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "792:9:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "779:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "779:3:84"
                        },
                        "nativeSrc": "779:23:84",
                        "nodeType": "YulFunctionCall",
                        "src": "779:23:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "804:2:84",
                        "nodeType": "YulLiteral",
                        "src": "804:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "775:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "775:3:84"
                    },
                    "nativeSrc": "775:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "775:32:84"
                  },
                  "nativeSrc": "772:52:84",
                  "nodeType": "YulIf",
                  "src": "772:52:84"
                },
                {
                  "nativeSrc": "833:29:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "833:29:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "852:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "852:9:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "846:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "846:5:84"
                    },
                    "nativeSrc": "846:16:84",
                    "nodeType": "YulFunctionCall",
                    "src": "846:16:84"
                  },
                  "variables": [
                    {
                      "name": "value",
                      "nativeSrc": "837:5:84",
                      "nodeType": "YulTypedName",
                      "src": "837:5:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "926:16:84",
                    "nodeType": "YulBlock",
                    "src": "926:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "935:1:84",
                              "nodeType": "YulLiteral",
                              "src": "935:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "938:1:84",
                              "nodeType": "YulLiteral",
                              "src": "938:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "928:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "928:6:84"
                          },
                          "nativeSrc": "928:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "928:12:84"
                        },
                        "nativeSrc": "928:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "928:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "884:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "884:5:84"
                          },
                          {
                            "arguments": [
                              {
                                "name": "value",
                                "nativeSrc": "895:5:84",
                                "nodeType": "YulIdentifier",
                                "src": "895:5:84"
                              },
                              {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "906:3:84",
                                    "nodeType": "YulLiteral",
                                    "src": "906:3:84",
                                    "type": "",
                                    "value": "224"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "911:10:84",
                                    "nodeType": "YulLiteral",
                                    "src": "911:10:84",
                                    "type": "",
                                    "value": "0xffffffff"
                                  }
                                ],
                                "functionName": {
                                  "name": "shl",
                                  "nativeSrc": "902:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "902:3:84"
                                },
                                "nativeSrc": "902:20:84",
                                "nodeType": "YulFunctionCall",
                                "src": "902:20:84"
                              }
                            ],
                            "functionName": {
                              "name": "and",
                              "nativeSrc": "891:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "891:3:84"
                            },
                            "nativeSrc": "891:32:84",
                            "nodeType": "YulFunctionCall",
                            "src": "891:32:84"
                          }
                        ],
                        "functionName": {
                          "name": "eq",
                          "nativeSrc": "881:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "881:2:84"
                        },
                        "nativeSrc": "881:43:84",
                        "nodeType": "YulFunctionCall",
                        "src": "881:43:84"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "874:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "874:6:84"
                    },
                    "nativeSrc": "874:51:84",
                    "nodeType": "YulFunctionCall",
                    "src": "874:51:84"
                  },
                  "nativeSrc": "871:71:84",
                  "nodeType": "YulIf",
                  "src": "871:71:84"
                },
                {
                  "nativeSrc": "951:15:84",
                  "nodeType": "YulAssignment",
                  "src": "951:15:84",
                  "value": {
                    "name": "value",
                    "nativeSrc": "961:5:84",
                    "nodeType": "YulIdentifier",
                    "src": "961:5:84"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "951:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "951:6:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_bytes4_fromMemory",
            "nativeSrc": "682:290:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "728:9:84",
                "nodeType": "YulTypedName",
                "src": "728:9:84",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "739:7:84",
                "nodeType": "YulTypedName",
                "src": "739:7:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "751:6:84",
                "nodeType": "YulTypedName",
                "src": "751:6:84",
                "type": ""
              }
            ],
            "src": "682:290:84"
          },
          {
            "body": {
              "nativeSrc": "1151:227:84",
              "nodeType": "YulBlock",
              "src": "1151:227:84",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "1168:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "1168:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "1179:2:84",
                        "nodeType": "YulLiteral",
                        "src": "1179:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "1161:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "1161:6:84"
                    },
                    "nativeSrc": "1161:21:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1161:21:84"
                  },
                  "nativeSrc": "1161:21:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "1161:21:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "1202:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "1202:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "1213:2:84",
                            "nodeType": "YulLiteral",
                            "src": "1213:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "1198:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "1198:3:84"
                        },
                        "nativeSrc": "1198:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "1198:18:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "1218:2:84",
                        "nodeType": "YulLiteral",
                        "src": "1218:2:84",
                        "type": "",
                        "value": "37"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "1191:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "1191:6:84"
                    },
                    "nativeSrc": "1191:30:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1191:30:84"
                  },
                  "nativeSrc": "1191:30:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "1191:30:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "1241:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "1241:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "1252:2:84",
                            "nodeType": "YulLiteral",
                            "src": "1252:2:84",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "1237:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "1237:3:84"
                        },
                        "nativeSrc": "1237:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "1237:18:84"
                      },
                      {
                        "hexValue": "5573696e675769746e65743a20756e636f6d706c69616e74205769746e65744f",
                        "kind": "string",
                        "nativeSrc": "1257:34:84",
                        "nodeType": "YulLiteral",
                        "src": "1257:34:84",
                        "type": "",
                        "value": "UsingWitnet: uncompliant WitnetO"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "1230:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "1230:6:84"
                    },
                    "nativeSrc": "1230:62:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1230:62:84"
                  },
                  "nativeSrc": "1230:62:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "1230:62:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "1312:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "1312:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "1323:2:84",
                            "nodeType": "YulLiteral",
                            "src": "1323:2:84",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "1308:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "1308:3:84"
                        },
                        "nativeSrc": "1308:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "1308:18:84"
                      },
                      {
                        "hexValue": "7261636c65",
                        "kind": "string",
                        "nativeSrc": "1328:7:84",
                        "nodeType": "YulLiteral",
                        "src": "1328:7:84",
                        "type": "",
                        "value": "racle"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "1301:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "1301:6:84"
                    },
                    "nativeSrc": "1301:35:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1301:35:84"
                  },
                  "nativeSrc": "1301:35:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "1301:35:84"
                },
                {
                  "nativeSrc": "1345:27:84",
                  "nodeType": "YulAssignment",
                  "src": "1345:27:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "1357:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "1357:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "1368:3:84",
                        "nodeType": "YulLiteral",
                        "src": "1368:3:84",
                        "type": "",
                        "value": "128"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "1353:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "1353:3:84"
                    },
                    "nativeSrc": "1353:19:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1353:19:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "1345:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "1345:4:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_stringliteral_57d830abe71d02a02e5da4295b2a41f780665da6ca2ca2ca1e1e440e807c06d7__to_t_string_memory_ptr__fromStack_reversed",
            "nativeSrc": "977:401:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "1128:9:84",
                "nodeType": "YulTypedName",
                "src": "1128:9:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "1142:4:84",
                "nodeType": "YulTypedName",
                "src": "1142:4:84",
                "type": ""
              }
            ],
            "src": "977:401:84"
          },
          {
            "body": {
              "nativeSrc": "1494:190:84",
              "nodeType": "YulBlock",
              "src": "1494:190:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "1540:16:84",
                    "nodeType": "YulBlock",
                    "src": "1540:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "1549:1:84",
                              "nodeType": "YulLiteral",
                              "src": "1549:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "1552:1:84",
                              "nodeType": "YulLiteral",
                              "src": "1552:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "1542:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "1542:6:84"
                          },
                          "nativeSrc": "1542:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "1542:12:84"
                        },
                        "nativeSrc": "1542:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "1542:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "1515:7:84",
                            "nodeType": "YulIdentifier",
                            "src": "1515:7:84"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "1524:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "1524:9:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "1511:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "1511:3:84"
                        },
                        "nativeSrc": "1511:23:84",
                        "nodeType": "YulFunctionCall",
                        "src": "1511:23:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "1536:2:84",
                        "nodeType": "YulLiteral",
                        "src": "1536:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "1507:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "1507:3:84"
                    },
                    "nativeSrc": "1507:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1507:32:84"
                  },
                  "nativeSrc": "1504:52:84",
                  "nodeType": "YulIf",
                  "src": "1504:52:84"
                },
                {
                  "nativeSrc": "1565:29:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "1565:29:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "1584:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "1584:9:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "1578:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "1578:5:84"
                    },
                    "nativeSrc": "1578:16:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1578:16:84"
                  },
                  "variables": [
                    {
                      "name": "value",
                      "nativeSrc": "1569:5:84",
                      "nodeType": "YulTypedName",
                      "src": "1569:5:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "1648:5:84",
                        "nodeType": "YulIdentifier",
                        "src": "1648:5:84"
                      }
                    ],
                    "functionName": {
                      "name": "validator_revert_contract_WitnetMockedOracle",
                      "nativeSrc": "1603:44:84",
                      "nodeType": "YulIdentifier",
                      "src": "1603:44:84"
                    },
                    "nativeSrc": "1603:51:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1603:51:84"
                  },
                  "nativeSrc": "1603:51:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "1603:51:84"
                },
                {
                  "nativeSrc": "1663:15:84",
                  "nodeType": "YulAssignment",
                  "src": "1663:15:84",
                  "value": {
                    "name": "value",
                    "nativeSrc": "1673:5:84",
                    "nodeType": "YulIdentifier",
                    "src": "1673:5:84"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "1663:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "1663:6:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_contract$_WitnetRequestBytecodes_$849_fromMemory",
            "nativeSrc": "1383:301:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "1460:9:84",
                "nodeType": "YulTypedName",
                "src": "1460:9:84",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "1471:7:84",
                "nodeType": "YulTypedName",
                "src": "1471:7:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "1483:6:84",
                "nodeType": "YulTypedName",
                "src": "1483:6:84",
                "type": ""
              }
            ],
            "src": "1383:301:84"
          },
          {
            "body": {
              "nativeSrc": "1721:95:84",
              "nodeType": "YulBlock",
              "src": "1721:95:84",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "1738:1:84",
                        "nodeType": "YulLiteral",
                        "src": "1738:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "1745:3:84",
                            "nodeType": "YulLiteral",
                            "src": "1745:3:84",
                            "type": "",
                            "value": "224"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "1750:10:84",
                            "nodeType": "YulLiteral",
                            "src": "1750:10:84",
                            "type": "",
                            "value": "0x4e487b71"
                          }
                        ],
                        "functionName": {
                          "name": "shl",
                          "nativeSrc": "1741:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "1741:3:84"
                        },
                        "nativeSrc": "1741:20:84",
                        "nodeType": "YulFunctionCall",
                        "src": "1741:20:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "1731:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "1731:6:84"
                    },
                    "nativeSrc": "1731:31:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1731:31:84"
                  },
                  "nativeSrc": "1731:31:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "1731:31:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "1778:1:84",
                        "nodeType": "YulLiteral",
                        "src": "1778:1:84",
                        "type": "",
                        "value": "4"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "1781:4:84",
                        "nodeType": "YulLiteral",
                        "src": "1781:4:84",
                        "type": "",
                        "value": "0x41"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "1771:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "1771:6:84"
                    },
                    "nativeSrc": "1771:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1771:15:84"
                  },
                  "nativeSrc": "1771:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "1771:15:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "1802:1:84",
                        "nodeType": "YulLiteral",
                        "src": "1802:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "1805:4:84",
                        "nodeType": "YulLiteral",
                        "src": "1805:4:84",
                        "type": "",
                        "value": "0x24"
                      }
                    ],
                    "functionName": {
                      "name": "revert",
                      "nativeSrc": "1795:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "1795:6:84"
                    },
                    "nativeSrc": "1795:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1795:15:84"
                  },
                  "nativeSrc": "1795:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "1795:15:84"
                }
              ]
            },
            "name": "panic_error_0x41",
            "nativeSrc": "1689:127:84",
            "nodeType": "YulFunctionDefinition",
            "src": "1689:127:84"
          },
          {
            "body": {
              "nativeSrc": "1853:95:84",
              "nodeType": "YulBlock",
              "src": "1853:95:84",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "1870:1:84",
                        "nodeType": "YulLiteral",
                        "src": "1870:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "1877:3:84",
                            "nodeType": "YulLiteral",
                            "src": "1877:3:84",
                            "type": "",
                            "value": "224"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "1882:10:84",
                            "nodeType": "YulLiteral",
                            "src": "1882:10:84",
                            "type": "",
                            "value": "0x4e487b71"
                          }
                        ],
                        "functionName": {
                          "name": "shl",
                          "nativeSrc": "1873:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "1873:3:84"
                        },
                        "nativeSrc": "1873:20:84",
                        "nodeType": "YulFunctionCall",
                        "src": "1873:20:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "1863:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "1863:6:84"
                    },
                    "nativeSrc": "1863:31:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1863:31:84"
                  },
                  "nativeSrc": "1863:31:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "1863:31:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "1910:1:84",
                        "nodeType": "YulLiteral",
                        "src": "1910:1:84",
                        "type": "",
                        "value": "4"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "1913:4:84",
                        "nodeType": "YulLiteral",
                        "src": "1913:4:84",
                        "type": "",
                        "value": "0x21"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "1903:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "1903:6:84"
                    },
                    "nativeSrc": "1903:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1903:15:84"
                  },
                  "nativeSrc": "1903:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "1903:15:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "1934:1:84",
                        "nodeType": "YulLiteral",
                        "src": "1934:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "1937:4:84",
                        "nodeType": "YulLiteral",
                        "src": "1937:4:84",
                        "type": "",
                        "value": "0x24"
                      }
                    ],
                    "functionName": {
                      "name": "revert",
                      "nativeSrc": "1927:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "1927:6:84"
                    },
                    "nativeSrc": "1927:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1927:15:84"
                  },
                  "nativeSrc": "1927:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "1927:15:84"
                }
              ]
            },
            "name": "panic_error_0x21",
            "nativeSrc": "1821:127:84",
            "nodeType": "YulFunctionDefinition",
            "src": "1821:127:84"
          },
          {
            "body": {
              "nativeSrc": "2019:184:84",
              "nodeType": "YulBlock",
              "src": "2019:184:84",
              "statements": [
                {
                  "nativeSrc": "2029:10:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "2029:10:84",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "2038:1:84",
                    "nodeType": "YulLiteral",
                    "src": "2038:1:84",
                    "type": "",
                    "value": "0"
                  },
                  "variables": [
                    {
                      "name": "i",
                      "nativeSrc": "2033:1:84",
                      "nodeType": "YulTypedName",
                      "src": "2033:1:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "2098:63:84",
                    "nodeType": "YulBlock",
                    "src": "2098:63:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "arguments": [
                                {
                                  "name": "dst",
                                  "nativeSrc": "2123:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "2123:3:84"
                                },
                                {
                                  "name": "i",
                                  "nativeSrc": "2128:1:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "2128:1:84"
                                }
                              ],
                              "functionName": {
                                "name": "add",
                                "nativeSrc": "2119:3:84",
                                "nodeType": "YulIdentifier",
                                "src": "2119:3:84"
                              },
                              "nativeSrc": "2119:11:84",
                              "nodeType": "YulFunctionCall",
                              "src": "2119:11:84"
                            },
                            {
                              "arguments": [
                                {
                                  "arguments": [
                                    {
                                      "name": "src",
                                      "nativeSrc": "2142:3:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "2142:3:84"
                                    },
                                    {
                                      "name": "i",
                                      "nativeSrc": "2147:1:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "2147:1:84"
                                    }
                                  ],
                                  "functionName": {
                                    "name": "add",
                                    "nativeSrc": "2138:3:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "2138:3:84"
                                  },
                                  "nativeSrc": "2138:11:84",
                                  "nodeType": "YulFunctionCall",
                                  "src": "2138:11:84"
                                }
                              ],
                              "functionName": {
                                "name": "mload",
                                "nativeSrc": "2132:5:84",
                                "nodeType": "YulIdentifier",
                                "src": "2132:5:84"
                              },
                              "nativeSrc": "2132:18:84",
                              "nodeType": "YulFunctionCall",
                              "src": "2132:18:84"
                            }
                          ],
                          "functionName": {
                            "name": "mstore",
                            "nativeSrc": "2112:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "2112:6:84"
                          },
                          "nativeSrc": "2112:39:84",
                          "nodeType": "YulFunctionCall",
                          "src": "2112:39:84"
                        },
                        "nativeSrc": "2112:39:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "2112:39:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "i",
                        "nativeSrc": "2059:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "2059:1:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "2062:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "2062:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "lt",
                      "nativeSrc": "2056:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "2056:2:84"
                    },
                    "nativeSrc": "2056:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2056:13:84"
                  },
                  "nativeSrc": "2048:113:84",
                  "nodeType": "YulForLoop",
                  "post": {
                    "nativeSrc": "2070:19:84",
                    "nodeType": "YulBlock",
                    "src": "2070:19:84",
                    "statements": [
                      {
                        "nativeSrc": "2072:15:84",
                        "nodeType": "YulAssignment",
                        "src": "2072:15:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "i",
                              "nativeSrc": "2081:1:84",
                              "nodeType": "YulIdentifier",
                              "src": "2081:1:84"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "2084:2:84",
                              "nodeType": "YulLiteral",
                              "src": "2084:2:84",
                              "type": "",
                              "value": "32"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "2077:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "2077:3:84"
                          },
                          "nativeSrc": "2077:10:84",
                          "nodeType": "YulFunctionCall",
                          "src": "2077:10:84"
                        },
                        "variableNames": [
                          {
                            "name": "i",
                            "nativeSrc": "2072:1:84",
                            "nodeType": "YulIdentifier",
                            "src": "2072:1:84"
                          }
                        ]
                      }
                    ]
                  },
                  "pre": {
                    "nativeSrc": "2052:3:84",
                    "nodeType": "YulBlock",
                    "src": "2052:3:84",
                    "statements": []
                  },
                  "src": "2048:113:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dst",
                            "nativeSrc": "2181:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "2181:3:84"
                          },
                          {
                            "name": "length",
                            "nativeSrc": "2186:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "2186:6:84"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "2177:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "2177:3:84"
                        },
                        "nativeSrc": "2177:16:84",
                        "nodeType": "YulFunctionCall",
                        "src": "2177:16:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "2195:1:84",
                        "nodeType": "YulLiteral",
                        "src": "2195:1:84",
                        "type": "",
                        "value": "0"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "2170:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "2170:6:84"
                    },
                    "nativeSrc": "2170:27:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2170:27:84"
                  },
                  "nativeSrc": "2170:27:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "2170:27:84"
                }
              ]
            },
            "name": "copy_memory_to_memory_with_cleanup",
            "nativeSrc": "1953:250:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "src",
                "nativeSrc": "1997:3:84",
                "nodeType": "YulTypedName",
                "src": "1997:3:84",
                "type": ""
              },
              {
                "name": "dst",
                "nativeSrc": "2002:3:84",
                "nodeType": "YulTypedName",
                "src": "2002:3:84",
                "type": ""
              },
              {
                "name": "length",
                "nativeSrc": "2007:6:84",
                "nodeType": "YulTypedName",
                "src": "2007:6:84",
                "type": ""
              }
            ],
            "src": "1953:250:84"
          },
          {
            "body": {
              "nativeSrc": "2258:221:84",
              "nodeType": "YulBlock",
              "src": "2258:221:84",
              "statements": [
                {
                  "nativeSrc": "2268:26:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "2268:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "2288:5:84",
                        "nodeType": "YulIdentifier",
                        "src": "2288:5:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "2282:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "2282:5:84"
                    },
                    "nativeSrc": "2282:12:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2282:12:84"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "2272:6:84",
                      "nodeType": "YulTypedName",
                      "src": "2272:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "2310:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "2310:3:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "2315:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "2315:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "2303:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "2303:6:84"
                    },
                    "nativeSrc": "2303:19:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2303:19:84"
                  },
                  "nativeSrc": "2303:19:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "2303:19:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "2370:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "2370:5:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "2377:4:84",
                            "nodeType": "YulLiteral",
                            "src": "2377:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "2366:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "2366:3:84"
                        },
                        "nativeSrc": "2366:16:84",
                        "nodeType": "YulFunctionCall",
                        "src": "2366:16:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "pos",
                            "nativeSrc": "2388:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "2388:3:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "2393:4:84",
                            "nodeType": "YulLiteral",
                            "src": "2393:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "2384:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "2384:3:84"
                        },
                        "nativeSrc": "2384:14:84",
                        "nodeType": "YulFunctionCall",
                        "src": "2384:14:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "2400:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "2400:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "copy_memory_to_memory_with_cleanup",
                      "nativeSrc": "2331:34:84",
                      "nodeType": "YulIdentifier",
                      "src": "2331:34:84"
                    },
                    "nativeSrc": "2331:76:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2331:76:84"
                  },
                  "nativeSrc": "2331:76:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "2331:76:84"
                },
                {
                  "nativeSrc": "2416:57:84",
                  "nodeType": "YulAssignment",
                  "src": "2416:57:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "pos",
                            "nativeSrc": "2431:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "2431:3:84"
                          },
                          {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "name": "length",
                                    "nativeSrc": "2444:6:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "2444:6:84"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "2452:2:84",
                                    "nodeType": "YulLiteral",
                                    "src": "2452:2:84",
                                    "type": "",
                                    "value": "31"
                                  }
                                ],
                                "functionName": {
                                  "name": "add",
                                  "nativeSrc": "2440:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "2440:3:84"
                                },
                                "nativeSrc": "2440:15:84",
                                "nodeType": "YulFunctionCall",
                                "src": "2440:15:84"
                              },
                              {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "2461:2:84",
                                    "nodeType": "YulLiteral",
                                    "src": "2461:2:84",
                                    "type": "",
                                    "value": "31"
                                  }
                                ],
                                "functionName": {
                                  "name": "not",
                                  "nativeSrc": "2457:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "2457:3:84"
                                },
                                "nativeSrc": "2457:7:84",
                                "nodeType": "YulFunctionCall",
                                "src": "2457:7:84"
                              }
                            ],
                            "functionName": {
                              "name": "and",
                              "nativeSrc": "2436:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "2436:3:84"
                            },
                            "nativeSrc": "2436:29:84",
                            "nodeType": "YulFunctionCall",
                            "src": "2436:29:84"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "2427:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "2427:3:84"
                        },
                        "nativeSrc": "2427:39:84",
                        "nodeType": "YulFunctionCall",
                        "src": "2427:39:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "2468:4:84",
                        "nodeType": "YulLiteral",
                        "src": "2468:4:84",
                        "type": "",
                        "value": "0x20"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "2423:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "2423:3:84"
                    },
                    "nativeSrc": "2423:50:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2423:50:84"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "2416:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "2416:3:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_string",
            "nativeSrc": "2208:271:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "value",
                "nativeSrc": "2235:5:84",
                "nodeType": "YulTypedName",
                "src": "2235:5:84",
                "type": ""
              },
              {
                "name": "pos",
                "nativeSrc": "2242:3:84",
                "nodeType": "YulTypedName",
                "src": "2242:3:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "2250:3:84",
                "nodeType": "YulTypedName",
                "src": "2250:3:84",
                "type": ""
              }
            ],
            "src": "2208:271:84"
          },
          {
            "body": {
              "nativeSrc": "2539:102:84",
              "nodeType": "YulBlock",
              "src": "2539:102:84",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "2556:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "2556:3:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "2561:1:84",
                        "nodeType": "YulLiteral",
                        "src": "2561:1:84",
                        "type": "",
                        "value": "1"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "2549:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "2549:6:84"
                    },
                    "nativeSrc": "2549:14:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2549:14:84"
                  },
                  "nativeSrc": "2549:14:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "2549:14:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "pos",
                            "nativeSrc": "2583:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "2583:3:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "2588:4:84",
                            "nodeType": "YulLiteral",
                            "src": "2588:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "2579:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "2579:3:84"
                        },
                        "nativeSrc": "2579:14:84",
                        "nodeType": "YulFunctionCall",
                        "src": "2579:14:84"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "2599:3:84",
                            "nodeType": "YulLiteral",
                            "src": "2599:3:84",
                            "type": "",
                            "value": "255"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "2604:1:84",
                            "nodeType": "YulLiteral",
                            "src": "2604:1:84",
                            "type": "",
                            "value": "1"
                          }
                        ],
                        "functionName": {
                          "name": "shl",
                          "nativeSrc": "2595:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "2595:3:84"
                        },
                        "nativeSrc": "2595:11:84",
                        "nodeType": "YulFunctionCall",
                        "src": "2595:11:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "2572:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "2572:6:84"
                    },
                    "nativeSrc": "2572:35:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2572:35:84"
                  },
                  "nativeSrc": "2572:35:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "2572:35:84"
                },
                {
                  "nativeSrc": "2616:19:84",
                  "nodeType": "YulAssignment",
                  "src": "2616:19:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "2627:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "2627:3:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "2632:2:84",
                        "nodeType": "YulLiteral",
                        "src": "2632:2:84",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "2623:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "2623:3:84"
                    },
                    "nativeSrc": "2623:12:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2623:12:84"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "2616:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "2616:3:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_stringliteral_56e8",
            "nativeSrc": "2484:157:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "2523:3:84",
                "nodeType": "YulTypedName",
                "src": "2523:3:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "2531:3:84",
                "nodeType": "YulTypedName",
                "src": "2531:3:84",
                "type": ""
              }
            ],
            "src": "2484:157:84"
          },
          {
            "body": {
              "nativeSrc": "3220:1513:84",
              "nodeType": "YulBlock",
              "src": "3220:1513:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "3255:22:84",
                    "nodeType": "YulBlock",
                    "src": "3255:22:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x21",
                            "nativeSrc": "3257:16:84",
                            "nodeType": "YulIdentifier",
                            "src": "3257:16:84"
                          },
                          "nativeSrc": "3257:18:84",
                          "nodeType": "YulFunctionCall",
                          "src": "3257:18:84"
                        },
                        "nativeSrc": "3257:18:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "3257:18:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "3243:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "3243:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "3251:1:84",
                            "nodeType": "YulLiteral",
                            "src": "3251:1:84",
                            "type": "",
                            "value": "5"
                          }
                        ],
                        "functionName": {
                          "name": "lt",
                          "nativeSrc": "3240:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "3240:2:84"
                        },
                        "nativeSrc": "3240:13:84",
                        "nodeType": "YulFunctionCall",
                        "src": "3240:13:84"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "3233:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "3233:6:84"
                    },
                    "nativeSrc": "3233:21:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3233:21:84"
                  },
                  "nativeSrc": "3230:47:84",
                  "nodeType": "YulIf",
                  "src": "3230:47:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "3293:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "3293:9:84"
                      },
                      {
                        "name": "value0",
                        "nativeSrc": "3304:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "3304:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "3286:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "3286:6:84"
                    },
                    "nativeSrc": "3286:25:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3286:25:84"
                  },
                  "nativeSrc": "3286:25:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "3286:25:84"
                },
                {
                  "nativeSrc": "3320:12:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "3320:12:84",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "3330:2:84",
                    "nodeType": "YulLiteral",
                    "src": "3330:2:84",
                    "type": "",
                    "value": "32"
                  },
                  "variables": [
                    {
                      "name": "_1",
                      "nativeSrc": "3324:2:84",
                      "nodeType": "YulTypedName",
                      "src": "3324:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "3352:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "3352:9:84"
                          },
                          {
                            "name": "_1",
                            "nativeSrc": "3363:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "3363:2:84"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "3348:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "3348:3:84"
                        },
                        "nativeSrc": "3348:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "3348:18:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3368:3:84",
                        "nodeType": "YulLiteral",
                        "src": "3368:3:84",
                        "type": "",
                        "value": "160"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "3341:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "3341:6:84"
                    },
                    "nativeSrc": "3341:31:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3341:31:84"
                  },
                  "nativeSrc": "3341:31:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "3341:31:84"
                },
                {
                  "nativeSrc": "3381:11:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "3381:11:84",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "3391:1:84",
                    "nodeType": "YulLiteral",
                    "src": "3391:1:84",
                    "type": "",
                    "value": "0"
                  },
                  "variables": [
                    {
                      "name": "_2",
                      "nativeSrc": "3385:2:84",
                      "nodeType": "YulTypedName",
                      "src": "3385:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "3412:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "3412:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "3423:3:84",
                            "nodeType": "YulLiteral",
                            "src": "3423:3:84",
                            "type": "",
                            "value": "160"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "3408:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "3408:3:84"
                        },
                        "nativeSrc": "3408:19:84",
                        "nodeType": "YulFunctionCall",
                        "src": "3408:19:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3429:1:84",
                        "nodeType": "YulLiteral",
                        "src": "3429:1:84",
                        "type": "",
                        "value": "0"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "3401:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "3401:6:84"
                    },
                    "nativeSrc": "3401:30:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3401:30:84"
                  },
                  "nativeSrc": "3401:30:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "3401:30:84"
                },
                {
                  "nativeSrc": "3440:12:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "3440:12:84",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "3450:2:84",
                    "nodeType": "YulLiteral",
                    "src": "3450:2:84",
                    "type": "",
                    "value": "64"
                  },
                  "variables": [
                    {
                      "name": "_3",
                      "nativeSrc": "3444:2:84",
                      "nodeType": "YulTypedName",
                      "src": "3444:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "3472:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "3472:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "3483:2:84",
                            "nodeType": "YulLiteral",
                            "src": "3483:2:84",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "3468:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "3468:3:84"
                        },
                        "nativeSrc": "3468:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "3468:18:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3488:3:84",
                        "nodeType": "YulLiteral",
                        "src": "3488:3:84",
                        "type": "",
                        "value": "192"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "3461:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "3461:6:84"
                    },
                    "nativeSrc": "3461:31:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3461:31:84"
                  },
                  "nativeSrc": "3461:31:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "3461:31:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "3512:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "3512:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "3523:3:84",
                            "nodeType": "YulLiteral",
                            "src": "3523:3:84",
                            "type": "",
                            "value": "192"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "3508:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "3508:3:84"
                        },
                        "nativeSrc": "3508:19:84",
                        "nodeType": "YulFunctionCall",
                        "src": "3508:19:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3529:1:84",
                        "nodeType": "YulLiteral",
                        "src": "3529:1:84",
                        "type": "",
                        "value": "0"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "3501:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "3501:6:84"
                    },
                    "nativeSrc": "3501:30:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3501:30:84"
                  },
                  "nativeSrc": "3501:30:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "3501:30:84"
                },
                {
                  "nativeSrc": "3540:38:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "3540:38:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "3563:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "3563:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3574:3:84",
                        "nodeType": "YulLiteral",
                        "src": "3574:3:84",
                        "type": "",
                        "value": "224"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "3559:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "3559:3:84"
                    },
                    "nativeSrc": "3559:19:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3559:19:84"
                  },
                  "variables": [
                    {
                      "name": "updated_pos",
                      "nativeSrc": "3544:11:84",
                      "nodeType": "YulTypedName",
                      "src": "3544:11:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "3598:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "3598:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "3609:2:84",
                            "nodeType": "YulLiteral",
                            "src": "3609:2:84",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "3594:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "3594:3:84"
                        },
                        "nativeSrc": "3594:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "3594:18:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3614:3:84",
                        "nodeType": "YulLiteral",
                        "src": "3614:3:84",
                        "type": "",
                        "value": "224"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "3587:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "3587:6:84"
                    },
                    "nativeSrc": "3587:31:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3587:31:84"
                  },
                  "nativeSrc": "3587:31:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "3587:31:84"
                },
                {
                  "nativeSrc": "3627:22:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "3627:22:84",
                  "value": {
                    "name": "updated_pos",
                    "nativeSrc": "3638:11:84",
                    "nodeType": "YulIdentifier",
                    "src": "3638:11:84"
                  },
                  "variables": [
                    {
                      "name": "pos",
                      "nativeSrc": "3631:3:84",
                      "nodeType": "YulTypedName",
                      "src": "3631:3:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "3658:27:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "3658:27:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value1",
                        "nativeSrc": "3678:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "3678:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "3672:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "3672:5:84"
                    },
                    "nativeSrc": "3672:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3672:13:84"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "3662:6:84",
                      "nodeType": "YulTypedName",
                      "src": "3662:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "updated_pos",
                        "nativeSrc": "3701:11:84",
                        "nodeType": "YulIdentifier",
                        "src": "3701:11:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "3714:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "3714:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "3694:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "3694:6:84"
                    },
                    "nativeSrc": "3694:27:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3694:27:84"
                  },
                  "nativeSrc": "3694:27:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "3694:27:84"
                },
                {
                  "nativeSrc": "3730:13:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "3730:13:84",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "3740:3:84",
                    "nodeType": "YulLiteral",
                    "src": "3740:3:84",
                    "type": "",
                    "value": "256"
                  },
                  "variables": [
                    {
                      "name": "_4",
                      "nativeSrc": "3734:2:84",
                      "nodeType": "YulTypedName",
                      "src": "3734:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "3752:25:84",
                  "nodeType": "YulAssignment",
                  "src": "3752:25:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "3763:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "3763:9:84"
                      },
                      {
                        "name": "_4",
                        "nativeSrc": "3774:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "3774:2:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "3759:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "3759:3:84"
                    },
                    "nativeSrc": "3759:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3759:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "pos",
                      "nativeSrc": "3752:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "3752:3:84"
                    }
                  ]
                },
                {
                  "nativeSrc": "3786:53:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "3786:53:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "3808:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "3808:9:84"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "3823:1:84",
                                "nodeType": "YulLiteral",
                                "src": "3823:1:84",
                                "type": "",
                                "value": "5"
                              },
                              {
                                "name": "length",
                                "nativeSrc": "3826:6:84",
                                "nodeType": "YulIdentifier",
                                "src": "3826:6:84"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "3819:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "3819:3:84"
                            },
                            "nativeSrc": "3819:14:84",
                            "nodeType": "YulFunctionCall",
                            "src": "3819:14:84"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "3804:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "3804:3:84"
                        },
                        "nativeSrc": "3804:30:84",
                        "nodeType": "YulFunctionCall",
                        "src": "3804:30:84"
                      },
                      {
                        "name": "_4",
                        "nativeSrc": "3836:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "3836:2:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "3800:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "3800:3:84"
                    },
                    "nativeSrc": "3800:39:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3800:39:84"
                  },
                  "variables": [
                    {
                      "name": "tail_1",
                      "nativeSrc": "3790:6:84",
                      "nodeType": "YulTypedName",
                      "src": "3790:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "3848:29:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "3848:29:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value1",
                        "nativeSrc": "3866:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "3866:6:84"
                      },
                      {
                        "name": "_1",
                        "nativeSrc": "3874:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "3874:2:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "3862:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "3862:3:84"
                    },
                    "nativeSrc": "3862:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3862:15:84"
                  },
                  "variables": [
                    {
                      "name": "srcPtr",
                      "nativeSrc": "3852:6:84",
                      "nodeType": "YulTypedName",
                      "src": "3852:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "3886:10:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "3886:10:84",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "3895:1:84",
                    "nodeType": "YulLiteral",
                    "src": "3895:1:84",
                    "type": "",
                    "value": "0"
                  },
                  "variables": [
                    {
                      "name": "i",
                      "nativeSrc": "3890:1:84",
                      "nodeType": "YulTypedName",
                      "src": "3890:1:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "3954:659:84",
                    "nodeType": "YulBlock",
                    "src": "3954:659:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "name": "pos",
                              "nativeSrc": "3975:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "3975:3:84"
                            },
                            {
                              "arguments": [
                                {
                                  "arguments": [
                                    {
                                      "name": "tail_1",
                                      "nativeSrc": "3988:6:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "3988:6:84"
                                    },
                                    {
                                      "name": "headStart",
                                      "nativeSrc": "3996:9:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "3996:9:84"
                                    }
                                  ],
                                  "functionName": {
                                    "name": "sub",
                                    "nativeSrc": "3984:3:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "3984:3:84"
                                  },
                                  "nativeSrc": "3984:22:84",
                                  "nodeType": "YulFunctionCall",
                                  "src": "3984:22:84"
                                },
                                {
                                  "arguments": [
                                    {
                                      "kind": "number",
                                      "nativeSrc": "4012:3:84",
                                      "nodeType": "YulLiteral",
                                      "src": "4012:3:84",
                                      "type": "",
                                      "value": "255"
                                    }
                                  ],
                                  "functionName": {
                                    "name": "not",
                                    "nativeSrc": "4008:3:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "4008:3:84"
                                  },
                                  "nativeSrc": "4008:8:84",
                                  "nodeType": "YulFunctionCall",
                                  "src": "4008:8:84"
                                }
                              ],
                              "functionName": {
                                "name": "add",
                                "nativeSrc": "3980:3:84",
                                "nodeType": "YulIdentifier",
                                "src": "3980:3:84"
                              },
                              "nativeSrc": "3980:37:84",
                              "nodeType": "YulFunctionCall",
                              "src": "3980:37:84"
                            }
                          ],
                          "functionName": {
                            "name": "mstore",
                            "nativeSrc": "3968:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "3968:6:84"
                          },
                          "nativeSrc": "3968:50:84",
                          "nodeType": "YulFunctionCall",
                          "src": "3968:50:84"
                        },
                        "nativeSrc": "3968:50:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "3968:50:84"
                      },
                      {
                        "nativeSrc": "4031:23:84",
                        "nodeType": "YulVariableDeclaration",
                        "src": "4031:23:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "srcPtr",
                              "nativeSrc": "4047:6:84",
                              "nodeType": "YulIdentifier",
                              "src": "4047:6:84"
                            }
                          ],
                          "functionName": {
                            "name": "mload",
                            "nativeSrc": "4041:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "4041:5:84"
                          },
                          "nativeSrc": "4041:13:84",
                          "nodeType": "YulFunctionCall",
                          "src": "4041:13:84"
                        },
                        "variables": [
                          {
                            "name": "_5",
                            "nativeSrc": "4035:2:84",
                            "nodeType": "YulTypedName",
                            "src": "4035:2:84",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "nativeSrc": "4067:19:84",
                        "nodeType": "YulVariableDeclaration",
                        "src": "4067:19:84",
                        "value": {
                          "name": "tail_1",
                          "nativeSrc": "4080:6:84",
                          "nodeType": "YulIdentifier",
                          "src": "4080:6:84"
                        },
                        "variables": [
                          {
                            "name": "pos_1",
                            "nativeSrc": "4071:5:84",
                            "nodeType": "YulTypedName",
                            "src": "4071:5:84",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "nativeSrc": "4099:15:84",
                        "nodeType": "YulAssignment",
                        "src": "4099:15:84",
                        "value": {
                          "name": "tail_1",
                          "nativeSrc": "4108:6:84",
                          "nodeType": "YulIdentifier",
                          "src": "4108:6:84"
                        },
                        "variableNames": [
                          {
                            "name": "pos_1",
                            "nativeSrc": "4099:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "4099:5:84"
                          }
                        ]
                      },
                      {
                        "nativeSrc": "4127:29:84",
                        "nodeType": "YulVariableDeclaration",
                        "src": "4127:29:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "tail_1",
                              "nativeSrc": "4145:6:84",
                              "nodeType": "YulIdentifier",
                              "src": "4145:6:84"
                            },
                            {
                              "name": "_3",
                              "nativeSrc": "4153:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "4153:2:84"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "4141:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "4141:3:84"
                          },
                          "nativeSrc": "4141:15:84",
                          "nodeType": "YulFunctionCall",
                          "src": "4141:15:84"
                        },
                        "variables": [
                          {
                            "name": "tail_2",
                            "nativeSrc": "4131:6:84",
                            "nodeType": "YulTypedName",
                            "src": "4131:6:84",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "nativeSrc": "4169:18:84",
                        "nodeType": "YulVariableDeclaration",
                        "src": "4169:18:84",
                        "value": {
                          "name": "_5",
                          "nativeSrc": "4185:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "4185:2:84"
                        },
                        "variables": [
                          {
                            "name": "srcPtr_1",
                            "nativeSrc": "4173:8:84",
                            "nodeType": "YulTypedName",
                            "src": "4173:8:84",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "nativeSrc": "4200:13:84",
                        "nodeType": "YulVariableDeclaration",
                        "src": "4200:13:84",
                        "value": {
                          "name": "_2",
                          "nativeSrc": "4211:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "4211:2:84"
                        },
                        "variables": [
                          {
                            "name": "i_1",
                            "nativeSrc": "4204:3:84",
                            "nodeType": "YulTypedName",
                            "src": "4204:3:84",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "body": {
                          "nativeSrc": "4283:221:84",
                          "nodeType": "YulBlock",
                          "src": "4283:221:84",
                          "statements": [
                            {
                              "expression": {
                                "arguments": [
                                  {
                                    "name": "pos_1",
                                    "nativeSrc": "4308:5:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "4308:5:84"
                                  },
                                  {
                                    "arguments": [
                                      {
                                        "name": "tail_2",
                                        "nativeSrc": "4319:6:84",
                                        "nodeType": "YulIdentifier",
                                        "src": "4319:6:84"
                                      },
                                      {
                                        "name": "tail_1",
                                        "nativeSrc": "4327:6:84",
                                        "nodeType": "YulIdentifier",
                                        "src": "4327:6:84"
                                      }
                                    ],
                                    "functionName": {
                                      "name": "sub",
                                      "nativeSrc": "4315:3:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "4315:3:84"
                                    },
                                    "nativeSrc": "4315:19:84",
                                    "nodeType": "YulFunctionCall",
                                    "src": "4315:19:84"
                                  }
                                ],
                                "functionName": {
                                  "name": "mstore",
                                  "nativeSrc": "4301:6:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "4301:6:84"
                                },
                                "nativeSrc": "4301:34:84",
                                "nodeType": "YulFunctionCall",
                                "src": "4301:34:84"
                              },
                              "nativeSrc": "4301:34:84",
                              "nodeType": "YulExpressionStatement",
                              "src": "4301:34:84"
                            },
                            {
                              "nativeSrc": "4352:52:84",
                              "nodeType": "YulAssignment",
                              "src": "4352:52:84",
                              "value": {
                                "arguments": [
                                  {
                                    "arguments": [
                                      {
                                        "name": "srcPtr_1",
                                        "nativeSrc": "4386:8:84",
                                        "nodeType": "YulIdentifier",
                                        "src": "4386:8:84"
                                      }
                                    ],
                                    "functionName": {
                                      "name": "mload",
                                      "nativeSrc": "4380:5:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "4380:5:84"
                                    },
                                    "nativeSrc": "4380:15:84",
                                    "nodeType": "YulFunctionCall",
                                    "src": "4380:15:84"
                                  },
                                  {
                                    "name": "tail_2",
                                    "nativeSrc": "4397:6:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "4397:6:84"
                                  }
                                ],
                                "functionName": {
                                  "name": "abi_encode_string",
                                  "nativeSrc": "4362:17:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "4362:17:84"
                                },
                                "nativeSrc": "4362:42:84",
                                "nodeType": "YulFunctionCall",
                                "src": "4362:42:84"
                              },
                              "variableNames": [
                                {
                                  "name": "tail_2",
                                  "nativeSrc": "4352:6:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "4352:6:84"
                                }
                              ]
                            },
                            {
                              "nativeSrc": "4421:29:84",
                              "nodeType": "YulAssignment",
                              "src": "4421:29:84",
                              "value": {
                                "arguments": [
                                  {
                                    "name": "srcPtr_1",
                                    "nativeSrc": "4437:8:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "4437:8:84"
                                  },
                                  {
                                    "name": "_1",
                                    "nativeSrc": "4447:2:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "4447:2:84"
                                  }
                                ],
                                "functionName": {
                                  "name": "add",
                                  "nativeSrc": "4433:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "4433:3:84"
                                },
                                "nativeSrc": "4433:17:84",
                                "nodeType": "YulFunctionCall",
                                "src": "4433:17:84"
                              },
                              "variableNames": [
                                {
                                  "name": "srcPtr_1",
                                  "nativeSrc": "4421:8:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "4421:8:84"
                                }
                              ]
                            },
                            {
                              "nativeSrc": "4467:23:84",
                              "nodeType": "YulAssignment",
                              "src": "4467:23:84",
                              "value": {
                                "arguments": [
                                  {
                                    "name": "pos_1",
                                    "nativeSrc": "4480:5:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "4480:5:84"
                                  },
                                  {
                                    "name": "_1",
                                    "nativeSrc": "4487:2:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "4487:2:84"
                                  }
                                ],
                                "functionName": {
                                  "name": "add",
                                  "nativeSrc": "4476:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "4476:3:84"
                                },
                                "nativeSrc": "4476:14:84",
                                "nodeType": "YulFunctionCall",
                                "src": "4476:14:84"
                              },
                              "variableNames": [
                                {
                                  "name": "pos_1",
                                  "nativeSrc": "4467:5:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "4467:5:84"
                                }
                              ]
                            }
                          ]
                        },
                        "condition": {
                          "arguments": [
                            {
                              "name": "i_1",
                              "nativeSrc": "4237:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "4237:3:84"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "4242:4:84",
                              "nodeType": "YulLiteral",
                              "src": "4242:4:84",
                              "type": "",
                              "value": "0x02"
                            }
                          ],
                          "functionName": {
                            "name": "lt",
                            "nativeSrc": "4234:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "4234:2:84"
                          },
                          "nativeSrc": "4234:13:84",
                          "nodeType": "YulFunctionCall",
                          "src": "4234:13:84"
                        },
                        "nativeSrc": "4226:278:84",
                        "nodeType": "YulForLoop",
                        "post": {
                          "nativeSrc": "4248:22:84",
                          "nodeType": "YulBlock",
                          "src": "4248:22:84",
                          "statements": [
                            {
                              "nativeSrc": "4250:18:84",
                              "nodeType": "YulAssignment",
                              "src": "4250:18:84",
                              "value": {
                                "arguments": [
                                  {
                                    "name": "i_1",
                                    "nativeSrc": "4261:3:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "4261:3:84"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "4266:1:84",
                                    "nodeType": "YulLiteral",
                                    "src": "4266:1:84",
                                    "type": "",
                                    "value": "1"
                                  }
                                ],
                                "functionName": {
                                  "name": "add",
                                  "nativeSrc": "4257:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "4257:3:84"
                                },
                                "nativeSrc": "4257:11:84",
                                "nodeType": "YulFunctionCall",
                                "src": "4257:11:84"
                              },
                              "variableNames": [
                                {
                                  "name": "i_1",
                                  "nativeSrc": "4250:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "4250:3:84"
                                }
                              ]
                            }
                          ]
                        },
                        "pre": {
                          "nativeSrc": "4230:3:84",
                          "nodeType": "YulBlock",
                          "src": "4230:3:84",
                          "statements": []
                        },
                        "src": "4226:278:84"
                      },
                      {
                        "nativeSrc": "4517:16:84",
                        "nodeType": "YulAssignment",
                        "src": "4517:16:84",
                        "value": {
                          "name": "tail_2",
                          "nativeSrc": "4527:6:84",
                          "nodeType": "YulIdentifier",
                          "src": "4527:6:84"
                        },
                        "variableNames": [
                          {
                            "name": "tail_1",
                            "nativeSrc": "4517:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "4517:6:84"
                          }
                        ]
                      },
                      {
                        "nativeSrc": "4546:25:84",
                        "nodeType": "YulAssignment",
                        "src": "4546:25:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "srcPtr",
                              "nativeSrc": "4560:6:84",
                              "nodeType": "YulIdentifier",
                              "src": "4560:6:84"
                            },
                            {
                              "name": "_1",
                              "nativeSrc": "4568:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "4568:2:84"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "4556:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "4556:3:84"
                          },
                          "nativeSrc": "4556:15:84",
                          "nodeType": "YulFunctionCall",
                          "src": "4556:15:84"
                        },
                        "variableNames": [
                          {
                            "name": "srcPtr",
                            "nativeSrc": "4546:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "4546:6:84"
                          }
                        ]
                      },
                      {
                        "nativeSrc": "4584:19:84",
                        "nodeType": "YulAssignment",
                        "src": "4584:19:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "pos",
                              "nativeSrc": "4595:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "4595:3:84"
                            },
                            {
                              "name": "_1",
                              "nativeSrc": "4600:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "4600:2:84"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "4591:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "4591:3:84"
                          },
                          "nativeSrc": "4591:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "4591:12:84"
                        },
                        "variableNames": [
                          {
                            "name": "pos",
                            "nativeSrc": "4584:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "4584:3:84"
                          }
                        ]
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "i",
                        "nativeSrc": "3916:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "3916:1:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "3919:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "3919:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "lt",
                      "nativeSrc": "3913:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "3913:2:84"
                    },
                    "nativeSrc": "3913:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3913:13:84"
                  },
                  "nativeSrc": "3905:708:84",
                  "nodeType": "YulForLoop",
                  "post": {
                    "nativeSrc": "3927:18:84",
                    "nodeType": "YulBlock",
                    "src": "3927:18:84",
                    "statements": [
                      {
                        "nativeSrc": "3929:14:84",
                        "nodeType": "YulAssignment",
                        "src": "3929:14:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "i",
                              "nativeSrc": "3938:1:84",
                              "nodeType": "YulIdentifier",
                              "src": "3938:1:84"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "3941:1:84",
                              "nodeType": "YulLiteral",
                              "src": "3941:1:84",
                              "type": "",
                              "value": "1"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "3934:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "3934:3:84"
                          },
                          "nativeSrc": "3934:9:84",
                          "nodeType": "YulFunctionCall",
                          "src": "3934:9:84"
                        },
                        "variableNames": [
                          {
                            "name": "i",
                            "nativeSrc": "3929:1:84",
                            "nodeType": "YulIdentifier",
                            "src": "3929:1:84"
                          }
                        ]
                      }
                    ]
                  },
                  "pre": {
                    "nativeSrc": "3909:3:84",
                    "nodeType": "YulBlock",
                    "src": "3909:3:84",
                    "statements": []
                  },
                  "src": "3905:708:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "4633:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "4633:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "4644:3:84",
                            "nodeType": "YulLiteral",
                            "src": "4644:3:84",
                            "type": "",
                            "value": "128"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "4629:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "4629:3:84"
                        },
                        "nativeSrc": "4629:19:84",
                        "nodeType": "YulFunctionCall",
                        "src": "4629:19:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "tail_1",
                            "nativeSrc": "4654:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "4654:6:84"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "4662:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "4662:9:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "4650:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "4650:3:84"
                        },
                        "nativeSrc": "4650:22:84",
                        "nodeType": "YulFunctionCall",
                        "src": "4650:22:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "4622:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "4622:6:84"
                    },
                    "nativeSrc": "4622:51:84",
                    "nodeType": "YulFunctionCall",
                    "src": "4622:51:84"
                  },
                  "nativeSrc": "4622:51:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "4622:51:84"
                },
                {
                  "nativeSrc": "4682:45:84",
                  "nodeType": "YulAssignment",
                  "src": "4682:45:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "tail_1",
                        "nativeSrc": "4720:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "4720:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_stringliteral_56e8",
                      "nativeSrc": "4690:29:84",
                      "nodeType": "YulIdentifier",
                      "src": "4690:29:84"
                    },
                    "nativeSrc": "4690:37:84",
                    "nodeType": "YulFunctionCall",
                    "src": "4690:37:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "4682:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "4682:4:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_enum$_RadonDataRequestMethods_$16410_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470_t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr_t_stringliteral_56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421__to_t_uint8_t_string_memory_ptr_t_string_memory_ptr_t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__fromStack_reversed",
            "nativeSrc": "2646:2087:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "3181:9:84",
                "nodeType": "YulTypedName",
                "src": "3181:9:84",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "3192:6:84",
                "nodeType": "YulTypedName",
                "src": "3192:6:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "3200:6:84",
                "nodeType": "YulTypedName",
                "src": "3200:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "3211:4:84",
                "nodeType": "YulTypedName",
                "src": "3211:4:84",
                "type": ""
              }
            ],
            "src": "2646:2087:84"
          },
          {
            "body": {
              "nativeSrc": "4819:103:84",
              "nodeType": "YulBlock",
              "src": "4819:103:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "4865:16:84",
                    "nodeType": "YulBlock",
                    "src": "4865:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "4874:1:84",
                              "nodeType": "YulLiteral",
                              "src": "4874:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "4877:1:84",
                              "nodeType": "YulLiteral",
                              "src": "4877:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "4867:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "4867:6:84"
                          },
                          "nativeSrc": "4867:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "4867:12:84"
                        },
                        "nativeSrc": "4867:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "4867:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "4840:7:84",
                            "nodeType": "YulIdentifier",
                            "src": "4840:7:84"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "4849:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "4849:9:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "4836:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "4836:3:84"
                        },
                        "nativeSrc": "4836:23:84",
                        "nodeType": "YulFunctionCall",
                        "src": "4836:23:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "4861:2:84",
                        "nodeType": "YulLiteral",
                        "src": "4861:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "4832:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "4832:3:84"
                    },
                    "nativeSrc": "4832:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "4832:32:84"
                  },
                  "nativeSrc": "4829:52:84",
                  "nodeType": "YulIf",
                  "src": "4829:52:84"
                },
                {
                  "nativeSrc": "4890:26:84",
                  "nodeType": "YulAssignment",
                  "src": "4890:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "4906:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "4906:9:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "4900:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "4900:5:84"
                    },
                    "nativeSrc": "4900:16:84",
                    "nodeType": "YulFunctionCall",
                    "src": "4900:16:84"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "4890:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "4890:6:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_bytes32_fromMemory",
            "nativeSrc": "4738:184:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "4785:9:84",
                "nodeType": "YulTypedName",
                "src": "4785:9:84",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "4796:7:84",
                "nodeType": "YulTypedName",
                "src": "4796:7:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "4808:6:84",
                "nodeType": "YulTypedName",
                "src": "4808:6:84",
                "type": ""
              }
            ],
            "src": "4738:184:84"
          },
          {
            "body": {
              "nativeSrc": "4959:95:84",
              "nodeType": "YulBlock",
              "src": "4959:95:84",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "4976:1:84",
                        "nodeType": "YulLiteral",
                        "src": "4976:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "4983:3:84",
                            "nodeType": "YulLiteral",
                            "src": "4983:3:84",
                            "type": "",
                            "value": "224"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "4988:10:84",
                            "nodeType": "YulLiteral",
                            "src": "4988:10:84",
                            "type": "",
                            "value": "0x4e487b71"
                          }
                        ],
                        "functionName": {
                          "name": "shl",
                          "nativeSrc": "4979:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "4979:3:84"
                        },
                        "nativeSrc": "4979:20:84",
                        "nodeType": "YulFunctionCall",
                        "src": "4979:20:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "4969:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "4969:6:84"
                    },
                    "nativeSrc": "4969:31:84",
                    "nodeType": "YulFunctionCall",
                    "src": "4969:31:84"
                  },
                  "nativeSrc": "4969:31:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "4969:31:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "5016:1:84",
                        "nodeType": "YulLiteral",
                        "src": "5016:1:84",
                        "type": "",
                        "value": "4"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "5019:4:84",
                        "nodeType": "YulLiteral",
                        "src": "5019:4:84",
                        "type": "",
                        "value": "0x32"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "5009:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "5009:6:84"
                    },
                    "nativeSrc": "5009:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5009:15:84"
                  },
                  "nativeSrc": "5009:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "5009:15:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "5040:1:84",
                        "nodeType": "YulLiteral",
                        "src": "5040:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "5043:4:84",
                        "nodeType": "YulLiteral",
                        "src": "5043:4:84",
                        "type": "",
                        "value": "0x24"
                      }
                    ],
                    "functionName": {
                      "name": "revert",
                      "nativeSrc": "5033:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "5033:6:84"
                    },
                    "nativeSrc": "5033:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5033:15:84"
                  },
                  "nativeSrc": "5033:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "5033:15:84"
                }
              ]
            },
            "name": "panic_error_0x32",
            "nativeSrc": "4927:127:84",
            "nodeType": "YulFunctionDefinition",
            "src": "4927:127:84"
          },
          {
            "body": {
              "nativeSrc": "5222:1147:84",
              "nodeType": "YulBlock",
              "src": "5222:1147:84",
              "statements": [
                {
                  "nativeSrc": "5232:12:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "5232:12:84",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "5242:2:84",
                    "nodeType": "YulLiteral",
                    "src": "5242:2:84",
                    "type": "",
                    "value": "32"
                  },
                  "variables": [
                    {
                      "name": "_1",
                      "nativeSrc": "5236:2:84",
                      "nodeType": "YulTypedName",
                      "src": "5236:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "5260:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "5260:9:84"
                      },
                      {
                        "name": "_1",
                        "nativeSrc": "5271:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "5271:2:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "5253:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "5253:6:84"
                    },
                    "nativeSrc": "5253:21:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5253:21:84"
                  },
                  "nativeSrc": "5253:21:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "5253:21:84"
                },
                {
                  "nativeSrc": "5283:32:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "5283:32:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "5301:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "5301:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "5312:2:84",
                        "nodeType": "YulLiteral",
                        "src": "5312:2:84",
                        "type": "",
                        "value": "96"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "5297:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "5297:3:84"
                    },
                    "nativeSrc": "5297:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5297:18:84"
                  },
                  "variables": [
                    {
                      "name": "tail_1",
                      "nativeSrc": "5287:6:84",
                      "nodeType": "YulTypedName",
                      "src": "5287:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "5324:23:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "5324:23:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value0",
                        "nativeSrc": "5340:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "5340:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "5334:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "5334:5:84"
                    },
                    "nativeSrc": "5334:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5334:13:84"
                  },
                  "variables": [
                    {
                      "name": "_2",
                      "nativeSrc": "5328:2:84",
                      "nodeType": "YulTypedName",
                      "src": "5328:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "5378:22:84",
                    "nodeType": "YulBlock",
                    "src": "5378:22:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x21",
                            "nativeSrc": "5380:16:84",
                            "nodeType": "YulIdentifier",
                            "src": "5380:16:84"
                          },
                          "nativeSrc": "5380:18:84",
                          "nodeType": "YulFunctionCall",
                          "src": "5380:18:84"
                        },
                        "nativeSrc": "5380:18:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "5380:18:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "_2",
                            "nativeSrc": "5369:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "5369:2:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "5373:2:84",
                            "nodeType": "YulLiteral",
                            "src": "5373:2:84",
                            "type": "",
                            "value": "12"
                          }
                        ],
                        "functionName": {
                          "name": "lt",
                          "nativeSrc": "5366:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "5366:2:84"
                        },
                        "nativeSrc": "5366:10:84",
                        "nodeType": "YulFunctionCall",
                        "src": "5366:10:84"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "5359:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "5359:6:84"
                    },
                    "nativeSrc": "5359:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5359:18:84"
                  },
                  "nativeSrc": "5356:44:84",
                  "nodeType": "YulIf",
                  "src": "5356:44:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "5420:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "5420:9:84"
                          },
                          {
                            "name": "_1",
                            "nativeSrc": "5431:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "5431:2:84"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "5416:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "5416:3:84"
                        },
                        "nativeSrc": "5416:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "5416:18:84"
                      },
                      {
                        "name": "_2",
                        "nativeSrc": "5436:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "5436:2:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "5409:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "5409:6:84"
                    },
                    "nativeSrc": "5409:30:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5409:30:84"
                  },
                  "nativeSrc": "5409:30:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "5409:30:84"
                },
                {
                  "nativeSrc": "5448:42:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "5448:42:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "5478:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "5478:6:84"
                          },
                          {
                            "name": "_1",
                            "nativeSrc": "5486:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "5486:2:84"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "5474:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "5474:3:84"
                        },
                        "nativeSrc": "5474:15:84",
                        "nodeType": "YulFunctionCall",
                        "src": "5474:15:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "5468:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "5468:5:84"
                    },
                    "nativeSrc": "5468:22:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5468:22:84"
                  },
                  "variables": [
                    {
                      "name": "memberValue0",
                      "nativeSrc": "5452:12:84",
                      "nodeType": "YulTypedName",
                      "src": "5452:12:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "5499:14:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "5499:14:84",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "5509:4:84",
                    "nodeType": "YulLiteral",
                    "src": "5509:4:84",
                    "type": "",
                    "value": "0x40"
                  },
                  "variables": [
                    {
                      "name": "_3",
                      "nativeSrc": "5503:2:84",
                      "nodeType": "YulTypedName",
                      "src": "5503:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "5533:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "5533:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "5544:4:84",
                            "nodeType": "YulLiteral",
                            "src": "5544:4:84",
                            "type": "",
                            "value": "0x40"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "5529:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "5529:3:84"
                        },
                        "nativeSrc": "5529:20:84",
                        "nodeType": "YulFunctionCall",
                        "src": "5529:20:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "5551:4:84",
                        "nodeType": "YulLiteral",
                        "src": "5551:4:84",
                        "type": "",
                        "value": "0x40"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "5522:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "5522:6:84"
                    },
                    "nativeSrc": "5522:34:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5522:34:84"
                  },
                  "nativeSrc": "5522:34:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "5522:34:84"
                },
                {
                  "nativeSrc": "5565:17:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "5565:17:84",
                  "value": {
                    "name": "tail_1",
                    "nativeSrc": "5576:6:84",
                    "nodeType": "YulIdentifier",
                    "src": "5576:6:84"
                  },
                  "variables": [
                    {
                      "name": "pos",
                      "nativeSrc": "5569:3:84",
                      "nodeType": "YulTypedName",
                      "src": "5569:3:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "5591:33:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "5591:33:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "memberValue0",
                        "nativeSrc": "5611:12:84",
                        "nodeType": "YulIdentifier",
                        "src": "5611:12:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "5605:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "5605:5:84"
                    },
                    "nativeSrc": "5605:19:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5605:19:84"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "5595:6:84",
                      "nodeType": "YulTypedName",
                      "src": "5595:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "tail_1",
                        "nativeSrc": "5640:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "5640:6:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "5648:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "5648:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "5633:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "5633:6:84"
                    },
                    "nativeSrc": "5633:22:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5633:22:84"
                  },
                  "nativeSrc": "5633:22:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "5633:22:84"
                },
                {
                  "nativeSrc": "5664:26:84",
                  "nodeType": "YulAssignment",
                  "src": "5664:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "5675:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "5675:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "5686:3:84",
                        "nodeType": "YulLiteral",
                        "src": "5686:3:84",
                        "type": "",
                        "value": "128"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "5671:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "5671:3:84"
                    },
                    "nativeSrc": "5671:19:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5671:19:84"
                  },
                  "variableNames": [
                    {
                      "name": "pos",
                      "nativeSrc": "5664:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "5664:3:84"
                    }
                  ]
                },
                {
                  "nativeSrc": "5699:54:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "5699:54:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "5721:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "5721:9:84"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "5736:1:84",
                                "nodeType": "YulLiteral",
                                "src": "5736:1:84",
                                "type": "",
                                "value": "5"
                              },
                              {
                                "name": "length",
                                "nativeSrc": "5739:6:84",
                                "nodeType": "YulIdentifier",
                                "src": "5739:6:84"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "5732:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "5732:3:84"
                            },
                            "nativeSrc": "5732:14:84",
                            "nodeType": "YulFunctionCall",
                            "src": "5732:14:84"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "5717:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "5717:3:84"
                        },
                        "nativeSrc": "5717:30:84",
                        "nodeType": "YulFunctionCall",
                        "src": "5717:30:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "5749:3:84",
                        "nodeType": "YulLiteral",
                        "src": "5749:3:84",
                        "type": "",
                        "value": "128"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "5713:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "5713:3:84"
                    },
                    "nativeSrc": "5713:40:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5713:40:84"
                  },
                  "variables": [
                    {
                      "name": "tail_2",
                      "nativeSrc": "5703:6:84",
                      "nodeType": "YulTypedName",
                      "src": "5703:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "5762:35:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "5762:35:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "memberValue0",
                        "nativeSrc": "5780:12:84",
                        "nodeType": "YulIdentifier",
                        "src": "5780:12:84"
                      },
                      {
                        "name": "_1",
                        "nativeSrc": "5794:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "5794:2:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "5776:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "5776:3:84"
                    },
                    "nativeSrc": "5776:21:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5776:21:84"
                  },
                  "variables": [
                    {
                      "name": "srcPtr",
                      "nativeSrc": "5766:6:84",
                      "nodeType": "YulTypedName",
                      "src": "5766:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "5806:10:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "5806:10:84",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "5815:1:84",
                    "nodeType": "YulLiteral",
                    "src": "5815:1:84",
                    "type": "",
                    "value": "0"
                  },
                  "variables": [
                    {
                      "name": "i",
                      "nativeSrc": "5810:1:84",
                      "nodeType": "YulTypedName",
                      "src": "5810:1:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "5874:466:84",
                    "nodeType": "YulBlock",
                    "src": "5874:466:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "name": "pos",
                              "nativeSrc": "5895:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "5895:3:84"
                            },
                            {
                              "arguments": [
                                {
                                  "arguments": [
                                    {
                                      "name": "tail_2",
                                      "nativeSrc": "5908:6:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "5908:6:84"
                                    },
                                    {
                                      "name": "headStart",
                                      "nativeSrc": "5916:9:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "5916:9:84"
                                    }
                                  ],
                                  "functionName": {
                                    "name": "sub",
                                    "nativeSrc": "5904:3:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "5904:3:84"
                                  },
                                  "nativeSrc": "5904:22:84",
                                  "nodeType": "YulFunctionCall",
                                  "src": "5904:22:84"
                                },
                                {
                                  "arguments": [
                                    {
                                      "kind": "number",
                                      "nativeSrc": "5932:3:84",
                                      "nodeType": "YulLiteral",
                                      "src": "5932:3:84",
                                      "type": "",
                                      "value": "127"
                                    }
                                  ],
                                  "functionName": {
                                    "name": "not",
                                    "nativeSrc": "5928:3:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "5928:3:84"
                                  },
                                  "nativeSrc": "5928:8:84",
                                  "nodeType": "YulFunctionCall",
                                  "src": "5928:8:84"
                                }
                              ],
                              "functionName": {
                                "name": "add",
                                "nativeSrc": "5900:3:84",
                                "nodeType": "YulIdentifier",
                                "src": "5900:3:84"
                              },
                              "nativeSrc": "5900:37:84",
                              "nodeType": "YulFunctionCall",
                              "src": "5900:37:84"
                            }
                          ],
                          "functionName": {
                            "name": "mstore",
                            "nativeSrc": "5888:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "5888:6:84"
                          },
                          "nativeSrc": "5888:50:84",
                          "nodeType": "YulFunctionCall",
                          "src": "5888:50:84"
                        },
                        "nativeSrc": "5888:50:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "5888:50:84"
                      },
                      {
                        "nativeSrc": "5951:23:84",
                        "nodeType": "YulVariableDeclaration",
                        "src": "5951:23:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "srcPtr",
                              "nativeSrc": "5967:6:84",
                              "nodeType": "YulIdentifier",
                              "src": "5967:6:84"
                            }
                          ],
                          "functionName": {
                            "name": "mload",
                            "nativeSrc": "5961:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "5961:5:84"
                          },
                          "nativeSrc": "5961:13:84",
                          "nodeType": "YulFunctionCall",
                          "src": "5961:13:84"
                        },
                        "variables": [
                          {
                            "name": "_4",
                            "nativeSrc": "5955:2:84",
                            "nodeType": "YulTypedName",
                            "src": "5955:2:84",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "nativeSrc": "5987:19:84",
                        "nodeType": "YulVariableDeclaration",
                        "src": "5987:19:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "_4",
                              "nativeSrc": "6003:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "6003:2:84"
                            }
                          ],
                          "functionName": {
                            "name": "mload",
                            "nativeSrc": "5997:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "5997:5:84"
                          },
                          "nativeSrc": "5997:9:84",
                          "nodeType": "YulFunctionCall",
                          "src": "5997:9:84"
                        },
                        "variables": [
                          {
                            "name": "_5",
                            "nativeSrc": "5991:2:84",
                            "nodeType": "YulTypedName",
                            "src": "5991:2:84",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "body": {
                          "nativeSrc": "6041:22:84",
                          "nodeType": "YulBlock",
                          "src": "6041:22:84",
                          "statements": [
                            {
                              "expression": {
                                "arguments": [],
                                "functionName": {
                                  "name": "panic_error_0x21",
                                  "nativeSrc": "6043:16:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "6043:16:84"
                                },
                                "nativeSrc": "6043:18:84",
                                "nodeType": "YulFunctionCall",
                                "src": "6043:18:84"
                              },
                              "nativeSrc": "6043:18:84",
                              "nodeType": "YulExpressionStatement",
                              "src": "6043:18:84"
                            }
                          ]
                        },
                        "condition": {
                          "arguments": [
                            {
                              "arguments": [
                                {
                                  "name": "_5",
                                  "nativeSrc": "6032:2:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "6032:2:84"
                                },
                                {
                                  "kind": "number",
                                  "nativeSrc": "6036:2:84",
                                  "nodeType": "YulLiteral",
                                  "src": "6036:2:84",
                                  "type": "",
                                  "value": "10"
                                }
                              ],
                              "functionName": {
                                "name": "lt",
                                "nativeSrc": "6029:2:84",
                                "nodeType": "YulIdentifier",
                                "src": "6029:2:84"
                              },
                              "nativeSrc": "6029:10:84",
                              "nodeType": "YulFunctionCall",
                              "src": "6029:10:84"
                            }
                          ],
                          "functionName": {
                            "name": "iszero",
                            "nativeSrc": "6022:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "6022:6:84"
                          },
                          "nativeSrc": "6022:18:84",
                          "nodeType": "YulFunctionCall",
                          "src": "6022:18:84"
                        },
                        "nativeSrc": "6019:44:84",
                        "nodeType": "YulIf",
                        "src": "6019:44:84"
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "name": "tail_2",
                              "nativeSrc": "6083:6:84",
                              "nodeType": "YulIdentifier",
                              "src": "6083:6:84"
                            },
                            {
                              "name": "_5",
                              "nativeSrc": "6091:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "6091:2:84"
                            }
                          ],
                          "functionName": {
                            "name": "mstore",
                            "nativeSrc": "6076:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "6076:6:84"
                          },
                          "nativeSrc": "6076:18:84",
                          "nodeType": "YulFunctionCall",
                          "src": "6076:18:84"
                        },
                        "nativeSrc": "6076:18:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "6076:18:84"
                      },
                      {
                        "nativeSrc": "6107:40:84",
                        "nodeType": "YulVariableDeclaration",
                        "src": "6107:40:84",
                        "value": {
                          "arguments": [
                            {
                              "arguments": [
                                {
                                  "name": "_4",
                                  "nativeSrc": "6139:2:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "6139:2:84"
                                },
                                {
                                  "name": "_1",
                                  "nativeSrc": "6143:2:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "6143:2:84"
                                }
                              ],
                              "functionName": {
                                "name": "add",
                                "nativeSrc": "6135:3:84",
                                "nodeType": "YulIdentifier",
                                "src": "6135:3:84"
                              },
                              "nativeSrc": "6135:11:84",
                              "nodeType": "YulFunctionCall",
                              "src": "6135:11:84"
                            }
                          ],
                          "functionName": {
                            "name": "mload",
                            "nativeSrc": "6129:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "6129:5:84"
                          },
                          "nativeSrc": "6129:18:84",
                          "nodeType": "YulFunctionCall",
                          "src": "6129:18:84"
                        },
                        "variables": [
                          {
                            "name": "memberValue0_1",
                            "nativeSrc": "6111:14:84",
                            "nodeType": "YulTypedName",
                            "src": "6111:14:84",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "arguments": [
                                {
                                  "name": "tail_2",
                                  "nativeSrc": "6171:6:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "6171:6:84"
                                },
                                {
                                  "name": "_1",
                                  "nativeSrc": "6179:2:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "6179:2:84"
                                }
                              ],
                              "functionName": {
                                "name": "add",
                                "nativeSrc": "6167:3:84",
                                "nodeType": "YulIdentifier",
                                "src": "6167:3:84"
                              },
                              "nativeSrc": "6167:15:84",
                              "nodeType": "YulFunctionCall",
                              "src": "6167:15:84"
                            },
                            {
                              "name": "_3",
                              "nativeSrc": "6184:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "6184:2:84"
                            }
                          ],
                          "functionName": {
                            "name": "mstore",
                            "nativeSrc": "6160:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "6160:6:84"
                          },
                          "nativeSrc": "6160:27:84",
                          "nodeType": "YulFunctionCall",
                          "src": "6160:27:84"
                        },
                        "nativeSrc": "6160:27:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "6160:27:84"
                      },
                      {
                        "nativeSrc": "6200:60:84",
                        "nodeType": "YulAssignment",
                        "src": "6200:60:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "memberValue0_1",
                              "nativeSrc": "6228:14:84",
                              "nodeType": "YulIdentifier",
                              "src": "6228:14:84"
                            },
                            {
                              "arguments": [
                                {
                                  "name": "tail_2",
                                  "nativeSrc": "6248:6:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "6248:6:84"
                                },
                                {
                                  "name": "_3",
                                  "nativeSrc": "6256:2:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "6256:2:84"
                                }
                              ],
                              "functionName": {
                                "name": "add",
                                "nativeSrc": "6244:3:84",
                                "nodeType": "YulIdentifier",
                                "src": "6244:3:84"
                              },
                              "nativeSrc": "6244:15:84",
                              "nodeType": "YulFunctionCall",
                              "src": "6244:15:84"
                            }
                          ],
                          "functionName": {
                            "name": "abi_encode_string",
                            "nativeSrc": "6210:17:84",
                            "nodeType": "YulIdentifier",
                            "src": "6210:17:84"
                          },
                          "nativeSrc": "6210:50:84",
                          "nodeType": "YulFunctionCall",
                          "src": "6210:50:84"
                        },
                        "variableNames": [
                          {
                            "name": "tail_2",
                            "nativeSrc": "6200:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "6200:6:84"
                          }
                        ]
                      },
                      {
                        "nativeSrc": "6273:25:84",
                        "nodeType": "YulAssignment",
                        "src": "6273:25:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "srcPtr",
                              "nativeSrc": "6287:6:84",
                              "nodeType": "YulIdentifier",
                              "src": "6287:6:84"
                            },
                            {
                              "name": "_1",
                              "nativeSrc": "6295:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "6295:2:84"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "6283:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "6283:3:84"
                          },
                          "nativeSrc": "6283:15:84",
                          "nodeType": "YulFunctionCall",
                          "src": "6283:15:84"
                        },
                        "variableNames": [
                          {
                            "name": "srcPtr",
                            "nativeSrc": "6273:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "6273:6:84"
                          }
                        ]
                      },
                      {
                        "nativeSrc": "6311:19:84",
                        "nodeType": "YulAssignment",
                        "src": "6311:19:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "pos",
                              "nativeSrc": "6322:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "6322:3:84"
                            },
                            {
                              "name": "_1",
                              "nativeSrc": "6327:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "6327:2:84"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "6318:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "6318:3:84"
                          },
                          "nativeSrc": "6318:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "6318:12:84"
                        },
                        "variableNames": [
                          {
                            "name": "pos",
                            "nativeSrc": "6311:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "6311:3:84"
                          }
                        ]
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "i",
                        "nativeSrc": "5836:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "5836:1:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "5839:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "5839:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "lt",
                      "nativeSrc": "5833:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "5833:2:84"
                    },
                    "nativeSrc": "5833:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5833:13:84"
                  },
                  "nativeSrc": "5825:515:84",
                  "nodeType": "YulForLoop",
                  "post": {
                    "nativeSrc": "5847:18:84",
                    "nodeType": "YulBlock",
                    "src": "5847:18:84",
                    "statements": [
                      {
                        "nativeSrc": "5849:14:84",
                        "nodeType": "YulAssignment",
                        "src": "5849:14:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "i",
                              "nativeSrc": "5858:1:84",
                              "nodeType": "YulIdentifier",
                              "src": "5858:1:84"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "5861:1:84",
                              "nodeType": "YulLiteral",
                              "src": "5861:1:84",
                              "type": "",
                              "value": "1"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "5854:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "5854:3:84"
                          },
                          "nativeSrc": "5854:9:84",
                          "nodeType": "YulFunctionCall",
                          "src": "5854:9:84"
                        },
                        "variableNames": [
                          {
                            "name": "i",
                            "nativeSrc": "5849:1:84",
                            "nodeType": "YulIdentifier",
                            "src": "5849:1:84"
                          }
                        ]
                      }
                    ]
                  },
                  "pre": {
                    "nativeSrc": "5829:3:84",
                    "nodeType": "YulBlock",
                    "src": "5829:3:84",
                    "statements": []
                  },
                  "src": "5825:515:84"
                },
                {
                  "nativeSrc": "6349:14:84",
                  "nodeType": "YulAssignment",
                  "src": "6349:14:84",
                  "value": {
                    "name": "tail_2",
                    "nativeSrc": "6357:6:84",
                    "nodeType": "YulIdentifier",
                    "src": "6357:6:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "6349:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "6349:4:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_struct$_RadonReducer_$16460_memory_ptr__to_t_struct$_RadonReducer_$16460_memory_ptr__fromStack_reversed",
            "nativeSrc": "5059:1310:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "5191:9:84",
                "nodeType": "YulTypedName",
                "src": "5191:9:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "5202:6:84",
                "nodeType": "YulTypedName",
                "src": "5202:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "5213:4:84",
                "nodeType": "YulTypedName",
                "src": "5213:4:84",
                "type": ""
              }
            ],
            "src": "5059:1310:84"
          },
          {
            "body": {
              "nativeSrc": "6765:1834:84",
              "nodeType": "YulBlock",
              "src": "6765:1834:84",
              "statements": [
                {
                  "nativeSrc": "6775:33:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "6775:33:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "6793:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "6793:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "6804:3:84",
                        "nodeType": "YulLiteral",
                        "src": "6804:3:84",
                        "type": "",
                        "value": "160"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "6789:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "6789:3:84"
                    },
                    "nativeSrc": "6789:19:84",
                    "nodeType": "YulFunctionCall",
                    "src": "6789:19:84"
                  },
                  "variables": [
                    {
                      "name": "tail_1",
                      "nativeSrc": "6779:6:84",
                      "nodeType": "YulTypedName",
                      "src": "6779:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "6824:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "6824:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "6835:3:84",
                        "nodeType": "YulLiteral",
                        "src": "6835:3:84",
                        "type": "",
                        "value": "160"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "6817:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "6817:6:84"
                    },
                    "nativeSrc": "6817:22:84",
                    "nodeType": "YulFunctionCall",
                    "src": "6817:22:84"
                  },
                  "nativeSrc": "6817:22:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "6817:22:84"
                },
                {
                  "nativeSrc": "6848:17:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "6848:17:84",
                  "value": {
                    "name": "tail_1",
                    "nativeSrc": "6859:6:84",
                    "nodeType": "YulIdentifier",
                    "src": "6859:6:84"
                  },
                  "variables": [
                    {
                      "name": "pos",
                      "nativeSrc": "6852:3:84",
                      "nodeType": "YulTypedName",
                      "src": "6852:3:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "6874:27:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "6874:27:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value0",
                        "nativeSrc": "6894:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "6894:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "6888:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "6888:5:84"
                    },
                    "nativeSrc": "6888:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "6888:13:84"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "6878:6:84",
                      "nodeType": "YulTypedName",
                      "src": "6878:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "tail_1",
                        "nativeSrc": "6917:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "6917:6:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "6925:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "6925:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "6910:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "6910:6:84"
                    },
                    "nativeSrc": "6910:22:84",
                    "nodeType": "YulFunctionCall",
                    "src": "6910:22:84"
                  },
                  "nativeSrc": "6910:22:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "6910:22:84"
                },
                {
                  "nativeSrc": "6941:26:84",
                  "nodeType": "YulAssignment",
                  "src": "6941:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "6952:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "6952:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "6963:3:84",
                        "nodeType": "YulLiteral",
                        "src": "6963:3:84",
                        "type": "",
                        "value": "192"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "6948:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "6948:3:84"
                    },
                    "nativeSrc": "6948:19:84",
                    "nodeType": "YulFunctionCall",
                    "src": "6948:19:84"
                  },
                  "variableNames": [
                    {
                      "name": "pos",
                      "nativeSrc": "6941:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "6941:3:84"
                    }
                  ]
                },
                {
                  "nativeSrc": "6976:14:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "6976:14:84",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "6986:4:84",
                    "nodeType": "YulLiteral",
                    "src": "6986:4:84",
                    "type": "",
                    "value": "0x20"
                  },
                  "variables": [
                    {
                      "name": "_1",
                      "nativeSrc": "6980:2:84",
                      "nodeType": "YulTypedName",
                      "src": "6980:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "6999:29:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "6999:29:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value0",
                        "nativeSrc": "7017:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "7017:6:84"
                      },
                      {
                        "name": "_1",
                        "nativeSrc": "7025:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "7025:2:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "7013:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "7013:3:84"
                    },
                    "nativeSrc": "7013:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7013:15:84"
                  },
                  "variables": [
                    {
                      "name": "srcPtr",
                      "nativeSrc": "7003:6:84",
                      "nodeType": "YulTypedName",
                      "src": "7003:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "7037:10:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "7037:10:84",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "7046:1:84",
                    "nodeType": "YulLiteral",
                    "src": "7046:1:84",
                    "type": "",
                    "value": "0"
                  },
                  "variables": [
                    {
                      "name": "i",
                      "nativeSrc": "7041:1:84",
                      "nodeType": "YulTypedName",
                      "src": "7041:1:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "7105:120:84",
                    "nodeType": "YulBlock",
                    "src": "7105:120:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "name": "pos",
                              "nativeSrc": "7126:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "7126:3:84"
                            },
                            {
                              "arguments": [
                                {
                                  "name": "srcPtr",
                                  "nativeSrc": "7137:6:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "7137:6:84"
                                }
                              ],
                              "functionName": {
                                "name": "mload",
                                "nativeSrc": "7131:5:84",
                                "nodeType": "YulIdentifier",
                                "src": "7131:5:84"
                              },
                              "nativeSrc": "7131:13:84",
                              "nodeType": "YulFunctionCall",
                              "src": "7131:13:84"
                            }
                          ],
                          "functionName": {
                            "name": "mstore",
                            "nativeSrc": "7119:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "7119:6:84"
                          },
                          "nativeSrc": "7119:26:84",
                          "nodeType": "YulFunctionCall",
                          "src": "7119:26:84"
                        },
                        "nativeSrc": "7119:26:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "7119:26:84"
                      },
                      {
                        "nativeSrc": "7158:19:84",
                        "nodeType": "YulAssignment",
                        "src": "7158:19:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "pos",
                              "nativeSrc": "7169:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "7169:3:84"
                            },
                            {
                              "name": "_1",
                              "nativeSrc": "7174:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "7174:2:84"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "7165:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "7165:3:84"
                          },
                          "nativeSrc": "7165:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "7165:12:84"
                        },
                        "variableNames": [
                          {
                            "name": "pos",
                            "nativeSrc": "7158:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "7158:3:84"
                          }
                        ]
                      },
                      {
                        "nativeSrc": "7190:25:84",
                        "nodeType": "YulAssignment",
                        "src": "7190:25:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "srcPtr",
                              "nativeSrc": "7204:6:84",
                              "nodeType": "YulIdentifier",
                              "src": "7204:6:84"
                            },
                            {
                              "name": "_1",
                              "nativeSrc": "7212:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "7212:2:84"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "7200:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "7200:3:84"
                          },
                          "nativeSrc": "7200:15:84",
                          "nodeType": "YulFunctionCall",
                          "src": "7200:15:84"
                        },
                        "variableNames": [
                          {
                            "name": "srcPtr",
                            "nativeSrc": "7190:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "7190:6:84"
                          }
                        ]
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "i",
                        "nativeSrc": "7067:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "7067:1:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "7070:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "7070:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "lt",
                      "nativeSrc": "7064:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "7064:2:84"
                    },
                    "nativeSrc": "7064:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7064:13:84"
                  },
                  "nativeSrc": "7056:169:84",
                  "nodeType": "YulForLoop",
                  "post": {
                    "nativeSrc": "7078:18:84",
                    "nodeType": "YulBlock",
                    "src": "7078:18:84",
                    "statements": [
                      {
                        "nativeSrc": "7080:14:84",
                        "nodeType": "YulAssignment",
                        "src": "7080:14:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "i",
                              "nativeSrc": "7089:1:84",
                              "nodeType": "YulIdentifier",
                              "src": "7089:1:84"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "7092:1:84",
                              "nodeType": "YulLiteral",
                              "src": "7092:1:84",
                              "type": "",
                              "value": "1"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "7085:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "7085:3:84"
                          },
                          "nativeSrc": "7085:9:84",
                          "nodeType": "YulFunctionCall",
                          "src": "7085:9:84"
                        },
                        "variableNames": [
                          {
                            "name": "i",
                            "nativeSrc": "7080:1:84",
                            "nodeType": "YulIdentifier",
                            "src": "7080:1:84"
                          }
                        ]
                      }
                    ]
                  },
                  "pre": {
                    "nativeSrc": "7060:3:84",
                    "nodeType": "YulBlock",
                    "src": "7060:3:84",
                    "statements": []
                  },
                  "src": "7056:169:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "7245:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "7245:9:84"
                          },
                          {
                            "name": "_1",
                            "nativeSrc": "7256:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "7256:2:84"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "7241:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "7241:3:84"
                        },
                        "nativeSrc": "7241:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "7241:18:84"
                      },
                      {
                        "name": "value1",
                        "nativeSrc": "7261:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "7261:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "7234:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "7234:6:84"
                    },
                    "nativeSrc": "7234:34:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7234:34:84"
                  },
                  "nativeSrc": "7234:34:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "7234:34:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "7288:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "7288:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "7299:2:84",
                            "nodeType": "YulLiteral",
                            "src": "7299:2:84",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "7284:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "7284:3:84"
                        },
                        "nativeSrc": "7284:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "7284:18:84"
                      },
                      {
                        "name": "value2",
                        "nativeSrc": "7304:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "7304:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "7277:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "7277:6:84"
                    },
                    "nativeSrc": "7277:34:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7277:34:84"
                  },
                  "nativeSrc": "7277:34:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "7277:34:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "7331:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "7331:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "7342:2:84",
                            "nodeType": "YulLiteral",
                            "src": "7342:2:84",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "7327:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "7327:3:84"
                        },
                        "nativeSrc": "7327:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "7327:18:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value3",
                            "nativeSrc": "7351:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "7351:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "7359:6:84",
                            "nodeType": "YulLiteral",
                            "src": "7359:6:84",
                            "type": "",
                            "value": "0xffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "7347:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "7347:3:84"
                        },
                        "nativeSrc": "7347:19:84",
                        "nodeType": "YulFunctionCall",
                        "src": "7347:19:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "7320:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "7320:6:84"
                    },
                    "nativeSrc": "7320:47:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7320:47:84"
                  },
                  "nativeSrc": "7320:47:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "7320:47:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "7387:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "7387:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "7398:3:84",
                            "nodeType": "YulLiteral",
                            "src": "7398:3:84",
                            "type": "",
                            "value": "128"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "7383:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "7383:3:84"
                        },
                        "nativeSrc": "7383:19:84",
                        "nodeType": "YulFunctionCall",
                        "src": "7383:19:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "pos",
                            "nativeSrc": "7408:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "7408:3:84"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "7413:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "7413:9:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "7404:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "7404:3:84"
                        },
                        "nativeSrc": "7404:19:84",
                        "nodeType": "YulFunctionCall",
                        "src": "7404:19:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "7376:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "7376:6:84"
                    },
                    "nativeSrc": "7376:48:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7376:48:84"
                  },
                  "nativeSrc": "7376:48:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "7376:48:84"
                },
                {
                  "nativeSrc": "7433:16:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "7433:16:84",
                  "value": {
                    "name": "pos",
                    "nativeSrc": "7446:3:84",
                    "nodeType": "YulIdentifier",
                    "src": "7446:3:84"
                  },
                  "variables": [
                    {
                      "name": "pos_1",
                      "nativeSrc": "7437:5:84",
                      "nodeType": "YulTypedName",
                      "src": "7437:5:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "7458:29:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "7458:29:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value4",
                        "nativeSrc": "7480:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "7480:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "7474:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "7474:5:84"
                    },
                    "nativeSrc": "7474:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7474:13:84"
                  },
                  "variables": [
                    {
                      "name": "length_1",
                      "nativeSrc": "7462:8:84",
                      "nodeType": "YulTypedName",
                      "src": "7462:8:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "7503:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "7503:3:84"
                      },
                      {
                        "name": "length_1",
                        "nativeSrc": "7508:8:84",
                        "nodeType": "YulIdentifier",
                        "src": "7508:8:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "7496:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "7496:6:84"
                    },
                    "nativeSrc": "7496:21:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7496:21:84"
                  },
                  "nativeSrc": "7496:21:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "7496:21:84"
                },
                {
                  "nativeSrc": "7526:21:84",
                  "nodeType": "YulAssignment",
                  "src": "7526:21:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "7539:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "7539:3:84"
                      },
                      {
                        "name": "_1",
                        "nativeSrc": "7544:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "7544:2:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "7535:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "7535:3:84"
                    },
                    "nativeSrc": "7535:12:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7535:12:84"
                  },
                  "variableNames": [
                    {
                      "name": "pos_1",
                      "nativeSrc": "7526:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "7526:5:84"
                    }
                  ]
                },
                {
                  "nativeSrc": "7556:11:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "7556:11:84",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "7566:1:84",
                    "nodeType": "YulLiteral",
                    "src": "7566:1:84",
                    "type": "",
                    "value": "5"
                  },
                  "variables": [
                    {
                      "name": "_2",
                      "nativeSrc": "7560:2:84",
                      "nodeType": "YulTypedName",
                      "src": "7560:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "7576:49:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "7576:49:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "pos",
                            "nativeSrc": "7598:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "7598:3:84"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "7607:1:84",
                                "nodeType": "YulLiteral",
                                "src": "7607:1:84",
                                "type": "",
                                "value": "5"
                              },
                              {
                                "name": "length_1",
                                "nativeSrc": "7610:8:84",
                                "nodeType": "YulIdentifier",
                                "src": "7610:8:84"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "7603:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "7603:3:84"
                            },
                            "nativeSrc": "7603:16:84",
                            "nodeType": "YulFunctionCall",
                            "src": "7603:16:84"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "7594:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "7594:3:84"
                        },
                        "nativeSrc": "7594:26:84",
                        "nodeType": "YulFunctionCall",
                        "src": "7594:26:84"
                      },
                      {
                        "name": "_1",
                        "nativeSrc": "7622:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "7622:2:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "7590:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "7590:3:84"
                    },
                    "nativeSrc": "7590:35:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7590:35:84"
                  },
                  "variables": [
                    {
                      "name": "tail_2",
                      "nativeSrc": "7580:6:84",
                      "nodeType": "YulTypedName",
                      "src": "7580:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "7634:31:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "7634:31:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value4",
                        "nativeSrc": "7654:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "7654:6:84"
                      },
                      {
                        "name": "_1",
                        "nativeSrc": "7662:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "7662:2:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "7650:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "7650:3:84"
                    },
                    "nativeSrc": "7650:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7650:15:84"
                  },
                  "variables": [
                    {
                      "name": "srcPtr_1",
                      "nativeSrc": "7638:8:84",
                      "nodeType": "YulTypedName",
                      "src": "7638:8:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "7674:12:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "7674:12:84",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "7685:1:84",
                    "nodeType": "YulLiteral",
                    "src": "7685:1:84",
                    "type": "",
                    "value": "0"
                  },
                  "variables": [
                    {
                      "name": "i_1",
                      "nativeSrc": "7678:3:84",
                      "nodeType": "YulTypedName",
                      "src": "7678:3:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "7752:818:84",
                    "nodeType": "YulBlock",
                    "src": "7752:818:84",
                    "statements": [
                      {
                        "nativeSrc": "7766:17:84",
                        "nodeType": "YulVariableDeclaration",
                        "src": "7766:17:84",
                        "value": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "7780:2:84",
                              "nodeType": "YulLiteral",
                              "src": "7780:2:84",
                              "type": "",
                              "value": "31"
                            }
                          ],
                          "functionName": {
                            "name": "not",
                            "nativeSrc": "7776:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "7776:3:84"
                          },
                          "nativeSrc": "7776:7:84",
                          "nodeType": "YulFunctionCall",
                          "src": "7776:7:84"
                        },
                        "variables": [
                          {
                            "name": "_3",
                            "nativeSrc": "7770:2:84",
                            "nodeType": "YulTypedName",
                            "src": "7770:2:84",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "name": "pos_1",
                              "nativeSrc": "7803:5:84",
                              "nodeType": "YulIdentifier",
                              "src": "7803:5:84"
                            },
                            {
                              "arguments": [
                                {
                                  "arguments": [
                                    {
                                      "name": "tail_2",
                                      "nativeSrc": "7818:6:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "7818:6:84"
                                    },
                                    {
                                      "name": "pos",
                                      "nativeSrc": "7826:3:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "7826:3:84"
                                    }
                                  ],
                                  "functionName": {
                                    "name": "sub",
                                    "nativeSrc": "7814:3:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "7814:3:84"
                                  },
                                  "nativeSrc": "7814:16:84",
                                  "nodeType": "YulFunctionCall",
                                  "src": "7814:16:84"
                                },
                                {
                                  "name": "_3",
                                  "nativeSrc": "7832:2:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "7832:2:84"
                                }
                              ],
                              "functionName": {
                                "name": "add",
                                "nativeSrc": "7810:3:84",
                                "nodeType": "YulIdentifier",
                                "src": "7810:3:84"
                              },
                              "nativeSrc": "7810:25:84",
                              "nodeType": "YulFunctionCall",
                              "src": "7810:25:84"
                            }
                          ],
                          "functionName": {
                            "name": "mstore",
                            "nativeSrc": "7796:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "7796:6:84"
                          },
                          "nativeSrc": "7796:40:84",
                          "nodeType": "YulFunctionCall",
                          "src": "7796:40:84"
                        },
                        "nativeSrc": "7796:40:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "7796:40:84"
                      },
                      {
                        "nativeSrc": "7849:25:84",
                        "nodeType": "YulVariableDeclaration",
                        "src": "7849:25:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "srcPtr_1",
                              "nativeSrc": "7865:8:84",
                              "nodeType": "YulIdentifier",
                              "src": "7865:8:84"
                            }
                          ],
                          "functionName": {
                            "name": "mload",
                            "nativeSrc": "7859:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "7859:5:84"
                          },
                          "nativeSrc": "7859:15:84",
                          "nodeType": "YulFunctionCall",
                          "src": "7859:15:84"
                        },
                        "variables": [
                          {
                            "name": "_4",
                            "nativeSrc": "7853:2:84",
                            "nodeType": "YulTypedName",
                            "src": "7853:2:84",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "nativeSrc": "7887:19:84",
                        "nodeType": "YulVariableDeclaration",
                        "src": "7887:19:84",
                        "value": {
                          "name": "tail_2",
                          "nativeSrc": "7900:6:84",
                          "nodeType": "YulIdentifier",
                          "src": "7900:6:84"
                        },
                        "variables": [
                          {
                            "name": "pos_2",
                            "nativeSrc": "7891:5:84",
                            "nodeType": "YulTypedName",
                            "src": "7891:5:84",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "nativeSrc": "7919:25:84",
                        "nodeType": "YulVariableDeclaration",
                        "src": "7919:25:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "_4",
                              "nativeSrc": "7941:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "7941:2:84"
                            }
                          ],
                          "functionName": {
                            "name": "mload",
                            "nativeSrc": "7935:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "7935:5:84"
                          },
                          "nativeSrc": "7935:9:84",
                          "nodeType": "YulFunctionCall",
                          "src": "7935:9:84"
                        },
                        "variables": [
                          {
                            "name": "length_2",
                            "nativeSrc": "7923:8:84",
                            "nodeType": "YulTypedName",
                            "src": "7923:8:84",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "name": "tail_2",
                              "nativeSrc": "7964:6:84",
                              "nodeType": "YulIdentifier",
                              "src": "7964:6:84"
                            },
                            {
                              "name": "length_2",
                              "nativeSrc": "7972:8:84",
                              "nodeType": "YulIdentifier",
                              "src": "7972:8:84"
                            }
                          ],
                          "functionName": {
                            "name": "mstore",
                            "nativeSrc": "7957:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "7957:6:84"
                          },
                          "nativeSrc": "7957:24:84",
                          "nodeType": "YulFunctionCall",
                          "src": "7957:24:84"
                        },
                        "nativeSrc": "7957:24:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "7957:24:84"
                      },
                      {
                        "nativeSrc": "7994:24:84",
                        "nodeType": "YulAssignment",
                        "src": "7994:24:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "tail_2",
                              "nativeSrc": "8007:6:84",
                              "nodeType": "YulIdentifier",
                              "src": "8007:6:84"
                            },
                            {
                              "name": "_1",
                              "nativeSrc": "8015:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "8015:2:84"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "8003:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "8003:3:84"
                          },
                          "nativeSrc": "8003:15:84",
                          "nodeType": "YulFunctionCall",
                          "src": "8003:15:84"
                        },
                        "variableNames": [
                          {
                            "name": "pos_2",
                            "nativeSrc": "7994:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "7994:5:84"
                          }
                        ]
                      },
                      {
                        "nativeSrc": "8031:53:84",
                        "nodeType": "YulVariableDeclaration",
                        "src": "8031:53:84",
                        "value": {
                          "arguments": [
                            {
                              "arguments": [
                                {
                                  "name": "tail_2",
                                  "nativeSrc": "8053:6:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "8053:6:84"
                                },
                                {
                                  "arguments": [
                                    {
                                      "name": "_2",
                                      "nativeSrc": "8065:2:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "8065:2:84"
                                    },
                                    {
                                      "name": "length_2",
                                      "nativeSrc": "8069:8:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "8069:8:84"
                                    }
                                  ],
                                  "functionName": {
                                    "name": "shl",
                                    "nativeSrc": "8061:3:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "8061:3:84"
                                  },
                                  "nativeSrc": "8061:17:84",
                                  "nodeType": "YulFunctionCall",
                                  "src": "8061:17:84"
                                }
                              ],
                              "functionName": {
                                "name": "add",
                                "nativeSrc": "8049:3:84",
                                "nodeType": "YulIdentifier",
                                "src": "8049:3:84"
                              },
                              "nativeSrc": "8049:30:84",
                              "nodeType": "YulFunctionCall",
                              "src": "8049:30:84"
                            },
                            {
                              "name": "_1",
                              "nativeSrc": "8081:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "8081:2:84"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "8045:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "8045:3:84"
                          },
                          "nativeSrc": "8045:39:84",
                          "nodeType": "YulFunctionCall",
                          "src": "8045:39:84"
                        },
                        "variables": [
                          {
                            "name": "tail_3",
                            "nativeSrc": "8035:6:84",
                            "nodeType": "YulTypedName",
                            "src": "8035:6:84",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "nativeSrc": "8097:27:84",
                        "nodeType": "YulVariableDeclaration",
                        "src": "8097:27:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "_4",
                              "nativeSrc": "8117:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "8117:2:84"
                            },
                            {
                              "name": "_1",
                              "nativeSrc": "8121:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "8121:2:84"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "8113:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "8113:3:84"
                          },
                          "nativeSrc": "8113:11:84",
                          "nodeType": "YulFunctionCall",
                          "src": "8113:11:84"
                        },
                        "variables": [
                          {
                            "name": "srcPtr_2",
                            "nativeSrc": "8101:8:84",
                            "nodeType": "YulTypedName",
                            "src": "8101:8:84",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "nativeSrc": "8137:12:84",
                        "nodeType": "YulVariableDeclaration",
                        "src": "8137:12:84",
                        "value": {
                          "kind": "number",
                          "nativeSrc": "8148:1:84",
                          "nodeType": "YulLiteral",
                          "src": "8148:1:84",
                          "type": "",
                          "value": "0"
                        },
                        "variables": [
                          {
                            "name": "i_2",
                            "nativeSrc": "8141:3:84",
                            "nodeType": "YulTypedName",
                            "src": "8141:3:84",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "body": {
                          "nativeSrc": "8223:230:84",
                          "nodeType": "YulBlock",
                          "src": "8223:230:84",
                          "statements": [
                            {
                              "expression": {
                                "arguments": [
                                  {
                                    "name": "pos_2",
                                    "nativeSrc": "8248:5:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "8248:5:84"
                                  },
                                  {
                                    "arguments": [
                                      {
                                        "arguments": [
                                          {
                                            "name": "tail_3",
                                            "nativeSrc": "8263:6:84",
                                            "nodeType": "YulIdentifier",
                                            "src": "8263:6:84"
                                          },
                                          {
                                            "name": "tail_2",
                                            "nativeSrc": "8271:6:84",
                                            "nodeType": "YulIdentifier",
                                            "src": "8271:6:84"
                                          }
                                        ],
                                        "functionName": {
                                          "name": "sub",
                                          "nativeSrc": "8259:3:84",
                                          "nodeType": "YulIdentifier",
                                          "src": "8259:3:84"
                                        },
                                        "nativeSrc": "8259:19:84",
                                        "nodeType": "YulFunctionCall",
                                        "src": "8259:19:84"
                                      },
                                      {
                                        "name": "_3",
                                        "nativeSrc": "8280:2:84",
                                        "nodeType": "YulIdentifier",
                                        "src": "8280:2:84"
                                      }
                                    ],
                                    "functionName": {
                                      "name": "add",
                                      "nativeSrc": "8255:3:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "8255:3:84"
                                    },
                                    "nativeSrc": "8255:28:84",
                                    "nodeType": "YulFunctionCall",
                                    "src": "8255:28:84"
                                  }
                                ],
                                "functionName": {
                                  "name": "mstore",
                                  "nativeSrc": "8241:6:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "8241:6:84"
                                },
                                "nativeSrc": "8241:43:84",
                                "nodeType": "YulFunctionCall",
                                "src": "8241:43:84"
                              },
                              "nativeSrc": "8241:43:84",
                              "nodeType": "YulExpressionStatement",
                              "src": "8241:43:84"
                            },
                            {
                              "nativeSrc": "8301:52:84",
                              "nodeType": "YulAssignment",
                              "src": "8301:52:84",
                              "value": {
                                "arguments": [
                                  {
                                    "arguments": [
                                      {
                                        "name": "srcPtr_2",
                                        "nativeSrc": "8335:8:84",
                                        "nodeType": "YulIdentifier",
                                        "src": "8335:8:84"
                                      }
                                    ],
                                    "functionName": {
                                      "name": "mload",
                                      "nativeSrc": "8329:5:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "8329:5:84"
                                    },
                                    "nativeSrc": "8329:15:84",
                                    "nodeType": "YulFunctionCall",
                                    "src": "8329:15:84"
                                  },
                                  {
                                    "name": "tail_3",
                                    "nativeSrc": "8346:6:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "8346:6:84"
                                  }
                                ],
                                "functionName": {
                                  "name": "abi_encode_string",
                                  "nativeSrc": "8311:17:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "8311:17:84"
                                },
                                "nativeSrc": "8311:42:84",
                                "nodeType": "YulFunctionCall",
                                "src": "8311:42:84"
                              },
                              "variableNames": [
                                {
                                  "name": "tail_3",
                                  "nativeSrc": "8301:6:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "8301:6:84"
                                }
                              ]
                            },
                            {
                              "nativeSrc": "8370:29:84",
                              "nodeType": "YulAssignment",
                              "src": "8370:29:84",
                              "value": {
                                "arguments": [
                                  {
                                    "name": "srcPtr_2",
                                    "nativeSrc": "8386:8:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "8386:8:84"
                                  },
                                  {
                                    "name": "_1",
                                    "nativeSrc": "8396:2:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "8396:2:84"
                                  }
                                ],
                                "functionName": {
                                  "name": "add",
                                  "nativeSrc": "8382:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "8382:3:84"
                                },
                                "nativeSrc": "8382:17:84",
                                "nodeType": "YulFunctionCall",
                                "src": "8382:17:84"
                              },
                              "variableNames": [
                                {
                                  "name": "srcPtr_2",
                                  "nativeSrc": "8370:8:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "8370:8:84"
                                }
                              ]
                            },
                            {
                              "nativeSrc": "8416:23:84",
                              "nodeType": "YulAssignment",
                              "src": "8416:23:84",
                              "value": {
                                "arguments": [
                                  {
                                    "name": "pos_2",
                                    "nativeSrc": "8429:5:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "8429:5:84"
                                  },
                                  {
                                    "name": "_1",
                                    "nativeSrc": "8436:2:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "8436:2:84"
                                  }
                                ],
                                "functionName": {
                                  "name": "add",
                                  "nativeSrc": "8425:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "8425:3:84"
                                },
                                "nativeSrc": "8425:14:84",
                                "nodeType": "YulFunctionCall",
                                "src": "8425:14:84"
                              },
                              "variableNames": [
                                {
                                  "name": "pos_2",
                                  "nativeSrc": "8416:5:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "8416:5:84"
                                }
                              ]
                            }
                          ]
                        },
                        "condition": {
                          "arguments": [
                            {
                              "name": "i_2",
                              "nativeSrc": "8173:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "8173:3:84"
                            },
                            {
                              "name": "length_2",
                              "nativeSrc": "8178:8:84",
                              "nodeType": "YulIdentifier",
                              "src": "8178:8:84"
                            }
                          ],
                          "functionName": {
                            "name": "lt",
                            "nativeSrc": "8170:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "8170:2:84"
                          },
                          "nativeSrc": "8170:17:84",
                          "nodeType": "YulFunctionCall",
                          "src": "8170:17:84"
                        },
                        "nativeSrc": "8162:291:84",
                        "nodeType": "YulForLoop",
                        "post": {
                          "nativeSrc": "8188:22:84",
                          "nodeType": "YulBlock",
                          "src": "8188:22:84",
                          "statements": [
                            {
                              "nativeSrc": "8190:18:84",
                              "nodeType": "YulAssignment",
                              "src": "8190:18:84",
                              "value": {
                                "arguments": [
                                  {
                                    "name": "i_2",
                                    "nativeSrc": "8201:3:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "8201:3:84"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "8206:1:84",
                                    "nodeType": "YulLiteral",
                                    "src": "8206:1:84",
                                    "type": "",
                                    "value": "1"
                                  }
                                ],
                                "functionName": {
                                  "name": "add",
                                  "nativeSrc": "8197:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "8197:3:84"
                                },
                                "nativeSrc": "8197:11:84",
                                "nodeType": "YulFunctionCall",
                                "src": "8197:11:84"
                              },
                              "variableNames": [
                                {
                                  "name": "i_2",
                                  "nativeSrc": "8190:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "8190:3:84"
                                }
                              ]
                            }
                          ]
                        },
                        "pre": {
                          "nativeSrc": "8166:3:84",
                          "nodeType": "YulBlock",
                          "src": "8166:3:84",
                          "statements": []
                        },
                        "src": "8162:291:84"
                      },
                      {
                        "nativeSrc": "8466:16:84",
                        "nodeType": "YulAssignment",
                        "src": "8466:16:84",
                        "value": {
                          "name": "tail_3",
                          "nativeSrc": "8476:6:84",
                          "nodeType": "YulIdentifier",
                          "src": "8476:6:84"
                        },
                        "variableNames": [
                          {
                            "name": "tail_2",
                            "nativeSrc": "8466:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "8466:6:84"
                          }
                        ]
                      },
                      {
                        "nativeSrc": "8495:29:84",
                        "nodeType": "YulAssignment",
                        "src": "8495:29:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "srcPtr_1",
                              "nativeSrc": "8511:8:84",
                              "nodeType": "YulIdentifier",
                              "src": "8511:8:84"
                            },
                            {
                              "name": "_1",
                              "nativeSrc": "8521:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "8521:2:84"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "8507:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "8507:3:84"
                          },
                          "nativeSrc": "8507:17:84",
                          "nodeType": "YulFunctionCall",
                          "src": "8507:17:84"
                        },
                        "variableNames": [
                          {
                            "name": "srcPtr_1",
                            "nativeSrc": "8495:8:84",
                            "nodeType": "YulIdentifier",
                            "src": "8495:8:84"
                          }
                        ]
                      },
                      {
                        "nativeSrc": "8537:23:84",
                        "nodeType": "YulAssignment",
                        "src": "8537:23:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "pos_1",
                              "nativeSrc": "8550:5:84",
                              "nodeType": "YulIdentifier",
                              "src": "8550:5:84"
                            },
                            {
                              "name": "_1",
                              "nativeSrc": "8557:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "8557:2:84"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "8546:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "8546:3:84"
                          },
                          "nativeSrc": "8546:14:84",
                          "nodeType": "YulFunctionCall",
                          "src": "8546:14:84"
                        },
                        "variableNames": [
                          {
                            "name": "pos_1",
                            "nativeSrc": "8537:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "8537:5:84"
                          }
                        ]
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "i_1",
                        "nativeSrc": "7706:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "7706:3:84"
                      },
                      {
                        "name": "length_1",
                        "nativeSrc": "7711:8:84",
                        "nodeType": "YulIdentifier",
                        "src": "7711:8:84"
                      }
                    ],
                    "functionName": {
                      "name": "lt",
                      "nativeSrc": "7703:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "7703:2:84"
                    },
                    "nativeSrc": "7703:17:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7703:17:84"
                  },
                  "nativeSrc": "7695:875:84",
                  "nodeType": "YulForLoop",
                  "post": {
                    "nativeSrc": "7721:22:84",
                    "nodeType": "YulBlock",
                    "src": "7721:22:84",
                    "statements": [
                      {
                        "nativeSrc": "7723:18:84",
                        "nodeType": "YulAssignment",
                        "src": "7723:18:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "i_1",
                              "nativeSrc": "7734:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "7734:3:84"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "7739:1:84",
                              "nodeType": "YulLiteral",
                              "src": "7739:1:84",
                              "type": "",
                              "value": "1"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "7730:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "7730:3:84"
                          },
                          "nativeSrc": "7730:11:84",
                          "nodeType": "YulFunctionCall",
                          "src": "7730:11:84"
                        },
                        "variableNames": [
                          {
                            "name": "i_1",
                            "nativeSrc": "7723:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "7723:3:84"
                          }
                        ]
                      }
                    ]
                  },
                  "pre": {
                    "nativeSrc": "7699:3:84",
                    "nodeType": "YulBlock",
                    "src": "7699:3:84",
                    "statements": []
                  },
                  "src": "7695:875:84"
                },
                {
                  "nativeSrc": "8579:14:84",
                  "nodeType": "YulAssignment",
                  "src": "8579:14:84",
                  "value": {
                    "name": "tail_2",
                    "nativeSrc": "8587:6:84",
                    "nodeType": "YulIdentifier",
                    "src": "8587:6:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "8579:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "8579:4:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_array$_t_bytes32_$dyn_memory_ptr_t_bytes32_t_bytes32_t_rational_32_by_1_t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr__to_t_array$_t_bytes32_$dyn_memory_ptr_t_bytes32_t_bytes32_t_uint16_t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr__fromStack_reversed",
            "nativeSrc": "6374:2225:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "6702:9:84",
                "nodeType": "YulTypedName",
                "src": "6702:9:84",
                "type": ""
              },
              {
                "name": "value4",
                "nativeSrc": "6713:6:84",
                "nodeType": "YulTypedName",
                "src": "6713:6:84",
                "type": ""
              },
              {
                "name": "value3",
                "nativeSrc": "6721:6:84",
                "nodeType": "YulTypedName",
                "src": "6721:6:84",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "6729:6:84",
                "nodeType": "YulTypedName",
                "src": "6729:6:84",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "6737:6:84",
                "nodeType": "YulTypedName",
                "src": "6737:6:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "6745:6:84",
                "nodeType": "YulTypedName",
                "src": "6745:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "6756:4:84",
                "nodeType": "YulTypedName",
                "src": "6756:4:84",
                "type": ""
              }
            ],
            "src": "6374:2225:84"
          },
          {
            "body": {
              "nativeSrc": "8892:353:84",
              "nodeType": "YulBlock",
              "src": "8892:353:84",
              "statements": [
                {
                  "nativeSrc": "8902:27:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "8902:27:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value0",
                        "nativeSrc": "8922:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "8922:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "8916:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "8916:5:84"
                    },
                    "nativeSrc": "8916:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "8916:13:84"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "8906:6:84",
                      "nodeType": "YulTypedName",
                      "src": "8906:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "8977:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "8977:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "8985:4:84",
                            "nodeType": "YulLiteral",
                            "src": "8985:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "8973:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "8973:3:84"
                        },
                        "nativeSrc": "8973:17:84",
                        "nodeType": "YulFunctionCall",
                        "src": "8973:17:84"
                      },
                      {
                        "name": "pos",
                        "nativeSrc": "8992:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "8992:3:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "8997:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "8997:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "copy_memory_to_memory_with_cleanup",
                      "nativeSrc": "8938:34:84",
                      "nodeType": "YulIdentifier",
                      "src": "8938:34:84"
                    },
                    "nativeSrc": "8938:66:84",
                    "nodeType": "YulFunctionCall",
                    "src": "8938:66:84"
                  },
                  "nativeSrc": "8938:66:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "8938:66:84"
                },
                {
                  "nativeSrc": "9013:29:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "9013:29:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "9030:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "9030:3:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "9035:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "9035:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "9026:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "9026:3:84"
                    },
                    "nativeSrc": "9026:16:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9026:16:84"
                  },
                  "variables": [
                    {
                      "name": "end_1",
                      "nativeSrc": "9017:5:84",
                      "nodeType": "YulTypedName",
                      "src": "9017:5:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "end_1",
                        "nativeSrc": "9058:5:84",
                        "nodeType": "YulIdentifier",
                        "src": "9058:5:84"
                      },
                      {
                        "hexValue": "3a20",
                        "kind": "string",
                        "nativeSrc": "9065:4:84",
                        "nodeType": "YulLiteral",
                        "src": "9065:4:84",
                        "type": "",
                        "value": ": "
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "9051:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "9051:6:84"
                    },
                    "nativeSrc": "9051:19:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9051:19:84"
                  },
                  "nativeSrc": "9051:19:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "9051:19:84"
                },
                {
                  "nativeSrc": "9079:29:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "9079:29:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value1",
                        "nativeSrc": "9101:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "9101:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "9095:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "9095:5:84"
                    },
                    "nativeSrc": "9095:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9095:13:84"
                  },
                  "variables": [
                    {
                      "name": "length_1",
                      "nativeSrc": "9083:8:84",
                      "nodeType": "YulTypedName",
                      "src": "9083:8:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value1",
                            "nativeSrc": "9156:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "9156:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "9164:4:84",
                            "nodeType": "YulLiteral",
                            "src": "9164:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "9152:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "9152:3:84"
                        },
                        "nativeSrc": "9152:17:84",
                        "nodeType": "YulFunctionCall",
                        "src": "9152:17:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "end_1",
                            "nativeSrc": "9175:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "9175:5:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "9182:1:84",
                            "nodeType": "YulLiteral",
                            "src": "9182:1:84",
                            "type": "",
                            "value": "2"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "9171:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "9171:3:84"
                        },
                        "nativeSrc": "9171:13:84",
                        "nodeType": "YulFunctionCall",
                        "src": "9171:13:84"
                      },
                      {
                        "name": "length_1",
                        "nativeSrc": "9186:8:84",
                        "nodeType": "YulIdentifier",
                        "src": "9186:8:84"
                      }
                    ],
                    "functionName": {
                      "name": "copy_memory_to_memory_with_cleanup",
                      "nativeSrc": "9117:34:84",
                      "nodeType": "YulIdentifier",
                      "src": "9117:34:84"
                    },
                    "nativeSrc": "9117:78:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9117:78:84"
                  },
                  "nativeSrc": "9117:78:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "9117:78:84"
                },
                {
                  "nativeSrc": "9204:35:84",
                  "nodeType": "YulAssignment",
                  "src": "9204:35:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "end_1",
                            "nativeSrc": "9219:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "9219:5:84"
                          },
                          {
                            "name": "length_1",
                            "nativeSrc": "9226:8:84",
                            "nodeType": "YulIdentifier",
                            "src": "9226:8:84"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "9215:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "9215:3:84"
                        },
                        "nativeSrc": "9215:20:84",
                        "nodeType": "YulFunctionCall",
                        "src": "9215:20:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "9237:1:84",
                        "nodeType": "YulLiteral",
                        "src": "9237:1:84",
                        "type": "",
                        "value": "2"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "9211:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "9211:3:84"
                    },
                    "nativeSrc": "9211:28:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9211:28:84"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "9204:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "9204:3:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_packed_t_string_memory_ptr_t_stringliteral_e64009107d042bdc478cc69a5433e4573ea2e8a23a46646c0ee241e30c888e73_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed",
            "nativeSrc": "8604:641:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "8860:3:84",
                "nodeType": "YulTypedName",
                "src": "8860:3:84",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "8865:6:84",
                "nodeType": "YulTypedName",
                "src": "8865:6:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "8873:6:84",
                "nodeType": "YulTypedName",
                "src": "8873:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "8884:3:84",
                "nodeType": "YulTypedName",
                "src": "8884:3:84",
                "type": ""
              }
            ],
            "src": "8604:641:84"
          },
          {
            "body": {
              "nativeSrc": "9371:99:84",
              "nodeType": "YulBlock",
              "src": "9371:99:84",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "9388:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "9388:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "9399:2:84",
                        "nodeType": "YulLiteral",
                        "src": "9399:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "9381:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "9381:6:84"
                    },
                    "nativeSrc": "9381:21:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9381:21:84"
                  },
                  "nativeSrc": "9381:21:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "9381:21:84"
                },
                {
                  "nativeSrc": "9411:53:84",
                  "nodeType": "YulAssignment",
                  "src": "9411:53:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value0",
                        "nativeSrc": "9437:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "9437:6:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "9449:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "9449:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "9460:2:84",
                            "nodeType": "YulLiteral",
                            "src": "9460:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "9445:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "9445:3:84"
                        },
                        "nativeSrc": "9445:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "9445:18:84"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_string",
                      "nativeSrc": "9419:17:84",
                      "nodeType": "YulIdentifier",
                      "src": "9419:17:84"
                    },
                    "nativeSrc": "9419:45:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9419:45:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "9411:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "9411:4:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed",
            "nativeSrc": "9250:220:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "9340:9:84",
                "nodeType": "YulTypedName",
                "src": "9340:9:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "9351:6:84",
                "nodeType": "YulTypedName",
                "src": "9351:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "9362:4:84",
                "nodeType": "YulTypedName",
                "src": "9362:4:84",
                "type": ""
              }
            ],
            "src": "9250:220:84"
          }
        ]
      },
      "contents": "{\n    { }\n    function validator_revert_contract_WitnetMockedOracle(value)\n    {\n        if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n    }\n    function abi_decode_tuple_t_contract$_WitnetMockedOracle_$23735_fromMemory(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        let value := mload(headStart)\n        validator_revert_contract_WitnetMockedOracle(value)\n        value0 := value\n    }\n    function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n    }\n    function abi_decode_tuple_t_bytes4_fromMemory(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        let value := mload(headStart)\n        if iszero(eq(value, and(value, shl(224, 0xffffffff)))) { revert(0, 0) }\n        value0 := value\n    }\n    function abi_encode_tuple_t_stringliteral_57d830abe71d02a02e5da4295b2a41f780665da6ca2ca2ca1e1e440e807c06d7__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n    {\n        mstore(headStart, 32)\n        mstore(add(headStart, 32), 37)\n        mstore(add(headStart, 64), \"UsingWitnet: uncompliant WitnetO\")\n        mstore(add(headStart, 96), \"racle\")\n        tail := add(headStart, 128)\n    }\n    function abi_decode_tuple_t_contract$_WitnetRequestBytecodes_$849_fromMemory(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        let value := mload(headStart)\n        validator_revert_contract_WitnetMockedOracle(value)\n        value0 := value\n    }\n    function panic_error_0x41()\n    {\n        mstore(0, shl(224, 0x4e487b71))\n        mstore(4, 0x41)\n        revert(0, 0x24)\n    }\n    function panic_error_0x21()\n    {\n        mstore(0, shl(224, 0x4e487b71))\n        mstore(4, 0x21)\n        revert(0, 0x24)\n    }\n    function copy_memory_to_memory_with_cleanup(src, dst, length)\n    {\n        let i := 0\n        for { } lt(i, length) { i := add(i, 32) }\n        {\n            mstore(add(dst, i), mload(add(src, i)))\n        }\n        mstore(add(dst, length), 0)\n    }\n    function abi_encode_string(value, pos) -> end\n    {\n        let length := mload(value)\n        mstore(pos, length)\n        copy_memory_to_memory_with_cleanup(add(value, 0x20), add(pos, 0x20), length)\n        end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n    }\n    function abi_encode_stringliteral_56e8(pos) -> end\n    {\n        mstore(pos, 1)\n        mstore(add(pos, 0x20), shl(255, 1))\n        end := add(pos, 64)\n    }\n    function abi_encode_tuple_t_enum$_RadonDataRequestMethods_$16410_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470_t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470_t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr_t_stringliteral_56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421__to_t_uint8_t_string_memory_ptr_t_string_memory_ptr_t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr_t_bytes_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n    {\n        if iszero(lt(value0, 5)) { panic_error_0x21() }\n        mstore(headStart, value0)\n        let _1 := 32\n        mstore(add(headStart, _1), 160)\n        let _2 := 0\n        mstore(add(headStart, 160), 0)\n        let _3 := 64\n        mstore(add(headStart, 64), 192)\n        mstore(add(headStart, 192), 0)\n        let updated_pos := add(headStart, 224)\n        mstore(add(headStart, 96), 224)\n        let pos := updated_pos\n        let length := mload(value1)\n        mstore(updated_pos, length)\n        let _4 := 256\n        pos := add(headStart, _4)\n        let tail_1 := add(add(headStart, shl(5, length)), _4)\n        let srcPtr := add(value1, _1)\n        let i := 0\n        for { } lt(i, length) { i := add(i, 1) }\n        {\n            mstore(pos, add(sub(tail_1, headStart), not(255)))\n            let _5 := mload(srcPtr)\n            let pos_1 := tail_1\n            pos_1 := tail_1\n            let tail_2 := add(tail_1, _3)\n            let srcPtr_1 := _5\n            let i_1 := _2\n            for { } lt(i_1, 0x02) { i_1 := add(i_1, 1) }\n            {\n                mstore(pos_1, sub(tail_2, tail_1))\n                tail_2 := abi_encode_string(mload(srcPtr_1), tail_2)\n                srcPtr_1 := add(srcPtr_1, _1)\n                pos_1 := add(pos_1, _1)\n            }\n            tail_1 := tail_2\n            srcPtr := add(srcPtr, _1)\n            pos := add(pos, _1)\n        }\n        mstore(add(headStart, 128), sub(tail_1, headStart))\n        tail := abi_encode_stringliteral_56e8(tail_1)\n    }\n    function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        value0 := mload(headStart)\n    }\n    function panic_error_0x32()\n    {\n        mstore(0, shl(224, 0x4e487b71))\n        mstore(4, 0x32)\n        revert(0, 0x24)\n    }\n    function abi_encode_tuple_t_struct$_RadonReducer_$16460_memory_ptr__to_t_struct$_RadonReducer_$16460_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n    {\n        let _1 := 32\n        mstore(headStart, _1)\n        let tail_1 := add(headStart, 96)\n        let _2 := mload(value0)\n        if iszero(lt(_2, 12)) { panic_error_0x21() }\n        mstore(add(headStart, _1), _2)\n        let memberValue0 := mload(add(value0, _1))\n        let _3 := 0x40\n        mstore(add(headStart, 0x40), 0x40)\n        let pos := tail_1\n        let length := mload(memberValue0)\n        mstore(tail_1, length)\n        pos := add(headStart, 128)\n        let tail_2 := add(add(headStart, shl(5, length)), 128)\n        let srcPtr := add(memberValue0, _1)\n        let i := 0\n        for { } lt(i, length) { i := add(i, 1) }\n        {\n            mstore(pos, add(sub(tail_2, headStart), not(127)))\n            let _4 := mload(srcPtr)\n            let _5 := mload(_4)\n            if iszero(lt(_5, 10)) { panic_error_0x21() }\n            mstore(tail_2, _5)\n            let memberValue0_1 := mload(add(_4, _1))\n            mstore(add(tail_2, _1), _3)\n            tail_2 := abi_encode_string(memberValue0_1, add(tail_2, _3))\n            srcPtr := add(srcPtr, _1)\n            pos := add(pos, _1)\n        }\n        tail := tail_2\n    }\n    function abi_encode_tuple_t_array$_t_bytes32_$dyn_memory_ptr_t_bytes32_t_bytes32_t_rational_32_by_1_t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr__to_t_array$_t_bytes32_$dyn_memory_ptr_t_bytes32_t_bytes32_t_uint16_t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart, value4, value3, value2, value1, value0) -> tail\n    {\n        let tail_1 := add(headStart, 160)\n        mstore(headStart, 160)\n        let pos := tail_1\n        let length := mload(value0)\n        mstore(tail_1, length)\n        pos := add(headStart, 192)\n        let _1 := 0x20\n        let srcPtr := add(value0, _1)\n        let i := 0\n        for { } lt(i, length) { i := add(i, 1) }\n        {\n            mstore(pos, mload(srcPtr))\n            pos := add(pos, _1)\n            srcPtr := add(srcPtr, _1)\n        }\n        mstore(add(headStart, _1), value1)\n        mstore(add(headStart, 64), value2)\n        mstore(add(headStart, 96), and(value3, 0xffff))\n        mstore(add(headStart, 128), sub(pos, headStart))\n        let pos_1 := pos\n        let length_1 := mload(value4)\n        mstore(pos, length_1)\n        pos_1 := add(pos, _1)\n        let _2 := 5\n        let tail_2 := add(add(pos, shl(5, length_1)), _1)\n        let srcPtr_1 := add(value4, _1)\n        let i_1 := 0\n        for { } lt(i_1, length_1) { i_1 := add(i_1, 1) }\n        {\n            let _3 := not(31)\n            mstore(pos_1, add(sub(tail_2, pos), _3))\n            let _4 := mload(srcPtr_1)\n            let pos_2 := tail_2\n            let length_2 := mload(_4)\n            mstore(tail_2, length_2)\n            pos_2 := add(tail_2, _1)\n            let tail_3 := add(add(tail_2, shl(_2, length_2)), _1)\n            let srcPtr_2 := add(_4, _1)\n            let i_2 := 0\n            for { } lt(i_2, length_2) { i_2 := add(i_2, 1) }\n            {\n                mstore(pos_2, add(sub(tail_3, tail_2), _3))\n                tail_3 := abi_encode_string(mload(srcPtr_2), tail_3)\n                srcPtr_2 := add(srcPtr_2, _1)\n                pos_2 := add(pos_2, _1)\n            }\n            tail_2 := tail_3\n            srcPtr_1 := add(srcPtr_1, _1)\n            pos_1 := add(pos_1, _1)\n        }\n        tail := tail_2\n    }\n    function abi_encode_tuple_packed_t_string_memory_ptr_t_stringliteral_e64009107d042bdc478cc69a5433e4573ea2e8a23a46646c0ee241e30c888e73_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n    {\n        let length := mload(value0)\n        copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n        let end_1 := add(pos, length)\n        mstore(end_1, \": \")\n        let length_1 := mload(value1)\n        copy_memory_to_memory_with_cleanup(add(value1, 0x20), add(end_1, 2), length_1)\n        end := add(add(end_1, length_1), 2)\n    }\n    function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n    {\n        mstore(headStart, 32)\n        tail := abi_encode_string(value0, add(headStart, 32))\n    }\n}",
      "id": 84,
      "language": "Yul",
      "name": "#utility.yul"
    }
  ],
  "deployedGeneratedSources": [
    {
      "ast": {
        "nativeSrc": "0:17933:84",
        "nodeType": "YulBlock",
        "src": "0:17933:84",
        "statements": [
          {
            "nativeSrc": "6:3:84",
            "nodeType": "YulBlock",
            "src": "6:3:84",
            "statements": []
          },
          {
            "body": {
              "nativeSrc": "80:184:84",
              "nodeType": "YulBlock",
              "src": "80:184:84",
              "statements": [
                {
                  "nativeSrc": "90:10:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "90:10:84",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "99:1:84",
                    "nodeType": "YulLiteral",
                    "src": "99:1:84",
                    "type": "",
                    "value": "0"
                  },
                  "variables": [
                    {
                      "name": "i",
                      "nativeSrc": "94:1:84",
                      "nodeType": "YulTypedName",
                      "src": "94:1:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "159:63:84",
                    "nodeType": "YulBlock",
                    "src": "159:63:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "arguments": [
                                {
                                  "name": "dst",
                                  "nativeSrc": "184:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "184:3:84"
                                },
                                {
                                  "name": "i",
                                  "nativeSrc": "189:1:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "189:1:84"
                                }
                              ],
                              "functionName": {
                                "name": "add",
                                "nativeSrc": "180:3:84",
                                "nodeType": "YulIdentifier",
                                "src": "180:3:84"
                              },
                              "nativeSrc": "180:11:84",
                              "nodeType": "YulFunctionCall",
                              "src": "180:11:84"
                            },
                            {
                              "arguments": [
                                {
                                  "arguments": [
                                    {
                                      "name": "src",
                                      "nativeSrc": "203:3:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "203:3:84"
                                    },
                                    {
                                      "name": "i",
                                      "nativeSrc": "208:1:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "208:1:84"
                                    }
                                  ],
                                  "functionName": {
                                    "name": "add",
                                    "nativeSrc": "199:3:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "199:3:84"
                                  },
                                  "nativeSrc": "199:11:84",
                                  "nodeType": "YulFunctionCall",
                                  "src": "199:11:84"
                                }
                              ],
                              "functionName": {
                                "name": "mload",
                                "nativeSrc": "193:5:84",
                                "nodeType": "YulIdentifier",
                                "src": "193:5:84"
                              },
                              "nativeSrc": "193:18:84",
                              "nodeType": "YulFunctionCall",
                              "src": "193:18:84"
                            }
                          ],
                          "functionName": {
                            "name": "mstore",
                            "nativeSrc": "173:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "173:6:84"
                          },
                          "nativeSrc": "173:39:84",
                          "nodeType": "YulFunctionCall",
                          "src": "173:39:84"
                        },
                        "nativeSrc": "173:39:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "173:39:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "i",
                        "nativeSrc": "120:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "120:1:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "123:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "123:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "lt",
                      "nativeSrc": "117:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "117:2:84"
                    },
                    "nativeSrc": "117:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "117:13:84"
                  },
                  "nativeSrc": "109:113:84",
                  "nodeType": "YulForLoop",
                  "post": {
                    "nativeSrc": "131:19:84",
                    "nodeType": "YulBlock",
                    "src": "131:19:84",
                    "statements": [
                      {
                        "nativeSrc": "133:15:84",
                        "nodeType": "YulAssignment",
                        "src": "133:15:84",
                        "value": {
                          "arguments": [
                            {
                              "name": "i",
                              "nativeSrc": "142:1:84",
                              "nodeType": "YulIdentifier",
                              "src": "142:1:84"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "145:2:84",
                              "nodeType": "YulLiteral",
                              "src": "145:2:84",
                              "type": "",
                              "value": "32"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "138:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "138:3:84"
                          },
                          "nativeSrc": "138:10:84",
                          "nodeType": "YulFunctionCall",
                          "src": "138:10:84"
                        },
                        "variableNames": [
                          {
                            "name": "i",
                            "nativeSrc": "133:1:84",
                            "nodeType": "YulIdentifier",
                            "src": "133:1:84"
                          }
                        ]
                      }
                    ]
                  },
                  "pre": {
                    "nativeSrc": "113:3:84",
                    "nodeType": "YulBlock",
                    "src": "113:3:84",
                    "statements": []
                  },
                  "src": "109:113:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dst",
                            "nativeSrc": "242:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "242:3:84"
                          },
                          {
                            "name": "length",
                            "nativeSrc": "247:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "247:6:84"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "238:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "238:3:84"
                        },
                        "nativeSrc": "238:16:84",
                        "nodeType": "YulFunctionCall",
                        "src": "238:16:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "256:1:84",
                        "nodeType": "YulLiteral",
                        "src": "256:1:84",
                        "type": "",
                        "value": "0"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "231:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "231:6:84"
                    },
                    "nativeSrc": "231:27:84",
                    "nodeType": "YulFunctionCall",
                    "src": "231:27:84"
                  },
                  "nativeSrc": "231:27:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "231:27:84"
                }
              ]
            },
            "name": "copy_memory_to_memory_with_cleanup",
            "nativeSrc": "14:250:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "src",
                "nativeSrc": "58:3:84",
                "nodeType": "YulTypedName",
                "src": "58:3:84",
                "type": ""
              },
              {
                "name": "dst",
                "nativeSrc": "63:3:84",
                "nodeType": "YulTypedName",
                "src": "63:3:84",
                "type": ""
              },
              {
                "name": "length",
                "nativeSrc": "68:6:84",
                "nodeType": "YulTypedName",
                "src": "68:6:84",
                "type": ""
              }
            ],
            "src": "14:250:84"
          },
          {
            "body": {
              "nativeSrc": "653:688:84",
              "nodeType": "YulBlock",
              "src": "653:688:84",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "670:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "670:3:84"
                      },
                      {
                        "hexValue": "6e6f7420696d706c656d656e7465643a203078",
                        "kind": "string",
                        "nativeSrc": "675:21:84",
                        "nodeType": "YulLiteral",
                        "src": "675:21:84",
                        "type": "",
                        "value": "not implemented: 0x"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "663:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "663:6:84"
                    },
                    "nativeSrc": "663:34:84",
                    "nodeType": "YulFunctionCall",
                    "src": "663:34:84"
                  },
                  "nativeSrc": "663:34:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "663:34:84"
                },
                {
                  "nativeSrc": "706:27:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "706:27:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value0",
                        "nativeSrc": "726:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "726:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "720:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "720:5:84"
                    },
                    "nativeSrc": "720:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "720:13:84"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "710:6:84",
                      "nodeType": "YulTypedName",
                      "src": "710:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "781:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "781:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "789:4:84",
                            "nodeType": "YulLiteral",
                            "src": "789:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "777:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "777:3:84"
                        },
                        "nativeSrc": "777:17:84",
                        "nodeType": "YulFunctionCall",
                        "src": "777:17:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "pos",
                            "nativeSrc": "800:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "800:3:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "805:2:84",
                            "nodeType": "YulLiteral",
                            "src": "805:2:84",
                            "type": "",
                            "value": "19"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "796:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "796:3:84"
                        },
                        "nativeSrc": "796:12:84",
                        "nodeType": "YulFunctionCall",
                        "src": "796:12:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "810:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "810:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "copy_memory_to_memory_with_cleanup",
                      "nativeSrc": "742:34:84",
                      "nodeType": "YulIdentifier",
                      "src": "742:34:84"
                    },
                    "nativeSrc": "742:75:84",
                    "nodeType": "YulFunctionCall",
                    "src": "742:75:84"
                  },
                  "nativeSrc": "742:75:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "742:75:84"
                },
                {
                  "nativeSrc": "826:26:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "826:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "840:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "840:3:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "845:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "845:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "836:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "836:3:84"
                    },
                    "nativeSrc": "836:16:84",
                    "nodeType": "YulFunctionCall",
                    "src": "836:16:84"
                  },
                  "variables": [
                    {
                      "name": "_1",
                      "nativeSrc": "830:2:84",
                      "nodeType": "YulTypedName",
                      "src": "830:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "861:29:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "861:29:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value1",
                        "nativeSrc": "883:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "883:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "877:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "877:5:84"
                    },
                    "nativeSrc": "877:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "877:13:84"
                  },
                  "variables": [
                    {
                      "name": "length_1",
                      "nativeSrc": "865:8:84",
                      "nodeType": "YulTypedName",
                      "src": "865:8:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value1",
                            "nativeSrc": "938:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "938:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "946:4:84",
                            "nodeType": "YulLiteral",
                            "src": "946:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "934:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "934:3:84"
                        },
                        "nativeSrc": "934:17:84",
                        "nodeType": "YulFunctionCall",
                        "src": "934:17:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "_1",
                            "nativeSrc": "957:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "957:2:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "961:2:84",
                            "nodeType": "YulLiteral",
                            "src": "961:2:84",
                            "type": "",
                            "value": "19"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "953:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "953:3:84"
                        },
                        "nativeSrc": "953:11:84",
                        "nodeType": "YulFunctionCall",
                        "src": "953:11:84"
                      },
                      {
                        "name": "length_1",
                        "nativeSrc": "966:8:84",
                        "nodeType": "YulIdentifier",
                        "src": "966:8:84"
                      }
                    ],
                    "functionName": {
                      "name": "copy_memory_to_memory_with_cleanup",
                      "nativeSrc": "899:34:84",
                      "nodeType": "YulIdentifier",
                      "src": "899:34:84"
                    },
                    "nativeSrc": "899:76:84",
                    "nodeType": "YulFunctionCall",
                    "src": "899:76:84"
                  },
                  "nativeSrc": "899:76:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "899:76:84"
                },
                {
                  "nativeSrc": "984:27:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "984:27:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "_1",
                        "nativeSrc": "998:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "998:2:84"
                      },
                      {
                        "name": "length_1",
                        "nativeSrc": "1002:8:84",
                        "nodeType": "YulIdentifier",
                        "src": "1002:8:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "994:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "994:3:84"
                    },
                    "nativeSrc": "994:17:84",
                    "nodeType": "YulFunctionCall",
                    "src": "994:17:84"
                  },
                  "variables": [
                    {
                      "name": "_2",
                      "nativeSrc": "988:2:84",
                      "nodeType": "YulTypedName",
                      "src": "988:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "1020:29:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "1020:29:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value2",
                        "nativeSrc": "1042:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "1042:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "1036:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "1036:5:84"
                    },
                    "nativeSrc": "1036:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1036:13:84"
                  },
                  "variables": [
                    {
                      "name": "length_2",
                      "nativeSrc": "1024:8:84",
                      "nodeType": "YulTypedName",
                      "src": "1024:8:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value2",
                            "nativeSrc": "1097:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "1097:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "1105:4:84",
                            "nodeType": "YulLiteral",
                            "src": "1105:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "1093:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "1093:3:84"
                        },
                        "nativeSrc": "1093:17:84",
                        "nodeType": "YulFunctionCall",
                        "src": "1093:17:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "_2",
                            "nativeSrc": "1116:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "1116:2:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "1120:2:84",
                            "nodeType": "YulLiteral",
                            "src": "1120:2:84",
                            "type": "",
                            "value": "19"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "1112:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "1112:3:84"
                        },
                        "nativeSrc": "1112:11:84",
                        "nodeType": "YulFunctionCall",
                        "src": "1112:11:84"
                      },
                      {
                        "name": "length_2",
                        "nativeSrc": "1125:8:84",
                        "nodeType": "YulIdentifier",
                        "src": "1125:8:84"
                      }
                    ],
                    "functionName": {
                      "name": "copy_memory_to_memory_with_cleanup",
                      "nativeSrc": "1058:34:84",
                      "nodeType": "YulIdentifier",
                      "src": "1058:34:84"
                    },
                    "nativeSrc": "1058:76:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1058:76:84"
                  },
                  "nativeSrc": "1058:76:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "1058:76:84"
                },
                {
                  "nativeSrc": "1143:27:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "1143:27:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "_2",
                        "nativeSrc": "1157:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "1157:2:84"
                      },
                      {
                        "name": "length_2",
                        "nativeSrc": "1161:8:84",
                        "nodeType": "YulIdentifier",
                        "src": "1161:8:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "1153:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "1153:3:84"
                    },
                    "nativeSrc": "1153:17:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1153:17:84"
                  },
                  "variables": [
                    {
                      "name": "_3",
                      "nativeSrc": "1147:2:84",
                      "nodeType": "YulTypedName",
                      "src": "1147:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "1179:29:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "1179:29:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value3",
                        "nativeSrc": "1201:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "1201:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "1195:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "1195:5:84"
                    },
                    "nativeSrc": "1195:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1195:13:84"
                  },
                  "variables": [
                    {
                      "name": "length_3",
                      "nativeSrc": "1183:8:84",
                      "nodeType": "YulTypedName",
                      "src": "1183:8:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value3",
                            "nativeSrc": "1256:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "1256:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "1264:4:84",
                            "nodeType": "YulLiteral",
                            "src": "1264:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "1252:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "1252:3:84"
                        },
                        "nativeSrc": "1252:17:84",
                        "nodeType": "YulFunctionCall",
                        "src": "1252:17:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "_3",
                            "nativeSrc": "1275:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "1275:2:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "1279:2:84",
                            "nodeType": "YulLiteral",
                            "src": "1279:2:84",
                            "type": "",
                            "value": "19"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "1271:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "1271:3:84"
                        },
                        "nativeSrc": "1271:11:84",
                        "nodeType": "YulFunctionCall",
                        "src": "1271:11:84"
                      },
                      {
                        "name": "length_3",
                        "nativeSrc": "1284:8:84",
                        "nodeType": "YulIdentifier",
                        "src": "1284:8:84"
                      }
                    ],
                    "functionName": {
                      "name": "copy_memory_to_memory_with_cleanup",
                      "nativeSrc": "1217:34:84",
                      "nodeType": "YulIdentifier",
                      "src": "1217:34:84"
                    },
                    "nativeSrc": "1217:76:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1217:76:84"
                  },
                  "nativeSrc": "1217:76:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "1217:76:84"
                },
                {
                  "nativeSrc": "1302:33:84",
                  "nodeType": "YulAssignment",
                  "src": "1302:33:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "_3",
                            "nativeSrc": "1317:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "1317:2:84"
                          },
                          {
                            "name": "length_3",
                            "nativeSrc": "1321:8:84",
                            "nodeType": "YulIdentifier",
                            "src": "1321:8:84"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "1313:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "1313:3:84"
                        },
                        "nativeSrc": "1313:17:84",
                        "nodeType": "YulFunctionCall",
                        "src": "1313:17:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "1332:2:84",
                        "nodeType": "YulLiteral",
                        "src": "1332:2:84",
                        "type": "",
                        "value": "19"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "1309:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "1309:3:84"
                    },
                    "nativeSrc": "1309:26:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1309:26:84"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "1302:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "1302:3:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_packed_t_stringliteral_6aa2932fe75962e4eb862ba4982429ce713637712a759cb9d40b6d5260a002eb_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed",
            "nativeSrc": "269:1072:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "605:3:84",
                "nodeType": "YulTypedName",
                "src": "605:3:84",
                "type": ""
              },
              {
                "name": "value3",
                "nativeSrc": "610:6:84",
                "nodeType": "YulTypedName",
                "src": "610:6:84",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "618:6:84",
                "nodeType": "YulTypedName",
                "src": "618:6:84",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "626:6:84",
                "nodeType": "YulTypedName",
                "src": "626:6:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "634:6:84",
                "nodeType": "YulTypedName",
                "src": "634:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "645:3:84",
                "nodeType": "YulTypedName",
                "src": "645:3:84",
                "type": ""
              }
            ],
            "src": "269:1072:84"
          },
          {
            "body": {
              "nativeSrc": "1416:110:84",
              "nodeType": "YulBlock",
              "src": "1416:110:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "1462:16:84",
                    "nodeType": "YulBlock",
                    "src": "1462:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "1471:1:84",
                              "nodeType": "YulLiteral",
                              "src": "1471:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "1474:1:84",
                              "nodeType": "YulLiteral",
                              "src": "1474:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "1464:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "1464:6:84"
                          },
                          "nativeSrc": "1464:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "1464:12:84"
                        },
                        "nativeSrc": "1464:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "1464:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "1437:7:84",
                            "nodeType": "YulIdentifier",
                            "src": "1437:7:84"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "1446:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "1446:9:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "1433:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "1433:3:84"
                        },
                        "nativeSrc": "1433:23:84",
                        "nodeType": "YulFunctionCall",
                        "src": "1433:23:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "1458:2:84",
                        "nodeType": "YulLiteral",
                        "src": "1458:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "1429:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "1429:3:84"
                    },
                    "nativeSrc": "1429:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1429:32:84"
                  },
                  "nativeSrc": "1426:52:84",
                  "nodeType": "YulIf",
                  "src": "1426:52:84"
                },
                {
                  "nativeSrc": "1487:33:84",
                  "nodeType": "YulAssignment",
                  "src": "1487:33:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "1510:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "1510:9:84"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "1497:12:84",
                      "nodeType": "YulIdentifier",
                      "src": "1497:12:84"
                    },
                    "nativeSrc": "1497:23:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1497:23:84"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "1487:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "1487:6:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_uint256",
            "nativeSrc": "1346:180:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "1382:9:84",
                "nodeType": "YulTypedName",
                "src": "1382:9:84",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "1393:7:84",
                "nodeType": "YulTypedName",
                "src": "1393:7:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "1405:6:84",
                "nodeType": "YulTypedName",
                "src": "1405:6:84",
                "type": ""
              }
            ],
            "src": "1346:180:84"
          },
          {
            "body": {
              "nativeSrc": "1714:231:84",
              "nodeType": "YulBlock",
              "src": "1714:231:84",
              "statements": [
                {
                  "nativeSrc": "1724:27:84",
                  "nodeType": "YulAssignment",
                  "src": "1724:27:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "1736:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "1736:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "1747:3:84",
                        "nodeType": "YulLiteral",
                        "src": "1747:3:84",
                        "type": "",
                        "value": "128"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "1732:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "1732:3:84"
                    },
                    "nativeSrc": "1732:19:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1732:19:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "1724:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "1724:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "1767:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "1767:9:84"
                      },
                      {
                        "name": "value0",
                        "nativeSrc": "1778:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "1778:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "1760:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "1760:6:84"
                    },
                    "nativeSrc": "1760:25:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1760:25:84"
                  },
                  "nativeSrc": "1760:25:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "1760:25:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "1805:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "1805:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "1816:2:84",
                            "nodeType": "YulLiteral",
                            "src": "1816:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "1801:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "1801:3:84"
                        },
                        "nativeSrc": "1801:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "1801:18:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value1",
                            "nativeSrc": "1825:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "1825:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "1833:18:84",
                            "nodeType": "YulLiteral",
                            "src": "1833:18:84",
                            "type": "",
                            "value": "0xffffffffffffffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "1821:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "1821:3:84"
                        },
                        "nativeSrc": "1821:31:84",
                        "nodeType": "YulFunctionCall",
                        "src": "1821:31:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "1794:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "1794:6:84"
                    },
                    "nativeSrc": "1794:59:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1794:59:84"
                  },
                  "nativeSrc": "1794:59:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "1794:59:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "1873:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "1873:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "1884:2:84",
                            "nodeType": "YulLiteral",
                            "src": "1884:2:84",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "1869:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "1869:3:84"
                        },
                        "nativeSrc": "1869:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "1869:18:84"
                      },
                      {
                        "name": "value2",
                        "nativeSrc": "1889:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "1889:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "1862:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "1862:6:84"
                    },
                    "nativeSrc": "1862:34:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1862:34:84"
                  },
                  "nativeSrc": "1862:34:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "1862:34:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "1916:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "1916:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "1927:2:84",
                            "nodeType": "YulLiteral",
                            "src": "1927:2:84",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "1912:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "1912:3:84"
                        },
                        "nativeSrc": "1912:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "1912:18:84"
                      },
                      {
                        "name": "value3",
                        "nativeSrc": "1932:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "1932:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "1905:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "1905:6:84"
                    },
                    "nativeSrc": "1905:34:84",
                    "nodeType": "YulFunctionCall",
                    "src": "1905:34:84"
                  },
                  "nativeSrc": "1905:34:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "1905:34:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_bytes32_t_uint64_t_bytes32_t_uint256__to_t_bytes32_t_uint64_t_bytes32_t_uint256__fromStack_reversed",
            "nativeSrc": "1531:414:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "1659:9:84",
                "nodeType": "YulTypedName",
                "src": "1659:9:84",
                "type": ""
              },
              {
                "name": "value3",
                "nativeSrc": "1670:6:84",
                "nodeType": "YulTypedName",
                "src": "1670:6:84",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "1678:6:84",
                "nodeType": "YulTypedName",
                "src": "1678:6:84",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "1686:6:84",
                "nodeType": "YulTypedName",
                "src": "1686:6:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "1694:6:84",
                "nodeType": "YulTypedName",
                "src": "1694:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "1705:4:84",
                "nodeType": "YulTypedName",
                "src": "1705:4:84",
                "type": ""
              }
            ],
            "src": "1531:414:84"
          },
          {
            "body": {
              "nativeSrc": "1994:77:84",
              "nodeType": "YulBlock",
              "src": "1994:77:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "2049:16:84",
                    "nodeType": "YulBlock",
                    "src": "2049:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "2058:1:84",
                              "nodeType": "YulLiteral",
                              "src": "2058:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "2061:1:84",
                              "nodeType": "YulLiteral",
                              "src": "2061:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "2051:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "2051:6:84"
                          },
                          "nativeSrc": "2051:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "2051:12:84"
                        },
                        "nativeSrc": "2051:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "2051:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "2017:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "2017:5:84"
                          },
                          {
                            "arguments": [
                              {
                                "name": "value",
                                "nativeSrc": "2028:5:84",
                                "nodeType": "YulIdentifier",
                                "src": "2028:5:84"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "2035:10:84",
                                "nodeType": "YulLiteral",
                                "src": "2035:10:84",
                                "type": "",
                                "value": "0xffffffff"
                              }
                            ],
                            "functionName": {
                              "name": "and",
                              "nativeSrc": "2024:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "2024:3:84"
                            },
                            "nativeSrc": "2024:22:84",
                            "nodeType": "YulFunctionCall",
                            "src": "2024:22:84"
                          }
                        ],
                        "functionName": {
                          "name": "eq",
                          "nativeSrc": "2014:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "2014:2:84"
                        },
                        "nativeSrc": "2014:33:84",
                        "nodeType": "YulFunctionCall",
                        "src": "2014:33:84"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "2007:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "2007:6:84"
                    },
                    "nativeSrc": "2007:41:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2007:41:84"
                  },
                  "nativeSrc": "2004:61:84",
                  "nodeType": "YulIf",
                  "src": "2004:61:84"
                }
              ]
            },
            "name": "validator_revert_uint32",
            "nativeSrc": "1950:121:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "value",
                "nativeSrc": "1983:5:84",
                "nodeType": "YulTypedName",
                "src": "1983:5:84",
                "type": ""
              }
            ],
            "src": "1950:121:84"
          },
          {
            "body": {
              "nativeSrc": "2179:278:84",
              "nodeType": "YulBlock",
              "src": "2179:278:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "2225:16:84",
                    "nodeType": "YulBlock",
                    "src": "2225:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "2234:1:84",
                              "nodeType": "YulLiteral",
                              "src": "2234:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "2237:1:84",
                              "nodeType": "YulLiteral",
                              "src": "2237:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "2227:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "2227:6:84"
                          },
                          "nativeSrc": "2227:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "2227:12:84"
                        },
                        "nativeSrc": "2227:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "2227:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "2200:7:84",
                            "nodeType": "YulIdentifier",
                            "src": "2200:7:84"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "2209:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "2209:9:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "2196:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "2196:3:84"
                        },
                        "nativeSrc": "2196:23:84",
                        "nodeType": "YulFunctionCall",
                        "src": "2196:23:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "2221:2:84",
                        "nodeType": "YulLiteral",
                        "src": "2221:2:84",
                        "type": "",
                        "value": "96"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "2192:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "2192:3:84"
                    },
                    "nativeSrc": "2192:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2192:32:84"
                  },
                  "nativeSrc": "2189:52:84",
                  "nodeType": "YulIf",
                  "src": "2189:52:84"
                },
                {
                  "nativeSrc": "2250:36:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "2250:36:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "2276:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "2276:9:84"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "2263:12:84",
                      "nodeType": "YulIdentifier",
                      "src": "2263:12:84"
                    },
                    "nativeSrc": "2263:23:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2263:23:84"
                  },
                  "variables": [
                    {
                      "name": "value",
                      "nativeSrc": "2254:5:84",
                      "nodeType": "YulTypedName",
                      "src": "2254:5:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "2319:5:84",
                        "nodeType": "YulIdentifier",
                        "src": "2319:5:84"
                      }
                    ],
                    "functionName": {
                      "name": "validator_revert_uint32",
                      "nativeSrc": "2295:23:84",
                      "nodeType": "YulIdentifier",
                      "src": "2295:23:84"
                    },
                    "nativeSrc": "2295:30:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2295:30:84"
                  },
                  "nativeSrc": "2295:30:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "2295:30:84"
                },
                {
                  "nativeSrc": "2334:15:84",
                  "nodeType": "YulAssignment",
                  "src": "2334:15:84",
                  "value": {
                    "name": "value",
                    "nativeSrc": "2344:5:84",
                    "nodeType": "YulIdentifier",
                    "src": "2344:5:84"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "2334:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "2334:6:84"
                    }
                  ]
                },
                {
                  "nativeSrc": "2358:42:84",
                  "nodeType": "YulAssignment",
                  "src": "2358:42:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "2385:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "2385:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "2396:2:84",
                            "nodeType": "YulLiteral",
                            "src": "2396:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "2381:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "2381:3:84"
                        },
                        "nativeSrc": "2381:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "2381:18:84"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "2368:12:84",
                      "nodeType": "YulIdentifier",
                      "src": "2368:12:84"
                    },
                    "nativeSrc": "2368:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2368:32:84"
                  },
                  "variableNames": [
                    {
                      "name": "value1",
                      "nativeSrc": "2358:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "2358:6:84"
                    }
                  ]
                },
                {
                  "nativeSrc": "2409:42:84",
                  "nodeType": "YulAssignment",
                  "src": "2409:42:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "2436:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "2436:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "2447:2:84",
                            "nodeType": "YulLiteral",
                            "src": "2447:2:84",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "2432:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "2432:3:84"
                        },
                        "nativeSrc": "2432:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "2432:18:84"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "2419:12:84",
                      "nodeType": "YulIdentifier",
                      "src": "2419:12:84"
                    },
                    "nativeSrc": "2419:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2419:32:84"
                  },
                  "variableNames": [
                    {
                      "name": "value2",
                      "nativeSrc": "2409:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "2409:6:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_uint32t_uint256t_uint256",
            "nativeSrc": "2076:381:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "2129:9:84",
                "nodeType": "YulTypedName",
                "src": "2129:9:84",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "2140:7:84",
                "nodeType": "YulTypedName",
                "src": "2140:7:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "2152:6:84",
                "nodeType": "YulTypedName",
                "src": "2152:6:84",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "2160:6:84",
                "nodeType": "YulTypedName",
                "src": "2160:6:84",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "2168:6:84",
                "nodeType": "YulTypedName",
                "src": "2168:6:84",
                "type": ""
              }
            ],
            "src": "2076:381:84"
          },
          {
            "body": {
              "nativeSrc": "2561:93:84",
              "nodeType": "YulBlock",
              "src": "2561:93:84",
              "statements": [
                {
                  "nativeSrc": "2571:26:84",
                  "nodeType": "YulAssignment",
                  "src": "2571:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "2583:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "2583:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "2594:2:84",
                        "nodeType": "YulLiteral",
                        "src": "2594:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "2579:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "2579:3:84"
                    },
                    "nativeSrc": "2579:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2579:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "2571:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "2571:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "2613:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "2613:9:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "2628:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "2628:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "2636:10:84",
                            "nodeType": "YulLiteral",
                            "src": "2636:10:84",
                            "type": "",
                            "value": "0xffffffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "2624:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "2624:3:84"
                        },
                        "nativeSrc": "2624:23:84",
                        "nodeType": "YulFunctionCall",
                        "src": "2624:23:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "2606:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "2606:6:84"
                    },
                    "nativeSrc": "2606:42:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2606:42:84"
                  },
                  "nativeSrc": "2606:42:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "2606:42:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint32__to_t_uint32__fromStack_reversed",
            "nativeSrc": "2462:192:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "2530:9:84",
                "nodeType": "YulTypedName",
                "src": "2530:9:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "2541:6:84",
                "nodeType": "YulTypedName",
                "src": "2541:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "2552:4:84",
                "nodeType": "YulTypedName",
                "src": "2552:4:84",
                "type": ""
              }
            ],
            "src": "2462:192:84"
          },
          {
            "body": {
              "nativeSrc": "2780:102:84",
              "nodeType": "YulBlock",
              "src": "2780:102:84",
              "statements": [
                {
                  "nativeSrc": "2790:26:84",
                  "nodeType": "YulAssignment",
                  "src": "2790:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "2802:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "2802:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "2813:2:84",
                        "nodeType": "YulLiteral",
                        "src": "2813:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "2798:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "2798:3:84"
                    },
                    "nativeSrc": "2798:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2798:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "2790:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "2790:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "2832:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "2832:9:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "2847:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "2847:6:84"
                          },
                          {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "2863:3:84",
                                    "nodeType": "YulLiteral",
                                    "src": "2863:3:84",
                                    "type": "",
                                    "value": "160"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "2868:1:84",
                                    "nodeType": "YulLiteral",
                                    "src": "2868:1:84",
                                    "type": "",
                                    "value": "1"
                                  }
                                ],
                                "functionName": {
                                  "name": "shl",
                                  "nativeSrc": "2859:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "2859:3:84"
                                },
                                "nativeSrc": "2859:11:84",
                                "nodeType": "YulFunctionCall",
                                "src": "2859:11:84"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "2872:1:84",
                                "nodeType": "YulLiteral",
                                "src": "2872:1:84",
                                "type": "",
                                "value": "1"
                              }
                            ],
                            "functionName": {
                              "name": "sub",
                              "nativeSrc": "2855:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "2855:3:84"
                            },
                            "nativeSrc": "2855:19:84",
                            "nodeType": "YulFunctionCall",
                            "src": "2855:19:84"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "2843:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "2843:3:84"
                        },
                        "nativeSrc": "2843:32:84",
                        "nodeType": "YulFunctionCall",
                        "src": "2843:32:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "2825:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "2825:6:84"
                    },
                    "nativeSrc": "2825:51:84",
                    "nodeType": "YulFunctionCall",
                    "src": "2825:51:84"
                  },
                  "nativeSrc": "2825:51:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "2825:51:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_contract$_WitnetOracle_$749__to_t_address__fromStack_reversed",
            "nativeSrc": "2659:223:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "2749:9:84",
                "nodeType": "YulTypedName",
                "src": "2749:9:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "2760:6:84",
                "nodeType": "YulTypedName",
                "src": "2760:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "2771:4:84",
                "nodeType": "YulTypedName",
                "src": "2771:4:84",
                "type": ""
              }
            ],
            "src": "2659:223:84"
          },
          {
            "body": {
              "nativeSrc": "2988:76:84",
              "nodeType": "YulBlock",
              "src": "2988:76:84",
              "statements": [
                {
                  "nativeSrc": "2998:26:84",
                  "nodeType": "YulAssignment",
                  "src": "2998:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "3010:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "3010:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3021:2:84",
                        "nodeType": "YulLiteral",
                        "src": "3021:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "3006:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "3006:3:84"
                    },
                    "nativeSrc": "3006:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3006:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "2998:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "2998:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "3040:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "3040:9:84"
                      },
                      {
                        "name": "value0",
                        "nativeSrc": "3051:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "3051:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "3033:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "3033:6:84"
                    },
                    "nativeSrc": "3033:25:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3033:25:84"
                  },
                  "nativeSrc": "3033:25:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "3033:25:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed",
            "nativeSrc": "2887:177:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "2957:9:84",
                "nodeType": "YulTypedName",
                "src": "2957:9:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "2968:6:84",
                "nodeType": "YulTypedName",
                "src": "2968:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "2979:4:84",
                "nodeType": "YulTypedName",
                "src": "2979:4:84",
                "type": ""
              }
            ],
            "src": "2887:177:84"
          },
          {
            "body": {
              "nativeSrc": "3170:76:84",
              "nodeType": "YulBlock",
              "src": "3170:76:84",
              "statements": [
                {
                  "nativeSrc": "3180:26:84",
                  "nodeType": "YulAssignment",
                  "src": "3180:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "3192:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "3192:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3203:2:84",
                        "nodeType": "YulLiteral",
                        "src": "3203:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "3188:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "3188:3:84"
                    },
                    "nativeSrc": "3188:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3188:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "3180:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "3180:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "3222:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "3222:9:84"
                      },
                      {
                        "name": "value0",
                        "nativeSrc": "3233:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "3233:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "3215:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "3215:6:84"
                    },
                    "nativeSrc": "3215:25:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3215:25:84"
                  },
                  "nativeSrc": "3215:25:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "3215:25:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed",
            "nativeSrc": "3069:177:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "3139:9:84",
                "nodeType": "YulTypedName",
                "src": "3139:9:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "3150:6:84",
                "nodeType": "YulTypedName",
                "src": "3150:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "3161:4:84",
                "nodeType": "YulTypedName",
                "src": "3161:4:84",
                "type": ""
              }
            ],
            "src": "3069:177:84"
          },
          {
            "body": {
              "nativeSrc": "3283:95:84",
              "nodeType": "YulBlock",
              "src": "3283:95:84",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "3300:1:84",
                        "nodeType": "YulLiteral",
                        "src": "3300:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "3307:3:84",
                            "nodeType": "YulLiteral",
                            "src": "3307:3:84",
                            "type": "",
                            "value": "224"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "3312:10:84",
                            "nodeType": "YulLiteral",
                            "src": "3312:10:84",
                            "type": "",
                            "value": "0x4e487b71"
                          }
                        ],
                        "functionName": {
                          "name": "shl",
                          "nativeSrc": "3303:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "3303:3:84"
                        },
                        "nativeSrc": "3303:20:84",
                        "nodeType": "YulFunctionCall",
                        "src": "3303:20:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "3293:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "3293:6:84"
                    },
                    "nativeSrc": "3293:31:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3293:31:84"
                  },
                  "nativeSrc": "3293:31:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "3293:31:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "3340:1:84",
                        "nodeType": "YulLiteral",
                        "src": "3340:1:84",
                        "type": "",
                        "value": "4"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3343:4:84",
                        "nodeType": "YulLiteral",
                        "src": "3343:4:84",
                        "type": "",
                        "value": "0x21"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "3333:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "3333:6:84"
                    },
                    "nativeSrc": "3333:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3333:15:84"
                  },
                  "nativeSrc": "3333:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "3333:15:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "3364:1:84",
                        "nodeType": "YulLiteral",
                        "src": "3364:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3367:4:84",
                        "nodeType": "YulLiteral",
                        "src": "3367:4:84",
                        "type": "",
                        "value": "0x24"
                      }
                    ],
                    "functionName": {
                      "name": "revert",
                      "nativeSrc": "3357:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "3357:6:84"
                    },
                    "nativeSrc": "3357:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3357:15:84"
                  },
                  "nativeSrc": "3357:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "3357:15:84"
                }
              ]
            },
            "name": "panic_error_0x21",
            "nativeSrc": "3251:127:84",
            "nodeType": "YulFunctionDefinition",
            "src": "3251:127:84"
          },
          {
            "body": {
              "nativeSrc": "3502:229:84",
              "nodeType": "YulBlock",
              "src": "3502:229:84",
              "statements": [
                {
                  "nativeSrc": "3512:26:84",
                  "nodeType": "YulAssignment",
                  "src": "3512:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "3524:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "3524:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3535:2:84",
                        "nodeType": "YulLiteral",
                        "src": "3535:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "3520:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "3520:3:84"
                    },
                    "nativeSrc": "3520:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3520:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "3512:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "3512:4:84"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "3580:111:84",
                    "nodeType": "YulBlock",
                    "src": "3580:111:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "3601:1:84",
                              "nodeType": "YulLiteral",
                              "src": "3601:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "arguments": [
                                {
                                  "kind": "number",
                                  "nativeSrc": "3608:3:84",
                                  "nodeType": "YulLiteral",
                                  "src": "3608:3:84",
                                  "type": "",
                                  "value": "224"
                                },
                                {
                                  "kind": "number",
                                  "nativeSrc": "3613:10:84",
                                  "nodeType": "YulLiteral",
                                  "src": "3613:10:84",
                                  "type": "",
                                  "value": "0x4e487b71"
                                }
                              ],
                              "functionName": {
                                "name": "shl",
                                "nativeSrc": "3604:3:84",
                                "nodeType": "YulIdentifier",
                                "src": "3604:3:84"
                              },
                              "nativeSrc": "3604:20:84",
                              "nodeType": "YulFunctionCall",
                              "src": "3604:20:84"
                            }
                          ],
                          "functionName": {
                            "name": "mstore",
                            "nativeSrc": "3594:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "3594:6:84"
                          },
                          "nativeSrc": "3594:31:84",
                          "nodeType": "YulFunctionCall",
                          "src": "3594:31:84"
                        },
                        "nativeSrc": "3594:31:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "3594:31:84"
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "3645:1:84",
                              "nodeType": "YulLiteral",
                              "src": "3645:1:84",
                              "type": "",
                              "value": "4"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "3648:4:84",
                              "nodeType": "YulLiteral",
                              "src": "3648:4:84",
                              "type": "",
                              "value": "0x21"
                            }
                          ],
                          "functionName": {
                            "name": "mstore",
                            "nativeSrc": "3638:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "3638:6:84"
                          },
                          "nativeSrc": "3638:15:84",
                          "nodeType": "YulFunctionCall",
                          "src": "3638:15:84"
                        },
                        "nativeSrc": "3638:15:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "3638:15:84"
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "3673:1:84",
                              "nodeType": "YulLiteral",
                              "src": "3673:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "3676:4:84",
                              "nodeType": "YulLiteral",
                              "src": "3676:4:84",
                              "type": "",
                              "value": "0x24"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "3666:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "3666:6:84"
                          },
                          "nativeSrc": "3666:15:84",
                          "nodeType": "YulFunctionCall",
                          "src": "3666:15:84"
                        },
                        "nativeSrc": "3666:15:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "3666:15:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "3560:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "3560:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "3568:1:84",
                            "nodeType": "YulLiteral",
                            "src": "3568:1:84",
                            "type": "",
                            "value": "6"
                          }
                        ],
                        "functionName": {
                          "name": "lt",
                          "nativeSrc": "3557:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "3557:2:84"
                        },
                        "nativeSrc": "3557:13:84",
                        "nodeType": "YulFunctionCall",
                        "src": "3557:13:84"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "3550:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "3550:6:84"
                    },
                    "nativeSrc": "3550:21:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3550:21:84"
                  },
                  "nativeSrc": "3547:144:84",
                  "nodeType": "YulIf",
                  "src": "3547:144:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "3707:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "3707:9:84"
                      },
                      {
                        "name": "value0",
                        "nativeSrc": "3718:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "3718:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "3700:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "3700:6:84"
                    },
                    "nativeSrc": "3700:25:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3700:25:84"
                  },
                  "nativeSrc": "3700:25:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "3700:25:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_enum$_ResponseStatus_$23496__to_t_uint8__fromStack_reversed",
            "nativeSrc": "3383:348:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "3471:9:84",
                "nodeType": "YulTypedName",
                "src": "3471:9:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "3482:6:84",
                "nodeType": "YulTypedName",
                "src": "3482:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "3493:4:84",
                "nodeType": "YulTypedName",
                "src": "3493:4:84",
                "type": ""
              }
            ],
            "src": "3383:348:84"
          },
          {
            "body": {
              "nativeSrc": "3837:102:84",
              "nodeType": "YulBlock",
              "src": "3837:102:84",
              "statements": [
                {
                  "nativeSrc": "3847:26:84",
                  "nodeType": "YulAssignment",
                  "src": "3847:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "3859:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "3859:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3870:2:84",
                        "nodeType": "YulLiteral",
                        "src": "3870:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "3855:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "3855:3:84"
                    },
                    "nativeSrc": "3855:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3855:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "3847:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "3847:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "3889:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "3889:9:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "3904:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "3904:6:84"
                          },
                          {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "3920:3:84",
                                    "nodeType": "YulLiteral",
                                    "src": "3920:3:84",
                                    "type": "",
                                    "value": "160"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "3925:1:84",
                                    "nodeType": "YulLiteral",
                                    "src": "3925:1:84",
                                    "type": "",
                                    "value": "1"
                                  }
                                ],
                                "functionName": {
                                  "name": "shl",
                                  "nativeSrc": "3916:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "3916:3:84"
                                },
                                "nativeSrc": "3916:11:84",
                                "nodeType": "YulFunctionCall",
                                "src": "3916:11:84"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "3929:1:84",
                                "nodeType": "YulLiteral",
                                "src": "3929:1:84",
                                "type": "",
                                "value": "1"
                              }
                            ],
                            "functionName": {
                              "name": "sub",
                              "nativeSrc": "3912:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "3912:3:84"
                            },
                            "nativeSrc": "3912:19:84",
                            "nodeType": "YulFunctionCall",
                            "src": "3912:19:84"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "3900:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "3900:3:84"
                        },
                        "nativeSrc": "3900:32:84",
                        "nodeType": "YulFunctionCall",
                        "src": "3900:32:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "3882:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "3882:6:84"
                    },
                    "nativeSrc": "3882:51:84",
                    "nodeType": "YulFunctionCall",
                    "src": "3882:51:84"
                  },
                  "nativeSrc": "3882:51:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "3882:51:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed",
            "nativeSrc": "3736:203:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "3806:9:84",
                "nodeType": "YulTypedName",
                "src": "3806:9:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "3817:6:84",
                "nodeType": "YulTypedName",
                "src": "3817:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "3828:4:84",
                "nodeType": "YulTypedName",
                "src": "3828:4:84",
                "type": ""
              }
            ],
            "src": "3736:203:84"
          },
          {
            "body": {
              "nativeSrc": "4099:182:84",
              "nodeType": "YulBlock",
              "src": "4099:182:84",
              "statements": [
                {
                  "nativeSrc": "4109:26:84",
                  "nodeType": "YulAssignment",
                  "src": "4109:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "4121:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "4121:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "4132:2:84",
                        "nodeType": "YulLiteral",
                        "src": "4132:2:84",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "4117:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "4117:3:84"
                    },
                    "nativeSrc": "4117:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "4117:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "4109:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "4109:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "4151:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "4151:9:84"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "value0",
                                "nativeSrc": "4172:6:84",
                                "nodeType": "YulIdentifier",
                                "src": "4172:6:84"
                              }
                            ],
                            "functionName": {
                              "name": "mload",
                              "nativeSrc": "4166:5:84",
                              "nodeType": "YulIdentifier",
                              "src": "4166:5:84"
                            },
                            "nativeSrc": "4166:13:84",
                            "nodeType": "YulFunctionCall",
                            "src": "4166:13:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "4181:4:84",
                            "nodeType": "YulLiteral",
                            "src": "4181:4:84",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "4162:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "4162:3:84"
                        },
                        "nativeSrc": "4162:24:84",
                        "nodeType": "YulFunctionCall",
                        "src": "4162:24:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "4144:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "4144:6:84"
                    },
                    "nativeSrc": "4144:43:84",
                    "nodeType": "YulFunctionCall",
                    "src": "4144:43:84"
                  },
                  "nativeSrc": "4144:43:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "4144:43:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "4207:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "4207:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "4218:4:84",
                            "nodeType": "YulLiteral",
                            "src": "4218:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "4203:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "4203:3:84"
                        },
                        "nativeSrc": "4203:20:84",
                        "nodeType": "YulFunctionCall",
                        "src": "4203:20:84"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "name": "value0",
                                    "nativeSrc": "4239:6:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "4239:6:84"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "4247:4:84",
                                    "nodeType": "YulLiteral",
                                    "src": "4247:4:84",
                                    "type": "",
                                    "value": "0x20"
                                  }
                                ],
                                "functionName": {
                                  "name": "add",
                                  "nativeSrc": "4235:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "4235:3:84"
                                },
                                "nativeSrc": "4235:17:84",
                                "nodeType": "YulFunctionCall",
                                "src": "4235:17:84"
                              }
                            ],
                            "functionName": {
                              "name": "mload",
                              "nativeSrc": "4229:5:84",
                              "nodeType": "YulIdentifier",
                              "src": "4229:5:84"
                            },
                            "nativeSrc": "4229:24:84",
                            "nodeType": "YulFunctionCall",
                            "src": "4229:24:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "4255:18:84",
                            "nodeType": "YulLiteral",
                            "src": "4255:18:84",
                            "type": "",
                            "value": "0xffffffffffffffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "4225:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "4225:3:84"
                        },
                        "nativeSrc": "4225:49:84",
                        "nodeType": "YulFunctionCall",
                        "src": "4225:49:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "4196:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "4196:6:84"
                    },
                    "nativeSrc": "4196:79:84",
                    "nodeType": "YulFunctionCall",
                    "src": "4196:79:84"
                  },
                  "nativeSrc": "4196:79:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "4196:79:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_struct$_RadonSLA_$23503_memory_ptr__to_t_struct$_RadonSLA_$23503_memory_ptr__fromStack_reversed",
            "nativeSrc": "3944:337:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "4068:9:84",
                "nodeType": "YulTypedName",
                "src": "4068:9:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "4079:6:84",
                "nodeType": "YulTypedName",
                "src": "4079:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "4090:4:84",
                "nodeType": "YulTypedName",
                "src": "4090:4:84",
                "type": ""
              }
            ],
            "src": "3944:337:84"
          },
          {
            "body": {
              "nativeSrc": "4381:92:84",
              "nodeType": "YulBlock",
              "src": "4381:92:84",
              "statements": [
                {
                  "nativeSrc": "4391:26:84",
                  "nodeType": "YulAssignment",
                  "src": "4391:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "4403:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "4403:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "4414:2:84",
                        "nodeType": "YulLiteral",
                        "src": "4414:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "4399:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "4399:3:84"
                    },
                    "nativeSrc": "4399:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "4399:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "4391:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "4391:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "4433:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "4433:9:84"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "value0",
                                "nativeSrc": "4458:6:84",
                                "nodeType": "YulIdentifier",
                                "src": "4458:6:84"
                              }
                            ],
                            "functionName": {
                              "name": "iszero",
                              "nativeSrc": "4451:6:84",
                              "nodeType": "YulIdentifier",
                              "src": "4451:6:84"
                            },
                            "nativeSrc": "4451:14:84",
                            "nodeType": "YulFunctionCall",
                            "src": "4451:14:84"
                          }
                        ],
                        "functionName": {
                          "name": "iszero",
                          "nativeSrc": "4444:6:84",
                          "nodeType": "YulIdentifier",
                          "src": "4444:6:84"
                        },
                        "nativeSrc": "4444:22:84",
                        "nodeType": "YulFunctionCall",
                        "src": "4444:22:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "4426:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "4426:6:84"
                    },
                    "nativeSrc": "4426:41:84",
                    "nodeType": "YulFunctionCall",
                    "src": "4426:41:84"
                  },
                  "nativeSrc": "4426:41:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "4426:41:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed",
            "nativeSrc": "4286:187:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "4350:9:84",
                "nodeType": "YulTypedName",
                "src": "4350:9:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "4361:6:84",
                "nodeType": "YulTypedName",
                "src": "4361:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "4372:4:84",
                "nodeType": "YulTypedName",
                "src": "4372:4:84",
                "type": ""
              }
            ],
            "src": "4286:187:84"
          },
          {
            "body": {
              "nativeSrc": "4635:162:84",
              "nodeType": "YulBlock",
              "src": "4635:162:84",
              "statements": [
                {
                  "nativeSrc": "4645:26:84",
                  "nodeType": "YulAssignment",
                  "src": "4645:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "4657:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "4657:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "4668:2:84",
                        "nodeType": "YulLiteral",
                        "src": "4668:2:84",
                        "type": "",
                        "value": "96"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "4653:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "4653:3:84"
                    },
                    "nativeSrc": "4653:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "4653:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "4645:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "4645:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "4687:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "4687:9:84"
                      },
                      {
                        "name": "value0",
                        "nativeSrc": "4698:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "4698:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "4680:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "4680:6:84"
                    },
                    "nativeSrc": "4680:25:84",
                    "nodeType": "YulFunctionCall",
                    "src": "4680:25:84"
                  },
                  "nativeSrc": "4680:25:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "4680:25:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "4725:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "4725:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "4736:2:84",
                            "nodeType": "YulLiteral",
                            "src": "4736:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "4721:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "4721:3:84"
                        },
                        "nativeSrc": "4721:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "4721:18:84"
                      },
                      {
                        "name": "value1",
                        "nativeSrc": "4741:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "4741:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "4714:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "4714:6:84"
                    },
                    "nativeSrc": "4714:34:84",
                    "nodeType": "YulFunctionCall",
                    "src": "4714:34:84"
                  },
                  "nativeSrc": "4714:34:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "4714:34:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "4768:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "4768:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "4779:2:84",
                            "nodeType": "YulLiteral",
                            "src": "4779:2:84",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "4764:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "4764:3:84"
                        },
                        "nativeSrc": "4764:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "4764:18:84"
                      },
                      {
                        "name": "value2",
                        "nativeSrc": "4784:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "4784:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "4757:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "4757:6:84"
                    },
                    "nativeSrc": "4757:34:84",
                    "nodeType": "YulFunctionCall",
                    "src": "4757:34:84"
                  },
                  "nativeSrc": "4757:34:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "4757:34:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint256_t_uint256_t_uint256__to_t_uint256_t_uint256_t_uint256__fromStack_reversed",
            "nativeSrc": "4478:319:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "4588:9:84",
                "nodeType": "YulTypedName",
                "src": "4588:9:84",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "4599:6:84",
                "nodeType": "YulTypedName",
                "src": "4599:6:84",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "4607:6:84",
                "nodeType": "YulTypedName",
                "src": "4607:6:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "4615:6:84",
                "nodeType": "YulTypedName",
                "src": "4615:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "4626:4:84",
                "nodeType": "YulTypedName",
                "src": "4626:4:84",
                "type": ""
              }
            ],
            "src": "4478:319:84"
          },
          {
            "body": {
              "nativeSrc": "4901:103:84",
              "nodeType": "YulBlock",
              "src": "4901:103:84",
              "statements": [
                {
                  "nativeSrc": "4911:26:84",
                  "nodeType": "YulAssignment",
                  "src": "4911:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "4923:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "4923:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "4934:2:84",
                        "nodeType": "YulLiteral",
                        "src": "4934:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "4919:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "4919:3:84"
                    },
                    "nativeSrc": "4919:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "4919:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "4911:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "4911:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "4953:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "4953:9:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "4968:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "4968:6:84"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "4980:3:84",
                                "nodeType": "YulLiteral",
                                "src": "4980:3:84",
                                "type": "",
                                "value": "224"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "4985:10:84",
                                "nodeType": "YulLiteral",
                                "src": "4985:10:84",
                                "type": "",
                                "value": "0xffffffff"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "4976:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "4976:3:84"
                            },
                            "nativeSrc": "4976:20:84",
                            "nodeType": "YulFunctionCall",
                            "src": "4976:20:84"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "4964:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "4964:3:84"
                        },
                        "nativeSrc": "4964:33:84",
                        "nodeType": "YulFunctionCall",
                        "src": "4964:33:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "4946:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "4946:6:84"
                    },
                    "nativeSrc": "4946:52:84",
                    "nodeType": "YulFunctionCall",
                    "src": "4946:52:84"
                  },
                  "nativeSrc": "4946:52:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "4946:52:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_bytes4__to_t_bytes4__fromStack_reversed",
            "nativeSrc": "4802:202:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "4870:9:84",
                "nodeType": "YulTypedName",
                "src": "4870:9:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "4881:6:84",
                "nodeType": "YulTypedName",
                "src": "4881:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "4892:4:84",
                "nodeType": "YulTypedName",
                "src": "4892:4:84",
                "type": ""
              }
            ],
            "src": "4802:202:84"
          },
          {
            "body": {
              "nativeSrc": "5078:203:84",
              "nodeType": "YulBlock",
              "src": "5078:203:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "5124:16:84",
                    "nodeType": "YulBlock",
                    "src": "5124:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "5133:1:84",
                              "nodeType": "YulLiteral",
                              "src": "5133:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "5136:1:84",
                              "nodeType": "YulLiteral",
                              "src": "5136:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "5126:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "5126:6:84"
                          },
                          "nativeSrc": "5126:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "5126:12:84"
                        },
                        "nativeSrc": "5126:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "5126:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "5099:7:84",
                            "nodeType": "YulIdentifier",
                            "src": "5099:7:84"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "5108:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "5108:9:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "5095:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "5095:3:84"
                        },
                        "nativeSrc": "5095:23:84",
                        "nodeType": "YulFunctionCall",
                        "src": "5095:23:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "5120:2:84",
                        "nodeType": "YulLiteral",
                        "src": "5120:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "5091:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "5091:3:84"
                    },
                    "nativeSrc": "5091:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5091:32:84"
                  },
                  "nativeSrc": "5088:52:84",
                  "nodeType": "YulIf",
                  "src": "5088:52:84"
                },
                {
                  "nativeSrc": "5149:36:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "5149:36:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "5175:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "5175:9:84"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "5162:12:84",
                      "nodeType": "YulIdentifier",
                      "src": "5162:12:84"
                    },
                    "nativeSrc": "5162:23:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5162:23:84"
                  },
                  "variables": [
                    {
                      "name": "value",
                      "nativeSrc": "5153:5:84",
                      "nodeType": "YulTypedName",
                      "src": "5153:5:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "5235:16:84",
                    "nodeType": "YulBlock",
                    "src": "5235:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "5244:1:84",
                              "nodeType": "YulLiteral",
                              "src": "5244:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "5247:1:84",
                              "nodeType": "YulLiteral",
                              "src": "5247:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "5237:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "5237:6:84"
                          },
                          "nativeSrc": "5237:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "5237:12:84"
                        },
                        "nativeSrc": "5237:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "5237:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "5207:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "5207:5:84"
                          },
                          {
                            "arguments": [
                              {
                                "name": "value",
                                "nativeSrc": "5218:5:84",
                                "nodeType": "YulIdentifier",
                                "src": "5218:5:84"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "5225:6:84",
                                "nodeType": "YulLiteral",
                                "src": "5225:6:84",
                                "type": "",
                                "value": "0xffff"
                              }
                            ],
                            "functionName": {
                              "name": "and",
                              "nativeSrc": "5214:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "5214:3:84"
                            },
                            "nativeSrc": "5214:18:84",
                            "nodeType": "YulFunctionCall",
                            "src": "5214:18:84"
                          }
                        ],
                        "functionName": {
                          "name": "eq",
                          "nativeSrc": "5204:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "5204:2:84"
                        },
                        "nativeSrc": "5204:29:84",
                        "nodeType": "YulFunctionCall",
                        "src": "5204:29:84"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "5197:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "5197:6:84"
                    },
                    "nativeSrc": "5197:37:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5197:37:84"
                  },
                  "nativeSrc": "5194:57:84",
                  "nodeType": "YulIf",
                  "src": "5194:57:84"
                },
                {
                  "nativeSrc": "5260:15:84",
                  "nodeType": "YulAssignment",
                  "src": "5260:15:84",
                  "value": {
                    "name": "value",
                    "nativeSrc": "5270:5:84",
                    "nodeType": "YulIdentifier",
                    "src": "5270:5:84"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "5260:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "5260:6:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_uint16",
            "nativeSrc": "5009:272:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "5044:9:84",
                "nodeType": "YulTypedName",
                "src": "5044:9:84",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "5055:7:84",
                "nodeType": "YulTypedName",
                "src": "5055:7:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "5067:6:84",
                "nodeType": "YulTypedName",
                "src": "5067:6:84",
                "type": ""
              }
            ],
            "src": "5009:272:84"
          },
          {
            "body": {
              "nativeSrc": "5407:275:84",
              "nodeType": "YulBlock",
              "src": "5407:275:84",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "5424:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "5424:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "5435:2:84",
                        "nodeType": "YulLiteral",
                        "src": "5435:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "5417:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "5417:6:84"
                    },
                    "nativeSrc": "5417:21:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5417:21:84"
                  },
                  "nativeSrc": "5417:21:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "5417:21:84"
                },
                {
                  "nativeSrc": "5447:27:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "5447:27:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value0",
                        "nativeSrc": "5467:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "5467:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "5461:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "5461:5:84"
                    },
                    "nativeSrc": "5461:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5461:13:84"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "5451:6:84",
                      "nodeType": "YulTypedName",
                      "src": "5451:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "5494:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "5494:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "5505:2:84",
                            "nodeType": "YulLiteral",
                            "src": "5505:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "5490:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "5490:3:84"
                        },
                        "nativeSrc": "5490:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "5490:18:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "5510:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "5510:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "5483:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "5483:6:84"
                    },
                    "nativeSrc": "5483:34:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5483:34:84"
                  },
                  "nativeSrc": "5483:34:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "5483:34:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "5565:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "5565:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "5573:2:84",
                            "nodeType": "YulLiteral",
                            "src": "5573:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "5561:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "5561:3:84"
                        },
                        "nativeSrc": "5561:15:84",
                        "nodeType": "YulFunctionCall",
                        "src": "5561:15:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "5582:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "5582:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "5593:2:84",
                            "nodeType": "YulLiteral",
                            "src": "5593:2:84",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "5578:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "5578:3:84"
                        },
                        "nativeSrc": "5578:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "5578:18:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "5598:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "5598:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "copy_memory_to_memory_with_cleanup",
                      "nativeSrc": "5526:34:84",
                      "nodeType": "YulIdentifier",
                      "src": "5526:34:84"
                    },
                    "nativeSrc": "5526:79:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5526:79:84"
                  },
                  "nativeSrc": "5526:79:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "5526:79:84"
                },
                {
                  "nativeSrc": "5614:62:84",
                  "nodeType": "YulAssignment",
                  "src": "5614:62:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "5630:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "5630:9:84"
                          },
                          {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "name": "length",
                                    "nativeSrc": "5649:6:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "5649:6:84"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "5657:2:84",
                                    "nodeType": "YulLiteral",
                                    "src": "5657:2:84",
                                    "type": "",
                                    "value": "31"
                                  }
                                ],
                                "functionName": {
                                  "name": "add",
                                  "nativeSrc": "5645:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "5645:3:84"
                                },
                                "nativeSrc": "5645:15:84",
                                "nodeType": "YulFunctionCall",
                                "src": "5645:15:84"
                              },
                              {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "5666:2:84",
                                    "nodeType": "YulLiteral",
                                    "src": "5666:2:84",
                                    "type": "",
                                    "value": "31"
                                  }
                                ],
                                "functionName": {
                                  "name": "not",
                                  "nativeSrc": "5662:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "5662:3:84"
                                },
                                "nativeSrc": "5662:7:84",
                                "nodeType": "YulFunctionCall",
                                "src": "5662:7:84"
                              }
                            ],
                            "functionName": {
                              "name": "and",
                              "nativeSrc": "5641:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "5641:3:84"
                            },
                            "nativeSrc": "5641:29:84",
                            "nodeType": "YulFunctionCall",
                            "src": "5641:29:84"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "5626:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "5626:3:84"
                        },
                        "nativeSrc": "5626:45:84",
                        "nodeType": "YulFunctionCall",
                        "src": "5626:45:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "5673:2:84",
                        "nodeType": "YulLiteral",
                        "src": "5673:2:84",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "5622:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "5622:3:84"
                    },
                    "nativeSrc": "5622:54:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5622:54:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "5614:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "5614:4:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed",
            "nativeSrc": "5286:396:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "5376:9:84",
                "nodeType": "YulTypedName",
                "src": "5376:9:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "5387:6:84",
                "nodeType": "YulTypedName",
                "src": "5387:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "5398:4:84",
                "nodeType": "YulTypedName",
                "src": "5398:4:84",
                "type": ""
              }
            ],
            "src": "5286:396:84"
          },
          {
            "body": {
              "nativeSrc": "5786:96:84",
              "nodeType": "YulBlock",
              "src": "5786:96:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "5832:16:84",
                    "nodeType": "YulBlock",
                    "src": "5832:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "5841:1:84",
                              "nodeType": "YulLiteral",
                              "src": "5841:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "5844:1:84",
                              "nodeType": "YulLiteral",
                              "src": "5844:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "5834:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "5834:6:84"
                          },
                          "nativeSrc": "5834:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "5834:12:84"
                        },
                        "nativeSrc": "5834:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "5834:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "5807:7:84",
                            "nodeType": "YulIdentifier",
                            "src": "5807:7:84"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "5816:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "5816:9:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "5803:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "5803:3:84"
                        },
                        "nativeSrc": "5803:23:84",
                        "nodeType": "YulFunctionCall",
                        "src": "5803:23:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "5828:2:84",
                        "nodeType": "YulLiteral",
                        "src": "5828:2:84",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "5799:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "5799:3:84"
                    },
                    "nativeSrc": "5799:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "5799:32:84"
                  },
                  "nativeSrc": "5796:52:84",
                  "nodeType": "YulIf",
                  "src": "5796:52:84"
                },
                {
                  "nativeSrc": "5857:19:84",
                  "nodeType": "YulAssignment",
                  "src": "5857:19:84",
                  "value": {
                    "name": "headStart",
                    "nativeSrc": "5867:9:84",
                    "nodeType": "YulIdentifier",
                    "src": "5867:9:84"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "5857:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "5857:6:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_struct$_RadonSLA_$23503_calldata_ptr",
            "nativeSrc": "5687:195:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "5752:9:84",
                "nodeType": "YulTypedName",
                "src": "5752:9:84",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "5763:7:84",
                "nodeType": "YulTypedName",
                "src": "5763:7:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "5775:6:84",
                "nodeType": "YulTypedName",
                "src": "5775:6:84",
                "type": ""
              }
            ],
            "src": "5687:195:84"
          },
          {
            "body": {
              "nativeSrc": "5986:89:84",
              "nodeType": "YulBlock",
              "src": "5986:89:84",
              "statements": [
                {
                  "nativeSrc": "5996:26:84",
                  "nodeType": "YulAssignment",
                  "src": "5996:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "6008:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "6008:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "6019:2:84",
                        "nodeType": "YulLiteral",
                        "src": "6019:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "6004:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "6004:3:84"
                    },
                    "nativeSrc": "6004:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "6004:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "5996:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "5996:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "6038:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "6038:9:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "6053:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "6053:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "6061:6:84",
                            "nodeType": "YulLiteral",
                            "src": "6061:6:84",
                            "type": "",
                            "value": "0xffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "6049:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "6049:3:84"
                        },
                        "nativeSrc": "6049:19:84",
                        "nodeType": "YulFunctionCall",
                        "src": "6049:19:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "6031:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "6031:6:84"
                    },
                    "nativeSrc": "6031:38:84",
                    "nodeType": "YulFunctionCall",
                    "src": "6031:38:84"
                  },
                  "nativeSrc": "6031:38:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "6031:38:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint16__to_t_uint16__fromStack_reversed",
            "nativeSrc": "5887:188:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "5955:9:84",
                "nodeType": "YulTypedName",
                "src": "5955:9:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "5966:6:84",
                "nodeType": "YulTypedName",
                "src": "5966:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "5977:4:84",
                "nodeType": "YulTypedName",
                "src": "5977:4:84",
                "type": ""
              }
            ],
            "src": "5887:188:84"
          },
          {
            "body": {
              "nativeSrc": "6125:86:84",
              "nodeType": "YulBlock",
              "src": "6125:86:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "6189:16:84",
                    "nodeType": "YulBlock",
                    "src": "6189:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "6198:1:84",
                              "nodeType": "YulLiteral",
                              "src": "6198:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "6201:1:84",
                              "nodeType": "YulLiteral",
                              "src": "6201:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "6191:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "6191:6:84"
                          },
                          "nativeSrc": "6191:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "6191:12:84"
                        },
                        "nativeSrc": "6191:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "6191:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "6148:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "6148:5:84"
                          },
                          {
                            "arguments": [
                              {
                                "name": "value",
                                "nativeSrc": "6159:5:84",
                                "nodeType": "YulIdentifier",
                                "src": "6159:5:84"
                              },
                              {
                                "arguments": [
                                  {
                                    "arguments": [
                                      {
                                        "kind": "number",
                                        "nativeSrc": "6174:3:84",
                                        "nodeType": "YulLiteral",
                                        "src": "6174:3:84",
                                        "type": "",
                                        "value": "160"
                                      },
                                      {
                                        "kind": "number",
                                        "nativeSrc": "6179:1:84",
                                        "nodeType": "YulLiteral",
                                        "src": "6179:1:84",
                                        "type": "",
                                        "value": "1"
                                      }
                                    ],
                                    "functionName": {
                                      "name": "shl",
                                      "nativeSrc": "6170:3:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "6170:3:84"
                                    },
                                    "nativeSrc": "6170:11:84",
                                    "nodeType": "YulFunctionCall",
                                    "src": "6170:11:84"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "6183:1:84",
                                    "nodeType": "YulLiteral",
                                    "src": "6183:1:84",
                                    "type": "",
                                    "value": "1"
                                  }
                                ],
                                "functionName": {
                                  "name": "sub",
                                  "nativeSrc": "6166:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "6166:3:84"
                                },
                                "nativeSrc": "6166:19:84",
                                "nodeType": "YulFunctionCall",
                                "src": "6166:19:84"
                              }
                            ],
                            "functionName": {
                              "name": "and",
                              "nativeSrc": "6155:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "6155:3:84"
                            },
                            "nativeSrc": "6155:31:84",
                            "nodeType": "YulFunctionCall",
                            "src": "6155:31:84"
                          }
                        ],
                        "functionName": {
                          "name": "eq",
                          "nativeSrc": "6145:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "6145:2:84"
                        },
                        "nativeSrc": "6145:42:84",
                        "nodeType": "YulFunctionCall",
                        "src": "6145:42:84"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "6138:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "6138:6:84"
                    },
                    "nativeSrc": "6138:50:84",
                    "nodeType": "YulFunctionCall",
                    "src": "6138:50:84"
                  },
                  "nativeSrc": "6135:70:84",
                  "nodeType": "YulIf",
                  "src": "6135:70:84"
                }
              ]
            },
            "name": "validator_revert_address",
            "nativeSrc": "6080:131:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "value",
                "nativeSrc": "6114:5:84",
                "nodeType": "YulTypedName",
                "src": "6114:5:84",
                "type": ""
              }
            ],
            "src": "6080:131:84"
          },
          {
            "body": {
              "nativeSrc": "6286:177:84",
              "nodeType": "YulBlock",
              "src": "6286:177:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "6332:16:84",
                    "nodeType": "YulBlock",
                    "src": "6332:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "6341:1:84",
                              "nodeType": "YulLiteral",
                              "src": "6341:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "6344:1:84",
                              "nodeType": "YulLiteral",
                              "src": "6344:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "6334:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "6334:6:84"
                          },
                          "nativeSrc": "6334:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "6334:12:84"
                        },
                        "nativeSrc": "6334:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "6334:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "6307:7:84",
                            "nodeType": "YulIdentifier",
                            "src": "6307:7:84"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "6316:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "6316:9:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "6303:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "6303:3:84"
                        },
                        "nativeSrc": "6303:23:84",
                        "nodeType": "YulFunctionCall",
                        "src": "6303:23:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "6328:2:84",
                        "nodeType": "YulLiteral",
                        "src": "6328:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "6299:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "6299:3:84"
                    },
                    "nativeSrc": "6299:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "6299:32:84"
                  },
                  "nativeSrc": "6296:52:84",
                  "nodeType": "YulIf",
                  "src": "6296:52:84"
                },
                {
                  "nativeSrc": "6357:36:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "6357:36:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "6383:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "6383:9:84"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "6370:12:84",
                      "nodeType": "YulIdentifier",
                      "src": "6370:12:84"
                    },
                    "nativeSrc": "6370:23:84",
                    "nodeType": "YulFunctionCall",
                    "src": "6370:23:84"
                  },
                  "variables": [
                    {
                      "name": "value",
                      "nativeSrc": "6361:5:84",
                      "nodeType": "YulTypedName",
                      "src": "6361:5:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "6427:5:84",
                        "nodeType": "YulIdentifier",
                        "src": "6427:5:84"
                      }
                    ],
                    "functionName": {
                      "name": "validator_revert_address",
                      "nativeSrc": "6402:24:84",
                      "nodeType": "YulIdentifier",
                      "src": "6402:24:84"
                    },
                    "nativeSrc": "6402:31:84",
                    "nodeType": "YulFunctionCall",
                    "src": "6402:31:84"
                  },
                  "nativeSrc": "6402:31:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "6402:31:84"
                },
                {
                  "nativeSrc": "6442:15:84",
                  "nodeType": "YulAssignment",
                  "src": "6442:15:84",
                  "value": {
                    "name": "value",
                    "nativeSrc": "6452:5:84",
                    "nodeType": "YulIdentifier",
                    "src": "6452:5:84"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "6442:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "6442:6:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_address",
            "nativeSrc": "6216:247:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "6252:9:84",
                "nodeType": "YulTypedName",
                "src": "6252:9:84",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "6263:7:84",
                "nodeType": "YulTypedName",
                "src": "6263:7:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "6275:6:84",
                "nodeType": "YulTypedName",
                "src": "6275:6:84",
                "type": ""
              }
            ],
            "src": "6216:247:84"
          },
          {
            "body": {
              "nativeSrc": "6756:353:84",
              "nodeType": "YulBlock",
              "src": "6756:353:84",
              "statements": [
                {
                  "nativeSrc": "6766:27:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "6766:27:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value0",
                        "nativeSrc": "6786:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "6786:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "6780:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "6780:5:84"
                    },
                    "nativeSrc": "6780:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "6780:13:84"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "6770:6:84",
                      "nodeType": "YulTypedName",
                      "src": "6770:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "6841:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "6841:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "6849:4:84",
                            "nodeType": "YulLiteral",
                            "src": "6849:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "6837:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "6837:3:84"
                        },
                        "nativeSrc": "6837:17:84",
                        "nodeType": "YulFunctionCall",
                        "src": "6837:17:84"
                      },
                      {
                        "name": "pos",
                        "nativeSrc": "6856:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "6856:3:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "6861:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "6861:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "copy_memory_to_memory_with_cleanup",
                      "nativeSrc": "6802:34:84",
                      "nodeType": "YulIdentifier",
                      "src": "6802:34:84"
                    },
                    "nativeSrc": "6802:66:84",
                    "nodeType": "YulFunctionCall",
                    "src": "6802:66:84"
                  },
                  "nativeSrc": "6802:66:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "6802:66:84"
                },
                {
                  "nativeSrc": "6877:29:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "6877:29:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "6894:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "6894:3:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "6899:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "6899:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "6890:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "6890:3:84"
                    },
                    "nativeSrc": "6890:16:84",
                    "nodeType": "YulFunctionCall",
                    "src": "6890:16:84"
                  },
                  "variables": [
                    {
                      "name": "end_1",
                      "nativeSrc": "6881:5:84",
                      "nodeType": "YulTypedName",
                      "src": "6881:5:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "end_1",
                        "nativeSrc": "6922:5:84",
                        "nodeType": "YulIdentifier",
                        "src": "6922:5:84"
                      },
                      {
                        "hexValue": "3a20",
                        "kind": "string",
                        "nativeSrc": "6929:4:84",
                        "nodeType": "YulLiteral",
                        "src": "6929:4:84",
                        "type": "",
                        "value": ": "
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "6915:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "6915:6:84"
                    },
                    "nativeSrc": "6915:19:84",
                    "nodeType": "YulFunctionCall",
                    "src": "6915:19:84"
                  },
                  "nativeSrc": "6915:19:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "6915:19:84"
                },
                {
                  "nativeSrc": "6943:29:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "6943:29:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value1",
                        "nativeSrc": "6965:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "6965:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "6959:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "6959:5:84"
                    },
                    "nativeSrc": "6959:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "6959:13:84"
                  },
                  "variables": [
                    {
                      "name": "length_1",
                      "nativeSrc": "6947:8:84",
                      "nodeType": "YulTypedName",
                      "src": "6947:8:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value1",
                            "nativeSrc": "7020:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "7020:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "7028:4:84",
                            "nodeType": "YulLiteral",
                            "src": "7028:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "7016:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "7016:3:84"
                        },
                        "nativeSrc": "7016:17:84",
                        "nodeType": "YulFunctionCall",
                        "src": "7016:17:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "end_1",
                            "nativeSrc": "7039:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "7039:5:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "7046:1:84",
                            "nodeType": "YulLiteral",
                            "src": "7046:1:84",
                            "type": "",
                            "value": "2"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "7035:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "7035:3:84"
                        },
                        "nativeSrc": "7035:13:84",
                        "nodeType": "YulFunctionCall",
                        "src": "7035:13:84"
                      },
                      {
                        "name": "length_1",
                        "nativeSrc": "7050:8:84",
                        "nodeType": "YulIdentifier",
                        "src": "7050:8:84"
                      }
                    ],
                    "functionName": {
                      "name": "copy_memory_to_memory_with_cleanup",
                      "nativeSrc": "6981:34:84",
                      "nodeType": "YulIdentifier",
                      "src": "6981:34:84"
                    },
                    "nativeSrc": "6981:78:84",
                    "nodeType": "YulFunctionCall",
                    "src": "6981:78:84"
                  },
                  "nativeSrc": "6981:78:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "6981:78:84"
                },
                {
                  "nativeSrc": "7068:35:84",
                  "nodeType": "YulAssignment",
                  "src": "7068:35:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "end_1",
                            "nativeSrc": "7083:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "7083:5:84"
                          },
                          {
                            "name": "length_1",
                            "nativeSrc": "7090:8:84",
                            "nodeType": "YulIdentifier",
                            "src": "7090:8:84"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "7079:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "7079:3:84"
                        },
                        "nativeSrc": "7079:20:84",
                        "nodeType": "YulFunctionCall",
                        "src": "7079:20:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "7101:1:84",
                        "nodeType": "YulLiteral",
                        "src": "7101:1:84",
                        "type": "",
                        "value": "2"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "7075:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "7075:3:84"
                    },
                    "nativeSrc": "7075:28:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7075:28:84"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "7068:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "7068:3:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_packed_t_string_memory_ptr_t_stringliteral_e64009107d042bdc478cc69a5433e4573ea2e8a23a46646c0ee241e30c888e73_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed",
            "nativeSrc": "6468:641:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "6724:3:84",
                "nodeType": "YulTypedName",
                "src": "6724:3:84",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "6729:6:84",
                "nodeType": "YulTypedName",
                "src": "6729:6:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "6737:6:84",
                "nodeType": "YulTypedName",
                "src": "6737:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "6748:3:84",
                "nodeType": "YulTypedName",
                "src": "6748:3:84",
                "type": ""
              }
            ],
            "src": "6468:641:84"
          },
          {
            "body": {
              "nativeSrc": "7146:95:84",
              "nodeType": "YulBlock",
              "src": "7146:95:84",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "7163:1:84",
                        "nodeType": "YulLiteral",
                        "src": "7163:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "7170:3:84",
                            "nodeType": "YulLiteral",
                            "src": "7170:3:84",
                            "type": "",
                            "value": "224"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "7175:10:84",
                            "nodeType": "YulLiteral",
                            "src": "7175:10:84",
                            "type": "",
                            "value": "0x4e487b71"
                          }
                        ],
                        "functionName": {
                          "name": "shl",
                          "nativeSrc": "7166:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "7166:3:84"
                        },
                        "nativeSrc": "7166:20:84",
                        "nodeType": "YulFunctionCall",
                        "src": "7166:20:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "7156:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "7156:6:84"
                    },
                    "nativeSrc": "7156:31:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7156:31:84"
                  },
                  "nativeSrc": "7156:31:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "7156:31:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "7203:1:84",
                        "nodeType": "YulLiteral",
                        "src": "7203:1:84",
                        "type": "",
                        "value": "4"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "7206:4:84",
                        "nodeType": "YulLiteral",
                        "src": "7206:4:84",
                        "type": "",
                        "value": "0x41"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "7196:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "7196:6:84"
                    },
                    "nativeSrc": "7196:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7196:15:84"
                  },
                  "nativeSrc": "7196:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "7196:15:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "7227:1:84",
                        "nodeType": "YulLiteral",
                        "src": "7227:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "7230:4:84",
                        "nodeType": "YulLiteral",
                        "src": "7230:4:84",
                        "type": "",
                        "value": "0x24"
                      }
                    ],
                    "functionName": {
                      "name": "revert",
                      "nativeSrc": "7220:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "7220:6:84"
                    },
                    "nativeSrc": "7220:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7220:15:84"
                  },
                  "nativeSrc": "7220:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "7220:15:84"
                }
              ]
            },
            "name": "panic_error_0x41",
            "nativeSrc": "7114:127:84",
            "nodeType": "YulFunctionDefinition",
            "src": "7114:127:84"
          },
          {
            "body": {
              "nativeSrc": "7278:95:84",
              "nodeType": "YulBlock",
              "src": "7278:95:84",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "7295:1:84",
                        "nodeType": "YulLiteral",
                        "src": "7295:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "7302:3:84",
                            "nodeType": "YulLiteral",
                            "src": "7302:3:84",
                            "type": "",
                            "value": "224"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "7307:10:84",
                            "nodeType": "YulLiteral",
                            "src": "7307:10:84",
                            "type": "",
                            "value": "0x4e487b71"
                          }
                        ],
                        "functionName": {
                          "name": "shl",
                          "nativeSrc": "7298:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "7298:3:84"
                        },
                        "nativeSrc": "7298:20:84",
                        "nodeType": "YulFunctionCall",
                        "src": "7298:20:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "7288:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "7288:6:84"
                    },
                    "nativeSrc": "7288:31:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7288:31:84"
                  },
                  "nativeSrc": "7288:31:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "7288:31:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "7335:1:84",
                        "nodeType": "YulLiteral",
                        "src": "7335:1:84",
                        "type": "",
                        "value": "4"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "7338:4:84",
                        "nodeType": "YulLiteral",
                        "src": "7338:4:84",
                        "type": "",
                        "value": "0x12"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "7328:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "7328:6:84"
                    },
                    "nativeSrc": "7328:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7328:15:84"
                  },
                  "nativeSrc": "7328:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "7328:15:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "7359:1:84",
                        "nodeType": "YulLiteral",
                        "src": "7359:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "7362:4:84",
                        "nodeType": "YulLiteral",
                        "src": "7362:4:84",
                        "type": "",
                        "value": "0x24"
                      }
                    ],
                    "functionName": {
                      "name": "revert",
                      "nativeSrc": "7352:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "7352:6:84"
                    },
                    "nativeSrc": "7352:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7352:15:84"
                  },
                  "nativeSrc": "7352:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "7352:15:84"
                }
              ]
            },
            "name": "panic_error_0x12",
            "nativeSrc": "7246:127:84",
            "nodeType": "YulFunctionDefinition",
            "src": "7246:127:84"
          },
          {
            "body": {
              "nativeSrc": "7410:95:84",
              "nodeType": "YulBlock",
              "src": "7410:95:84",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "7427:1:84",
                        "nodeType": "YulLiteral",
                        "src": "7427:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "7434:3:84",
                            "nodeType": "YulLiteral",
                            "src": "7434:3:84",
                            "type": "",
                            "value": "224"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "7439:10:84",
                            "nodeType": "YulLiteral",
                            "src": "7439:10:84",
                            "type": "",
                            "value": "0x4e487b71"
                          }
                        ],
                        "functionName": {
                          "name": "shl",
                          "nativeSrc": "7430:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "7430:3:84"
                        },
                        "nativeSrc": "7430:20:84",
                        "nodeType": "YulFunctionCall",
                        "src": "7430:20:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "7420:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "7420:6:84"
                    },
                    "nativeSrc": "7420:31:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7420:31:84"
                  },
                  "nativeSrc": "7420:31:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "7420:31:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "7467:1:84",
                        "nodeType": "YulLiteral",
                        "src": "7467:1:84",
                        "type": "",
                        "value": "4"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "7470:4:84",
                        "nodeType": "YulLiteral",
                        "src": "7470:4:84",
                        "type": "",
                        "value": "0x11"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "7460:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "7460:6:84"
                    },
                    "nativeSrc": "7460:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7460:15:84"
                  },
                  "nativeSrc": "7460:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "7460:15:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "7491:1:84",
                        "nodeType": "YulLiteral",
                        "src": "7491:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "7494:4:84",
                        "nodeType": "YulLiteral",
                        "src": "7494:4:84",
                        "type": "",
                        "value": "0x24"
                      }
                    ],
                    "functionName": {
                      "name": "revert",
                      "nativeSrc": "7484:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "7484:6:84"
                    },
                    "nativeSrc": "7484:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7484:15:84"
                  },
                  "nativeSrc": "7484:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "7484:15:84"
                }
              ]
            },
            "name": "panic_error_0x11",
            "nativeSrc": "7378:127:84",
            "nodeType": "YulFunctionDefinition",
            "src": "7378:127:84"
          },
          {
            "body": {
              "nativeSrc": "7554:121:84",
              "nodeType": "YulBlock",
              "src": "7554:121:84",
              "statements": [
                {
                  "nativeSrc": "7564:23:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "7564:23:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "y",
                        "nativeSrc": "7579:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "7579:1:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "7582:4:84",
                        "nodeType": "YulLiteral",
                        "src": "7582:4:84",
                        "type": "",
                        "value": "0xff"
                      }
                    ],
                    "functionName": {
                      "name": "and",
                      "nativeSrc": "7575:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "7575:3:84"
                    },
                    "nativeSrc": "7575:12:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7575:12:84"
                  },
                  "variables": [
                    {
                      "name": "y_1",
                      "nativeSrc": "7568:3:84",
                      "nodeType": "YulTypedName",
                      "src": "7568:3:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "7611:22:84",
                    "nodeType": "YulBlock",
                    "src": "7611:22:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x12",
                            "nativeSrc": "7613:16:84",
                            "nodeType": "YulIdentifier",
                            "src": "7613:16:84"
                          },
                          "nativeSrc": "7613:18:84",
                          "nodeType": "YulFunctionCall",
                          "src": "7613:18:84"
                        },
                        "nativeSrc": "7613:18:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "7613:18:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "y_1",
                        "nativeSrc": "7606:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "7606:3:84"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "7599:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "7599:6:84"
                    },
                    "nativeSrc": "7599:11:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7599:11:84"
                  },
                  "nativeSrc": "7596:37:84",
                  "nodeType": "YulIf",
                  "src": "7596:37:84"
                },
                {
                  "nativeSrc": "7642:27:84",
                  "nodeType": "YulAssignment",
                  "src": "7642:27:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "x",
                            "nativeSrc": "7655:1:84",
                            "nodeType": "YulIdentifier",
                            "src": "7655:1:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "7658:4:84",
                            "nodeType": "YulLiteral",
                            "src": "7658:4:84",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "7651:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "7651:3:84"
                        },
                        "nativeSrc": "7651:12:84",
                        "nodeType": "YulFunctionCall",
                        "src": "7651:12:84"
                      },
                      {
                        "name": "y_1",
                        "nativeSrc": "7665:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "7665:3:84"
                      }
                    ],
                    "functionName": {
                      "name": "div",
                      "nativeSrc": "7647:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "7647:3:84"
                    },
                    "nativeSrc": "7647:22:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7647:22:84"
                  },
                  "variableNames": [
                    {
                      "name": "r",
                      "nativeSrc": "7642:1:84",
                      "nodeType": "YulIdentifier",
                      "src": "7642:1:84"
                    }
                  ]
                }
              ]
            },
            "name": "checked_div_t_uint8",
            "nativeSrc": "7510:165:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "x",
                "nativeSrc": "7539:1:84",
                "nodeType": "YulTypedName",
                "src": "7539:1:84",
                "type": ""
              },
              {
                "name": "y",
                "nativeSrc": "7542:1:84",
                "nodeType": "YulTypedName",
                "src": "7542:1:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "r",
                "nativeSrc": "7548:1:84",
                "nodeType": "YulTypedName",
                "src": "7548:1:84",
                "type": ""
              }
            ],
            "src": "7510:165:84"
          },
          {
            "body": {
              "nativeSrc": "7726:102:84",
              "nodeType": "YulBlock",
              "src": "7726:102:84",
              "statements": [
                {
                  "nativeSrc": "7736:38:84",
                  "nodeType": "YulAssignment",
                  "src": "7736:38:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "x",
                            "nativeSrc": "7751:1:84",
                            "nodeType": "YulIdentifier",
                            "src": "7751:1:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "7754:4:84",
                            "nodeType": "YulLiteral",
                            "src": "7754:4:84",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "7747:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "7747:3:84"
                        },
                        "nativeSrc": "7747:12:84",
                        "nodeType": "YulFunctionCall",
                        "src": "7747:12:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "y",
                            "nativeSrc": "7765:1:84",
                            "nodeType": "YulIdentifier",
                            "src": "7765:1:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "7768:4:84",
                            "nodeType": "YulLiteral",
                            "src": "7768:4:84",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "7761:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "7761:3:84"
                        },
                        "nativeSrc": "7761:12:84",
                        "nodeType": "YulFunctionCall",
                        "src": "7761:12:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "7743:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "7743:3:84"
                    },
                    "nativeSrc": "7743:31:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7743:31:84"
                  },
                  "variableNames": [
                    {
                      "name": "sum",
                      "nativeSrc": "7736:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "7736:3:84"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "7800:22:84",
                    "nodeType": "YulBlock",
                    "src": "7800:22:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x11",
                            "nativeSrc": "7802:16:84",
                            "nodeType": "YulIdentifier",
                            "src": "7802:16:84"
                          },
                          "nativeSrc": "7802:18:84",
                          "nodeType": "YulFunctionCall",
                          "src": "7802:18:84"
                        },
                        "nativeSrc": "7802:18:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "7802:18:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "sum",
                        "nativeSrc": "7789:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "7789:3:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "7794:4:84",
                        "nodeType": "YulLiteral",
                        "src": "7794:4:84",
                        "type": "",
                        "value": "0xff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "7786:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "7786:2:84"
                    },
                    "nativeSrc": "7786:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7786:13:84"
                  },
                  "nativeSrc": "7783:39:84",
                  "nodeType": "YulIf",
                  "src": "7783:39:84"
                }
              ]
            },
            "name": "checked_add_t_uint8",
            "nativeSrc": "7680:148:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "x",
                "nativeSrc": "7709:1:84",
                "nodeType": "YulTypedName",
                "src": "7709:1:84",
                "type": ""
              },
              {
                "name": "y",
                "nativeSrc": "7712:1:84",
                "nodeType": "YulTypedName",
                "src": "7712:1:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "sum",
                "nativeSrc": "7718:3:84",
                "nodeType": "YulTypedName",
                "src": "7718:3:84",
                "type": ""
              }
            ],
            "src": "7680:148:84"
          },
          {
            "body": {
              "nativeSrc": "7869:121:84",
              "nodeType": "YulBlock",
              "src": "7869:121:84",
              "statements": [
                {
                  "nativeSrc": "7879:23:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "7879:23:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "y",
                        "nativeSrc": "7894:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "7894:1:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "7897:4:84",
                        "nodeType": "YulLiteral",
                        "src": "7897:4:84",
                        "type": "",
                        "value": "0xff"
                      }
                    ],
                    "functionName": {
                      "name": "and",
                      "nativeSrc": "7890:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "7890:3:84"
                    },
                    "nativeSrc": "7890:12:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7890:12:84"
                  },
                  "variables": [
                    {
                      "name": "y_1",
                      "nativeSrc": "7883:3:84",
                      "nodeType": "YulTypedName",
                      "src": "7883:3:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "7926:22:84",
                    "nodeType": "YulBlock",
                    "src": "7926:22:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x12",
                            "nativeSrc": "7928:16:84",
                            "nodeType": "YulIdentifier",
                            "src": "7928:16:84"
                          },
                          "nativeSrc": "7928:18:84",
                          "nodeType": "YulFunctionCall",
                          "src": "7928:18:84"
                        },
                        "nativeSrc": "7928:18:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "7928:18:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "y_1",
                        "nativeSrc": "7921:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "7921:3:84"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "7914:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "7914:6:84"
                    },
                    "nativeSrc": "7914:11:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7914:11:84"
                  },
                  "nativeSrc": "7911:37:84",
                  "nodeType": "YulIf",
                  "src": "7911:37:84"
                },
                {
                  "nativeSrc": "7957:27:84",
                  "nodeType": "YulAssignment",
                  "src": "7957:27:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "x",
                            "nativeSrc": "7970:1:84",
                            "nodeType": "YulIdentifier",
                            "src": "7970:1:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "7973:4:84",
                            "nodeType": "YulLiteral",
                            "src": "7973:4:84",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "7966:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "7966:3:84"
                        },
                        "nativeSrc": "7966:12:84",
                        "nodeType": "YulFunctionCall",
                        "src": "7966:12:84"
                      },
                      {
                        "name": "y_1",
                        "nativeSrc": "7980:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "7980:3:84"
                      }
                    ],
                    "functionName": {
                      "name": "mod",
                      "nativeSrc": "7962:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "7962:3:84"
                    },
                    "nativeSrc": "7962:22:84",
                    "nodeType": "YulFunctionCall",
                    "src": "7962:22:84"
                  },
                  "variableNames": [
                    {
                      "name": "r",
                      "nativeSrc": "7957:1:84",
                      "nodeType": "YulIdentifier",
                      "src": "7957:1:84"
                    }
                  ]
                }
              ]
            },
            "name": "mod_t_uint8",
            "nativeSrc": "7833:157:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "x",
                "nativeSrc": "7854:1:84",
                "nodeType": "YulTypedName",
                "src": "7854:1:84",
                "type": ""
              },
              {
                "name": "y",
                "nativeSrc": "7857:1:84",
                "nodeType": "YulTypedName",
                "src": "7857:1:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "r",
                "nativeSrc": "7863:1:84",
                "nodeType": "YulTypedName",
                "src": "7863:1:84",
                "type": ""
              }
            ],
            "src": "7833:157:84"
          },
          {
            "body": {
              "nativeSrc": "8027:95:84",
              "nodeType": "YulBlock",
              "src": "8027:95:84",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "8044:1:84",
                        "nodeType": "YulLiteral",
                        "src": "8044:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "8051:3:84",
                            "nodeType": "YulLiteral",
                            "src": "8051:3:84",
                            "type": "",
                            "value": "224"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "8056:10:84",
                            "nodeType": "YulLiteral",
                            "src": "8056:10:84",
                            "type": "",
                            "value": "0x4e487b71"
                          }
                        ],
                        "functionName": {
                          "name": "shl",
                          "nativeSrc": "8047:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "8047:3:84"
                        },
                        "nativeSrc": "8047:20:84",
                        "nodeType": "YulFunctionCall",
                        "src": "8047:20:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "8037:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "8037:6:84"
                    },
                    "nativeSrc": "8037:31:84",
                    "nodeType": "YulFunctionCall",
                    "src": "8037:31:84"
                  },
                  "nativeSrc": "8037:31:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "8037:31:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "8084:1:84",
                        "nodeType": "YulLiteral",
                        "src": "8084:1:84",
                        "type": "",
                        "value": "4"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "8087:4:84",
                        "nodeType": "YulLiteral",
                        "src": "8087:4:84",
                        "type": "",
                        "value": "0x32"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "8077:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "8077:6:84"
                    },
                    "nativeSrc": "8077:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "8077:15:84"
                  },
                  "nativeSrc": "8077:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "8077:15:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "8108:1:84",
                        "nodeType": "YulLiteral",
                        "src": "8108:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "8111:4:84",
                        "nodeType": "YulLiteral",
                        "src": "8111:4:84",
                        "type": "",
                        "value": "0x24"
                      }
                    ],
                    "functionName": {
                      "name": "revert",
                      "nativeSrc": "8101:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "8101:6:84"
                    },
                    "nativeSrc": "8101:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "8101:15:84"
                  },
                  "nativeSrc": "8101:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "8101:15:84"
                }
              ]
            },
            "name": "panic_error_0x32",
            "nativeSrc": "7995:127:84",
            "nodeType": "YulFunctionDefinition",
            "src": "7995:127:84"
          },
          {
            "body": {
              "nativeSrc": "8228:179:84",
              "nodeType": "YulBlock",
              "src": "8228:179:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "8274:16:84",
                    "nodeType": "YulBlock",
                    "src": "8274:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "8283:1:84",
                              "nodeType": "YulLiteral",
                              "src": "8283:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "8286:1:84",
                              "nodeType": "YulLiteral",
                              "src": "8286:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "8276:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "8276:6:84"
                          },
                          "nativeSrc": "8276:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "8276:12:84"
                        },
                        "nativeSrc": "8276:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "8276:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "8249:7:84",
                            "nodeType": "YulIdentifier",
                            "src": "8249:7:84"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "8258:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "8258:9:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "8245:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "8245:3:84"
                        },
                        "nativeSrc": "8245:23:84",
                        "nodeType": "YulFunctionCall",
                        "src": "8245:23:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "8270:2:84",
                        "nodeType": "YulLiteral",
                        "src": "8270:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "8241:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "8241:3:84"
                    },
                    "nativeSrc": "8241:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "8241:32:84"
                  },
                  "nativeSrc": "8238:52:84",
                  "nodeType": "YulIf",
                  "src": "8238:52:84"
                },
                {
                  "nativeSrc": "8299:29:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "8299:29:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "8318:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "8318:9:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "8312:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "8312:5:84"
                    },
                    "nativeSrc": "8312:16:84",
                    "nodeType": "YulFunctionCall",
                    "src": "8312:16:84"
                  },
                  "variables": [
                    {
                      "name": "value",
                      "nativeSrc": "8303:5:84",
                      "nodeType": "YulTypedName",
                      "src": "8303:5:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "8361:16:84",
                    "nodeType": "YulBlock",
                    "src": "8361:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "8370:1:84",
                              "nodeType": "YulLiteral",
                              "src": "8370:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "8373:1:84",
                              "nodeType": "YulLiteral",
                              "src": "8373:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "8363:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "8363:6:84"
                          },
                          "nativeSrc": "8363:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "8363:12:84"
                        },
                        "nativeSrc": "8363:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "8363:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "8350:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "8350:5:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "8357:1:84",
                            "nodeType": "YulLiteral",
                            "src": "8357:1:84",
                            "type": "",
                            "value": "6"
                          }
                        ],
                        "functionName": {
                          "name": "lt",
                          "nativeSrc": "8347:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "8347:2:84"
                        },
                        "nativeSrc": "8347:12:84",
                        "nodeType": "YulFunctionCall",
                        "src": "8347:12:84"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "8340:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "8340:6:84"
                    },
                    "nativeSrc": "8340:20:84",
                    "nodeType": "YulFunctionCall",
                    "src": "8340:20:84"
                  },
                  "nativeSrc": "8337:40:84",
                  "nodeType": "YulIf",
                  "src": "8337:40:84"
                },
                {
                  "nativeSrc": "8386:15:84",
                  "nodeType": "YulAssignment",
                  "src": "8386:15:84",
                  "value": {
                    "name": "value",
                    "nativeSrc": "8396:5:84",
                    "nodeType": "YulIdentifier",
                    "src": "8396:5:84"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "8386:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "8386:6:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_enum$_ResponseStatus_$23496_fromMemory",
            "nativeSrc": "8127:280:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "8194:9:84",
                "nodeType": "YulTypedName",
                "src": "8194:9:84",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "8205:7:84",
                "nodeType": "YulTypedName",
                "src": "8205:7:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "8217:6:84",
                "nodeType": "YulTypedName",
                "src": "8217:6:84",
                "type": ""
              }
            ],
            "src": "8127:280:84"
          },
          {
            "body": {
              "nativeSrc": "8453:207:84",
              "nodeType": "YulBlock",
              "src": "8453:207:84",
              "statements": [
                {
                  "nativeSrc": "8463:19:84",
                  "nodeType": "YulAssignment",
                  "src": "8463:19:84",
                  "value": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "8479:2:84",
                        "nodeType": "YulLiteral",
                        "src": "8479:2:84",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "8473:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "8473:5:84"
                    },
                    "nativeSrc": "8473:9:84",
                    "nodeType": "YulFunctionCall",
                    "src": "8473:9:84"
                  },
                  "variableNames": [
                    {
                      "name": "memPtr",
                      "nativeSrc": "8463:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "8463:6:84"
                    }
                  ]
                },
                {
                  "nativeSrc": "8491:35:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "8491:35:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "memPtr",
                        "nativeSrc": "8513:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "8513:6:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "8521:4:84",
                        "nodeType": "YulLiteral",
                        "src": "8521:4:84",
                        "type": "",
                        "value": "0xa0"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "8509:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "8509:3:84"
                    },
                    "nativeSrc": "8509:17:84",
                    "nodeType": "YulFunctionCall",
                    "src": "8509:17:84"
                  },
                  "variables": [
                    {
                      "name": "newFreePtr",
                      "nativeSrc": "8495:10:84",
                      "nodeType": "YulTypedName",
                      "src": "8495:10:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "8601:22:84",
                    "nodeType": "YulBlock",
                    "src": "8601:22:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x41",
                            "nativeSrc": "8603:16:84",
                            "nodeType": "YulIdentifier",
                            "src": "8603:16:84"
                          },
                          "nativeSrc": "8603:18:84",
                          "nodeType": "YulFunctionCall",
                          "src": "8603:18:84"
                        },
                        "nativeSrc": "8603:18:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "8603:18:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "newFreePtr",
                            "nativeSrc": "8544:10:84",
                            "nodeType": "YulIdentifier",
                            "src": "8544:10:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "8556:18:84",
                            "nodeType": "YulLiteral",
                            "src": "8556:18:84",
                            "type": "",
                            "value": "0xffffffffffffffff"
                          }
                        ],
                        "functionName": {
                          "name": "gt",
                          "nativeSrc": "8541:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "8541:2:84"
                        },
                        "nativeSrc": "8541:34:84",
                        "nodeType": "YulFunctionCall",
                        "src": "8541:34:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "newFreePtr",
                            "nativeSrc": "8580:10:84",
                            "nodeType": "YulIdentifier",
                            "src": "8580:10:84"
                          },
                          {
                            "name": "memPtr",
                            "nativeSrc": "8592:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "8592:6:84"
                          }
                        ],
                        "functionName": {
                          "name": "lt",
                          "nativeSrc": "8577:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "8577:2:84"
                        },
                        "nativeSrc": "8577:22:84",
                        "nodeType": "YulFunctionCall",
                        "src": "8577:22:84"
                      }
                    ],
                    "functionName": {
                      "name": "or",
                      "nativeSrc": "8538:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "8538:2:84"
                    },
                    "nativeSrc": "8538:62:84",
                    "nodeType": "YulFunctionCall",
                    "src": "8538:62:84"
                  },
                  "nativeSrc": "8535:88:84",
                  "nodeType": "YulIf",
                  "src": "8535:88:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "8639:2:84",
                        "nodeType": "YulLiteral",
                        "src": "8639:2:84",
                        "type": "",
                        "value": "64"
                      },
                      {
                        "name": "newFreePtr",
                        "nativeSrc": "8643:10:84",
                        "nodeType": "YulIdentifier",
                        "src": "8643:10:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "8632:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "8632:6:84"
                    },
                    "nativeSrc": "8632:22:84",
                    "nodeType": "YulFunctionCall",
                    "src": "8632:22:84"
                  },
                  "nativeSrc": "8632:22:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "8632:22:84"
                }
              ]
            },
            "name": "allocate_memory",
            "nativeSrc": "8412:248:84",
            "nodeType": "YulFunctionDefinition",
            "returnVariables": [
              {
                "name": "memPtr",
                "nativeSrc": "8442:6:84",
                "nodeType": "YulTypedName",
                "src": "8442:6:84",
                "type": ""
              }
            ],
            "src": "8412:248:84"
          },
          {
            "body": {
              "nativeSrc": "8709:85:84",
              "nodeType": "YulBlock",
              "src": "8709:85:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "8772:16:84",
                    "nodeType": "YulBlock",
                    "src": "8772:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "8781:1:84",
                              "nodeType": "YulLiteral",
                              "src": "8781:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "8784:1:84",
                              "nodeType": "YulLiteral",
                              "src": "8784:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "8774:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "8774:6:84"
                          },
                          "nativeSrc": "8774:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "8774:12:84"
                        },
                        "nativeSrc": "8774:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "8774:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "8732:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "8732:5:84"
                          },
                          {
                            "arguments": [
                              {
                                "name": "value",
                                "nativeSrc": "8743:5:84",
                                "nodeType": "YulIdentifier",
                                "src": "8743:5:84"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "8750:18:84",
                                "nodeType": "YulLiteral",
                                "src": "8750:18:84",
                                "type": "",
                                "value": "0xffffffffffffffff"
                              }
                            ],
                            "functionName": {
                              "name": "and",
                              "nativeSrc": "8739:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "8739:3:84"
                            },
                            "nativeSrc": "8739:30:84",
                            "nodeType": "YulFunctionCall",
                            "src": "8739:30:84"
                          }
                        ],
                        "functionName": {
                          "name": "eq",
                          "nativeSrc": "8729:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "8729:2:84"
                        },
                        "nativeSrc": "8729:41:84",
                        "nodeType": "YulFunctionCall",
                        "src": "8729:41:84"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "8722:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "8722:6:84"
                    },
                    "nativeSrc": "8722:49:84",
                    "nodeType": "YulFunctionCall",
                    "src": "8722:49:84"
                  },
                  "nativeSrc": "8719:69:84",
                  "nodeType": "YulIf",
                  "src": "8719:69:84"
                }
              ]
            },
            "name": "validator_revert_uint64",
            "nativeSrc": "8665:129:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "value",
                "nativeSrc": "8698:5:84",
                "nodeType": "YulTypedName",
                "src": "8698:5:84",
                "type": ""
              }
            ],
            "src": "8665:129:84"
          },
          {
            "body": {
              "nativeSrc": "8862:635:84",
              "nodeType": "YulBlock",
              "src": "8862:635:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "8911:16:84",
                    "nodeType": "YulBlock",
                    "src": "8911:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "8920:1:84",
                              "nodeType": "YulLiteral",
                              "src": "8920:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "8923:1:84",
                              "nodeType": "YulLiteral",
                              "src": "8923:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "8913:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "8913:6:84"
                          },
                          "nativeSrc": "8913:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "8913:12:84"
                        },
                        "nativeSrc": "8913:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "8913:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "offset",
                                "nativeSrc": "8890:6:84",
                                "nodeType": "YulIdentifier",
                                "src": "8890:6:84"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "8898:4:84",
                                "nodeType": "YulLiteral",
                                "src": "8898:4:84",
                                "type": "",
                                "value": "0x1f"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "8886:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "8886:3:84"
                            },
                            "nativeSrc": "8886:17:84",
                            "nodeType": "YulFunctionCall",
                            "src": "8886:17:84"
                          },
                          {
                            "name": "end",
                            "nativeSrc": "8905:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "8905:3:84"
                          }
                        ],
                        "functionName": {
                          "name": "slt",
                          "nativeSrc": "8882:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "8882:3:84"
                        },
                        "nativeSrc": "8882:27:84",
                        "nodeType": "YulFunctionCall",
                        "src": "8882:27:84"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "8875:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "8875:6:84"
                    },
                    "nativeSrc": "8875:35:84",
                    "nodeType": "YulFunctionCall",
                    "src": "8875:35:84"
                  },
                  "nativeSrc": "8872:55:84",
                  "nodeType": "YulIf",
                  "src": "8872:55:84"
                },
                {
                  "nativeSrc": "8936:23:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "8936:23:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "8952:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "8952:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "8946:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "8946:5:84"
                    },
                    "nativeSrc": "8946:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "8946:13:84"
                  },
                  "variables": [
                    {
                      "name": "_1",
                      "nativeSrc": "8940:2:84",
                      "nodeType": "YulTypedName",
                      "src": "8940:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "8968:28:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "8968:28:84",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "8978:18:84",
                    "nodeType": "YulLiteral",
                    "src": "8978:18:84",
                    "type": "",
                    "value": "0xffffffffffffffff"
                  },
                  "variables": [
                    {
                      "name": "_2",
                      "nativeSrc": "8972:2:84",
                      "nodeType": "YulTypedName",
                      "src": "8972:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "9019:22:84",
                    "nodeType": "YulBlock",
                    "src": "9019:22:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x41",
                            "nativeSrc": "9021:16:84",
                            "nodeType": "YulIdentifier",
                            "src": "9021:16:84"
                          },
                          "nativeSrc": "9021:18:84",
                          "nodeType": "YulFunctionCall",
                          "src": "9021:18:84"
                        },
                        "nativeSrc": "9021:18:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "9021:18:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "_1",
                        "nativeSrc": "9011:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "9011:2:84"
                      },
                      {
                        "name": "_2",
                        "nativeSrc": "9015:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "9015:2:84"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "9008:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "9008:2:84"
                    },
                    "nativeSrc": "9008:10:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9008:10:84"
                  },
                  "nativeSrc": "9005:36:84",
                  "nodeType": "YulIf",
                  "src": "9005:36:84"
                },
                {
                  "nativeSrc": "9050:17:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "9050:17:84",
                  "value": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "9064:2:84",
                        "nodeType": "YulLiteral",
                        "src": "9064:2:84",
                        "type": "",
                        "value": "31"
                      }
                    ],
                    "functionName": {
                      "name": "not",
                      "nativeSrc": "9060:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "9060:3:84"
                    },
                    "nativeSrc": "9060:7:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9060:7:84"
                  },
                  "variables": [
                    {
                      "name": "_3",
                      "nativeSrc": "9054:2:84",
                      "nodeType": "YulTypedName",
                      "src": "9054:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "9076:23:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "9076:23:84",
                  "value": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "9096:2:84",
                        "nodeType": "YulLiteral",
                        "src": "9096:2:84",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "9090:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "9090:5:84"
                    },
                    "nativeSrc": "9090:9:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9090:9:84"
                  },
                  "variables": [
                    {
                      "name": "memPtr",
                      "nativeSrc": "9080:6:84",
                      "nodeType": "YulTypedName",
                      "src": "9080:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "9108:71:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "9108:71:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "memPtr",
                        "nativeSrc": "9130:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "9130:6:84"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "arguments": [
                                      {
                                        "name": "_1",
                                        "nativeSrc": "9154:2:84",
                                        "nodeType": "YulIdentifier",
                                        "src": "9154:2:84"
                                      },
                                      {
                                        "kind": "number",
                                        "nativeSrc": "9158:4:84",
                                        "nodeType": "YulLiteral",
                                        "src": "9158:4:84",
                                        "type": "",
                                        "value": "0x1f"
                                      }
                                    ],
                                    "functionName": {
                                      "name": "add",
                                      "nativeSrc": "9150:3:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "9150:3:84"
                                    },
                                    "nativeSrc": "9150:13:84",
                                    "nodeType": "YulFunctionCall",
                                    "src": "9150:13:84"
                                  },
                                  {
                                    "name": "_3",
                                    "nativeSrc": "9165:2:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "9165:2:84"
                                  }
                                ],
                                "functionName": {
                                  "name": "and",
                                  "nativeSrc": "9146:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "9146:3:84"
                                },
                                "nativeSrc": "9146:22:84",
                                "nodeType": "YulFunctionCall",
                                "src": "9146:22:84"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "9170:2:84",
                                "nodeType": "YulLiteral",
                                "src": "9170:2:84",
                                "type": "",
                                "value": "63"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "9142:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "9142:3:84"
                            },
                            "nativeSrc": "9142:31:84",
                            "nodeType": "YulFunctionCall",
                            "src": "9142:31:84"
                          },
                          {
                            "name": "_3",
                            "nativeSrc": "9175:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "9175:2:84"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "9138:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "9138:3:84"
                        },
                        "nativeSrc": "9138:40:84",
                        "nodeType": "YulFunctionCall",
                        "src": "9138:40:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "9126:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "9126:3:84"
                    },
                    "nativeSrc": "9126:53:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9126:53:84"
                  },
                  "variables": [
                    {
                      "name": "newFreePtr",
                      "nativeSrc": "9112:10:84",
                      "nodeType": "YulTypedName",
                      "src": "9112:10:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "9238:22:84",
                    "nodeType": "YulBlock",
                    "src": "9238:22:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x41",
                            "nativeSrc": "9240:16:84",
                            "nodeType": "YulIdentifier",
                            "src": "9240:16:84"
                          },
                          "nativeSrc": "9240:18:84",
                          "nodeType": "YulFunctionCall",
                          "src": "9240:18:84"
                        },
                        "nativeSrc": "9240:18:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "9240:18:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "newFreePtr",
                            "nativeSrc": "9197:10:84",
                            "nodeType": "YulIdentifier",
                            "src": "9197:10:84"
                          },
                          {
                            "name": "_2",
                            "nativeSrc": "9209:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "9209:2:84"
                          }
                        ],
                        "functionName": {
                          "name": "gt",
                          "nativeSrc": "9194:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "9194:2:84"
                        },
                        "nativeSrc": "9194:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "9194:18:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "newFreePtr",
                            "nativeSrc": "9217:10:84",
                            "nodeType": "YulIdentifier",
                            "src": "9217:10:84"
                          },
                          {
                            "name": "memPtr",
                            "nativeSrc": "9229:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "9229:6:84"
                          }
                        ],
                        "functionName": {
                          "name": "lt",
                          "nativeSrc": "9214:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "9214:2:84"
                        },
                        "nativeSrc": "9214:22:84",
                        "nodeType": "YulFunctionCall",
                        "src": "9214:22:84"
                      }
                    ],
                    "functionName": {
                      "name": "or",
                      "nativeSrc": "9191:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "9191:2:84"
                    },
                    "nativeSrc": "9191:46:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9191:46:84"
                  },
                  "nativeSrc": "9188:72:84",
                  "nodeType": "YulIf",
                  "src": "9188:72:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "9276:2:84",
                        "nodeType": "YulLiteral",
                        "src": "9276:2:84",
                        "type": "",
                        "value": "64"
                      },
                      {
                        "name": "newFreePtr",
                        "nativeSrc": "9280:10:84",
                        "nodeType": "YulIdentifier",
                        "src": "9280:10:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "9269:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "9269:6:84"
                    },
                    "nativeSrc": "9269:22:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9269:22:84"
                  },
                  "nativeSrc": "9269:22:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "9269:22:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "memPtr",
                        "nativeSrc": "9307:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "9307:6:84"
                      },
                      {
                        "name": "_1",
                        "nativeSrc": "9315:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "9315:2:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "9300:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "9300:6:84"
                    },
                    "nativeSrc": "9300:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9300:18:84"
                  },
                  "nativeSrc": "9300:18:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "9300:18:84"
                },
                {
                  "body": {
                    "nativeSrc": "9366:16:84",
                    "nodeType": "YulBlock",
                    "src": "9366:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "9375:1:84",
                              "nodeType": "YulLiteral",
                              "src": "9375:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "9378:1:84",
                              "nodeType": "YulLiteral",
                              "src": "9378:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "9368:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "9368:6:84"
                          },
                          "nativeSrc": "9368:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "9368:12:84"
                        },
                        "nativeSrc": "9368:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "9368:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "offset",
                                "nativeSrc": "9341:6:84",
                                "nodeType": "YulIdentifier",
                                "src": "9341:6:84"
                              },
                              {
                                "name": "_1",
                                "nativeSrc": "9349:2:84",
                                "nodeType": "YulIdentifier",
                                "src": "9349:2:84"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "9337:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "9337:3:84"
                            },
                            "nativeSrc": "9337:15:84",
                            "nodeType": "YulFunctionCall",
                            "src": "9337:15:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "9354:4:84",
                            "nodeType": "YulLiteral",
                            "src": "9354:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "9333:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "9333:3:84"
                        },
                        "nativeSrc": "9333:26:84",
                        "nodeType": "YulFunctionCall",
                        "src": "9333:26:84"
                      },
                      {
                        "name": "end",
                        "nativeSrc": "9361:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "9361:3:84"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "9330:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "9330:2:84"
                    },
                    "nativeSrc": "9330:35:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9330:35:84"
                  },
                  "nativeSrc": "9327:55:84",
                  "nodeType": "YulIf",
                  "src": "9327:55:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "offset",
                            "nativeSrc": "9430:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "9430:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "9438:4:84",
                            "nodeType": "YulLiteral",
                            "src": "9438:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "9426:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "9426:3:84"
                        },
                        "nativeSrc": "9426:17:84",
                        "nodeType": "YulFunctionCall",
                        "src": "9426:17:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "memPtr",
                            "nativeSrc": "9449:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "9449:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "9457:4:84",
                            "nodeType": "YulLiteral",
                            "src": "9457:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "9445:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "9445:3:84"
                        },
                        "nativeSrc": "9445:17:84",
                        "nodeType": "YulFunctionCall",
                        "src": "9445:17:84"
                      },
                      {
                        "name": "_1",
                        "nativeSrc": "9464:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "9464:2:84"
                      }
                    ],
                    "functionName": {
                      "name": "copy_memory_to_memory_with_cleanup",
                      "nativeSrc": "9391:34:84",
                      "nodeType": "YulIdentifier",
                      "src": "9391:34:84"
                    },
                    "nativeSrc": "9391:76:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9391:76:84"
                  },
                  "nativeSrc": "9391:76:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "9391:76:84"
                },
                {
                  "nativeSrc": "9476:15:84",
                  "nodeType": "YulAssignment",
                  "src": "9476:15:84",
                  "value": {
                    "name": "memPtr",
                    "nativeSrc": "9485:6:84",
                    "nodeType": "YulIdentifier",
                    "src": "9485:6:84"
                  },
                  "variableNames": [
                    {
                      "name": "array",
                      "nativeSrc": "9476:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "9476:5:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_bytes_fromMemory",
            "nativeSrc": "8799:698:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "offset",
                "nativeSrc": "8836:6:84",
                "nodeType": "YulTypedName",
                "src": "8836:6:84",
                "type": ""
              },
              {
                "name": "end",
                "nativeSrc": "8844:3:84",
                "nodeType": "YulTypedName",
                "src": "8844:3:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "array",
                "nativeSrc": "8852:5:84",
                "nodeType": "YulTypedName",
                "src": "8852:5:84",
                "type": ""
              }
            ],
            "src": "8799:698:84"
          },
          {
            "body": {
              "nativeSrc": "9610:928:84",
              "nodeType": "YulBlock",
              "src": "9610:928:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "9656:16:84",
                    "nodeType": "YulBlock",
                    "src": "9656:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "9665:1:84",
                              "nodeType": "YulLiteral",
                              "src": "9665:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "9668:1:84",
                              "nodeType": "YulLiteral",
                              "src": "9668:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "9658:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "9658:6:84"
                          },
                          "nativeSrc": "9658:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "9658:12:84"
                        },
                        "nativeSrc": "9658:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "9658:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "9631:7:84",
                            "nodeType": "YulIdentifier",
                            "src": "9631:7:84"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "9640:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "9640:9:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "9627:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "9627:3:84"
                        },
                        "nativeSrc": "9627:23:84",
                        "nodeType": "YulFunctionCall",
                        "src": "9627:23:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "9652:2:84",
                        "nodeType": "YulLiteral",
                        "src": "9652:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "9623:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "9623:3:84"
                    },
                    "nativeSrc": "9623:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9623:32:84"
                  },
                  "nativeSrc": "9620:52:84",
                  "nodeType": "YulIf",
                  "src": "9620:52:84"
                },
                {
                  "nativeSrc": "9681:30:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "9681:30:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "9701:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "9701:9:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "9695:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "9695:5:84"
                    },
                    "nativeSrc": "9695:16:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9695:16:84"
                  },
                  "variables": [
                    {
                      "name": "offset",
                      "nativeSrc": "9685:6:84",
                      "nodeType": "YulTypedName",
                      "src": "9685:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "9720:28:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "9720:28:84",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "9730:18:84",
                    "nodeType": "YulLiteral",
                    "src": "9730:18:84",
                    "type": "",
                    "value": "0xffffffffffffffff"
                  },
                  "variables": [
                    {
                      "name": "_1",
                      "nativeSrc": "9724:2:84",
                      "nodeType": "YulTypedName",
                      "src": "9724:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "9775:16:84",
                    "nodeType": "YulBlock",
                    "src": "9775:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "9784:1:84",
                              "nodeType": "YulLiteral",
                              "src": "9784:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "9787:1:84",
                              "nodeType": "YulLiteral",
                              "src": "9787:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "9777:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "9777:6:84"
                          },
                          "nativeSrc": "9777:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "9777:12:84"
                        },
                        "nativeSrc": "9777:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "9777:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "9763:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "9763:6:84"
                      },
                      {
                        "name": "_1",
                        "nativeSrc": "9771:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "9771:2:84"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "9760:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "9760:2:84"
                    },
                    "nativeSrc": "9760:14:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9760:14:84"
                  },
                  "nativeSrc": "9757:34:84",
                  "nodeType": "YulIf",
                  "src": "9757:34:84"
                },
                {
                  "nativeSrc": "9800:32:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "9800:32:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "9814:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "9814:9:84"
                      },
                      {
                        "name": "offset",
                        "nativeSrc": "9825:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "9825:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "9810:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "9810:3:84"
                    },
                    "nativeSrc": "9810:22:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9810:22:84"
                  },
                  "variables": [
                    {
                      "name": "_2",
                      "nativeSrc": "9804:2:84",
                      "nodeType": "YulTypedName",
                      "src": "9804:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "9872:16:84",
                    "nodeType": "YulBlock",
                    "src": "9872:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "9881:1:84",
                              "nodeType": "YulLiteral",
                              "src": "9881:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "9884:1:84",
                              "nodeType": "YulLiteral",
                              "src": "9884:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "9874:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "9874:6:84"
                          },
                          "nativeSrc": "9874:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "9874:12:84"
                        },
                        "nativeSrc": "9874:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "9874:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "9852:7:84",
                            "nodeType": "YulIdentifier",
                            "src": "9852:7:84"
                          },
                          {
                            "name": "_2",
                            "nativeSrc": "9861:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "9861:2:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "9848:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "9848:3:84"
                        },
                        "nativeSrc": "9848:16:84",
                        "nodeType": "YulFunctionCall",
                        "src": "9848:16:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "9866:4:84",
                        "nodeType": "YulLiteral",
                        "src": "9866:4:84",
                        "type": "",
                        "value": "0xa0"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "9844:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "9844:3:84"
                    },
                    "nativeSrc": "9844:27:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9844:27:84"
                  },
                  "nativeSrc": "9841:47:84",
                  "nodeType": "YulIf",
                  "src": "9841:47:84"
                },
                {
                  "nativeSrc": "9897:30:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "9897:30:84",
                  "value": {
                    "arguments": [],
                    "functionName": {
                      "name": "allocate_memory",
                      "nativeSrc": "9910:15:84",
                      "nodeType": "YulIdentifier",
                      "src": "9910:15:84"
                    },
                    "nativeSrc": "9910:17:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9910:17:84"
                  },
                  "variables": [
                    {
                      "name": "value",
                      "nativeSrc": "9901:5:84",
                      "nodeType": "YulTypedName",
                      "src": "9901:5:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "9936:24:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "9936:24:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "_2",
                        "nativeSrc": "9957:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "9957:2:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "9951:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "9951:5:84"
                    },
                    "nativeSrc": "9951:9:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9951:9:84"
                  },
                  "variables": [
                    {
                      "name": "value_1",
                      "nativeSrc": "9940:7:84",
                      "nodeType": "YulTypedName",
                      "src": "9940:7:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value_1",
                        "nativeSrc": "9994:7:84",
                        "nodeType": "YulIdentifier",
                        "src": "9994:7:84"
                      }
                    ],
                    "functionName": {
                      "name": "validator_revert_address",
                      "nativeSrc": "9969:24:84",
                      "nodeType": "YulIdentifier",
                      "src": "9969:24:84"
                    },
                    "nativeSrc": "9969:33:84",
                    "nodeType": "YulFunctionCall",
                    "src": "9969:33:84"
                  },
                  "nativeSrc": "9969:33:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "9969:33:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "10018:5:84",
                        "nodeType": "YulIdentifier",
                        "src": "10018:5:84"
                      },
                      {
                        "name": "value_1",
                        "nativeSrc": "10025:7:84",
                        "nodeType": "YulIdentifier",
                        "src": "10025:7:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "10011:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "10011:6:84"
                    },
                    "nativeSrc": "10011:22:84",
                    "nodeType": "YulFunctionCall",
                    "src": "10011:22:84"
                  },
                  "nativeSrc": "10011:22:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "10011:22:84"
                },
                {
                  "nativeSrc": "10042:33:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "10042:33:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "_2",
                            "nativeSrc": "10067:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "10067:2:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "10071:2:84",
                            "nodeType": "YulLiteral",
                            "src": "10071:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "10063:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "10063:3:84"
                        },
                        "nativeSrc": "10063:11:84",
                        "nodeType": "YulFunctionCall",
                        "src": "10063:11:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "10057:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "10057:5:84"
                    },
                    "nativeSrc": "10057:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "10057:18:84"
                  },
                  "variables": [
                    {
                      "name": "value_2",
                      "nativeSrc": "10046:7:84",
                      "nodeType": "YulTypedName",
                      "src": "10046:7:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value_2",
                        "nativeSrc": "10108:7:84",
                        "nodeType": "YulIdentifier",
                        "src": "10108:7:84"
                      }
                    ],
                    "functionName": {
                      "name": "validator_revert_uint64",
                      "nativeSrc": "10084:23:84",
                      "nodeType": "YulIdentifier",
                      "src": "10084:23:84"
                    },
                    "nativeSrc": "10084:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "10084:32:84"
                  },
                  "nativeSrc": "10084:32:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "10084:32:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "10136:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "10136:5:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "10143:2:84",
                            "nodeType": "YulLiteral",
                            "src": "10143:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "10132:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "10132:3:84"
                        },
                        "nativeSrc": "10132:14:84",
                        "nodeType": "YulFunctionCall",
                        "src": "10132:14:84"
                      },
                      {
                        "name": "value_2",
                        "nativeSrc": "10148:7:84",
                        "nodeType": "YulIdentifier",
                        "src": "10148:7:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "10125:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "10125:6:84"
                    },
                    "nativeSrc": "10125:31:84",
                    "nodeType": "YulFunctionCall",
                    "src": "10125:31:84"
                  },
                  "nativeSrc": "10125:31:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "10125:31:84"
                },
                {
                  "nativeSrc": "10165:33:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "10165:33:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "_2",
                            "nativeSrc": "10190:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "10190:2:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "10194:2:84",
                            "nodeType": "YulLiteral",
                            "src": "10194:2:84",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "10186:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "10186:3:84"
                        },
                        "nativeSrc": "10186:11:84",
                        "nodeType": "YulFunctionCall",
                        "src": "10186:11:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "10180:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "10180:5:84"
                    },
                    "nativeSrc": "10180:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "10180:18:84"
                  },
                  "variables": [
                    {
                      "name": "value_3",
                      "nativeSrc": "10169:7:84",
                      "nodeType": "YulTypedName",
                      "src": "10169:7:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value_3",
                        "nativeSrc": "10231:7:84",
                        "nodeType": "YulIdentifier",
                        "src": "10231:7:84"
                      }
                    ],
                    "functionName": {
                      "name": "validator_revert_uint32",
                      "nativeSrc": "10207:23:84",
                      "nodeType": "YulIdentifier",
                      "src": "10207:23:84"
                    },
                    "nativeSrc": "10207:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "10207:32:84"
                  },
                  "nativeSrc": "10207:32:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "10207:32:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "10259:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "10259:5:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "10266:2:84",
                            "nodeType": "YulLiteral",
                            "src": "10266:2:84",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "10255:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "10255:3:84"
                        },
                        "nativeSrc": "10255:14:84",
                        "nodeType": "YulFunctionCall",
                        "src": "10255:14:84"
                      },
                      {
                        "name": "value_3",
                        "nativeSrc": "10271:7:84",
                        "nodeType": "YulIdentifier",
                        "src": "10271:7:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "10248:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "10248:6:84"
                    },
                    "nativeSrc": "10248:31:84",
                    "nodeType": "YulFunctionCall",
                    "src": "10248:31:84"
                  },
                  "nativeSrc": "10248:31:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "10248:31:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "10299:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "10299:5:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "10306:2:84",
                            "nodeType": "YulLiteral",
                            "src": "10306:2:84",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "10295:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "10295:3:84"
                        },
                        "nativeSrc": "10295:14:84",
                        "nodeType": "YulFunctionCall",
                        "src": "10295:14:84"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "_2",
                                "nativeSrc": "10321:2:84",
                                "nodeType": "YulIdentifier",
                                "src": "10321:2:84"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "10325:2:84",
                                "nodeType": "YulLiteral",
                                "src": "10325:2:84",
                                "type": "",
                                "value": "96"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "10317:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "10317:3:84"
                            },
                            "nativeSrc": "10317:11:84",
                            "nodeType": "YulFunctionCall",
                            "src": "10317:11:84"
                          }
                        ],
                        "functionName": {
                          "name": "mload",
                          "nativeSrc": "10311:5:84",
                          "nodeType": "YulIdentifier",
                          "src": "10311:5:84"
                        },
                        "nativeSrc": "10311:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "10311:18:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "10288:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "10288:6:84"
                    },
                    "nativeSrc": "10288:42:84",
                    "nodeType": "YulFunctionCall",
                    "src": "10288:42:84"
                  },
                  "nativeSrc": "10288:42:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "10288:42:84"
                },
                {
                  "nativeSrc": "10339:35:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "10339:35:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "_2",
                            "nativeSrc": "10365:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "10365:2:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "10369:3:84",
                            "nodeType": "YulLiteral",
                            "src": "10369:3:84",
                            "type": "",
                            "value": "128"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "10361:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "10361:3:84"
                        },
                        "nativeSrc": "10361:12:84",
                        "nodeType": "YulFunctionCall",
                        "src": "10361:12:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "10355:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "10355:5:84"
                    },
                    "nativeSrc": "10355:19:84",
                    "nodeType": "YulFunctionCall",
                    "src": "10355:19:84"
                  },
                  "variables": [
                    {
                      "name": "offset_1",
                      "nativeSrc": "10343:8:84",
                      "nodeType": "YulTypedName",
                      "src": "10343:8:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "10403:16:84",
                    "nodeType": "YulBlock",
                    "src": "10403:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "10412:1:84",
                              "nodeType": "YulLiteral",
                              "src": "10412:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "10415:1:84",
                              "nodeType": "YulLiteral",
                              "src": "10415:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "10405:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "10405:6:84"
                          },
                          "nativeSrc": "10405:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "10405:12:84"
                        },
                        "nativeSrc": "10405:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "10405:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_1",
                        "nativeSrc": "10389:8:84",
                        "nodeType": "YulIdentifier",
                        "src": "10389:8:84"
                      },
                      {
                        "name": "_1",
                        "nativeSrc": "10399:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "10399:2:84"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "10386:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "10386:2:84"
                    },
                    "nativeSrc": "10386:16:84",
                    "nodeType": "YulFunctionCall",
                    "src": "10386:16:84"
                  },
                  "nativeSrc": "10383:36:84",
                  "nodeType": "YulIf",
                  "src": "10383:36:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "10439:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "10439:5:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "10446:3:84",
                            "nodeType": "YulLiteral",
                            "src": "10446:3:84",
                            "type": "",
                            "value": "128"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "10435:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "10435:3:84"
                        },
                        "nativeSrc": "10435:15:84",
                        "nodeType": "YulFunctionCall",
                        "src": "10435:15:84"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "_2",
                                "nativeSrc": "10484:2:84",
                                "nodeType": "YulIdentifier",
                                "src": "10484:2:84"
                              },
                              {
                                "name": "offset_1",
                                "nativeSrc": "10488:8:84",
                                "nodeType": "YulIdentifier",
                                "src": "10488:8:84"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "10480:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "10480:3:84"
                            },
                            "nativeSrc": "10480:17:84",
                            "nodeType": "YulFunctionCall",
                            "src": "10480:17:84"
                          },
                          {
                            "name": "dataEnd",
                            "nativeSrc": "10499:7:84",
                            "nodeType": "YulIdentifier",
                            "src": "10499:7:84"
                          }
                        ],
                        "functionName": {
                          "name": "abi_decode_bytes_fromMemory",
                          "nativeSrc": "10452:27:84",
                          "nodeType": "YulIdentifier",
                          "src": "10452:27:84"
                        },
                        "nativeSrc": "10452:55:84",
                        "nodeType": "YulFunctionCall",
                        "src": "10452:55:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "10428:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "10428:6:84"
                    },
                    "nativeSrc": "10428:80:84",
                    "nodeType": "YulFunctionCall",
                    "src": "10428:80:84"
                  },
                  "nativeSrc": "10428:80:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "10428:80:84"
                },
                {
                  "nativeSrc": "10517:15:84",
                  "nodeType": "YulAssignment",
                  "src": "10517:15:84",
                  "value": {
                    "name": "value",
                    "nativeSrc": "10527:5:84",
                    "nodeType": "YulIdentifier",
                    "src": "10527:5:84"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "10517:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "10517:6:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_struct$_Response_$23488_memory_ptr_fromMemory",
            "nativeSrc": "9502:1036:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "9576:9:84",
                "nodeType": "YulTypedName",
                "src": "9576:9:84",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "9587:7:84",
                "nodeType": "YulTypedName",
                "src": "9587:7:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "9599:6:84",
                "nodeType": "YulTypedName",
                "src": "9599:6:84",
                "type": ""
              }
            ],
            "src": "9502:1036:84"
          },
          {
            "body": {
              "nativeSrc": "10672:145:84",
              "nodeType": "YulBlock",
              "src": "10672:145:84",
              "statements": [
                {
                  "nativeSrc": "10682:26:84",
                  "nodeType": "YulAssignment",
                  "src": "10682:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "10694:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "10694:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "10705:2:84",
                        "nodeType": "YulLiteral",
                        "src": "10705:2:84",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "10690:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "10690:3:84"
                    },
                    "nativeSrc": "10690:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "10690:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "10682:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "10682:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "10724:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "10724:9:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "10739:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "10739:6:84"
                          },
                          {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "10755:3:84",
                                    "nodeType": "YulLiteral",
                                    "src": "10755:3:84",
                                    "type": "",
                                    "value": "160"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "10760:1:84",
                                    "nodeType": "YulLiteral",
                                    "src": "10760:1:84",
                                    "type": "",
                                    "value": "1"
                                  }
                                ],
                                "functionName": {
                                  "name": "shl",
                                  "nativeSrc": "10751:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "10751:3:84"
                                },
                                "nativeSrc": "10751:11:84",
                                "nodeType": "YulFunctionCall",
                                "src": "10751:11:84"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "10764:1:84",
                                "nodeType": "YulLiteral",
                                "src": "10764:1:84",
                                "type": "",
                                "value": "1"
                              }
                            ],
                            "functionName": {
                              "name": "sub",
                              "nativeSrc": "10747:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "10747:3:84"
                            },
                            "nativeSrc": "10747:19:84",
                            "nodeType": "YulFunctionCall",
                            "src": "10747:19:84"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "10735:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "10735:3:84"
                        },
                        "nativeSrc": "10735:32:84",
                        "nodeType": "YulFunctionCall",
                        "src": "10735:32:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "10717:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "10717:6:84"
                    },
                    "nativeSrc": "10717:51:84",
                    "nodeType": "YulFunctionCall",
                    "src": "10717:51:84"
                  },
                  "nativeSrc": "10717:51:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "10717:51:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "10788:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "10788:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "10799:2:84",
                            "nodeType": "YulLiteral",
                            "src": "10799:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "10784:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "10784:3:84"
                        },
                        "nativeSrc": "10784:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "10784:18:84"
                      },
                      {
                        "name": "value1",
                        "nativeSrc": "10804:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "10804:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "10777:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "10777:6:84"
                    },
                    "nativeSrc": "10777:34:84",
                    "nodeType": "YulFunctionCall",
                    "src": "10777:34:84"
                  },
                  "nativeSrc": "10777:34:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "10777:34:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_address_t_bytes32__to_t_address_t_bytes32__fromStack_reversed",
            "nativeSrc": "10543:274:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "10633:9:84",
                "nodeType": "YulTypedName",
                "src": "10633:9:84",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "10644:6:84",
                "nodeType": "YulTypedName",
                "src": "10644:6:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "10652:6:84",
                "nodeType": "YulTypedName",
                "src": "10652:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "10663:4:84",
                "nodeType": "YulTypedName",
                "src": "10663:4:84",
                "type": ""
              }
            ],
            "src": "10543:274:84"
          },
          {
            "body": {
              "nativeSrc": "10882:162:84",
              "nodeType": "YulBlock",
              "src": "10882:162:84",
              "statements": [
                {
                  "nativeSrc": "10892:29:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "10892:29:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "10915:5:84",
                        "nodeType": "YulIdentifier",
                        "src": "10915:5:84"
                      }
                    ],
                    "functionName": {
                      "name": "sload",
                      "nativeSrc": "10909:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "10909:5:84"
                    },
                    "nativeSrc": "10909:12:84",
                    "nodeType": "YulFunctionCall",
                    "src": "10909:12:84"
                  },
                  "variables": [
                    {
                      "name": "slotValue",
                      "nativeSrc": "10896:9:84",
                      "nodeType": "YulTypedName",
                      "src": "10896:9:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "10937:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "10937:3:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "slotValue",
                            "nativeSrc": "10946:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "10946:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "10957:4:84",
                            "nodeType": "YulLiteral",
                            "src": "10957:4:84",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "10942:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "10942:3:84"
                        },
                        "nativeSrc": "10942:20:84",
                        "nodeType": "YulFunctionCall",
                        "src": "10942:20:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "10930:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "10930:6:84"
                    },
                    "nativeSrc": "10930:33:84",
                    "nodeType": "YulFunctionCall",
                    "src": "10930:33:84"
                  },
                  "nativeSrc": "10930:33:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "10930:33:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "pos",
                            "nativeSrc": "10983:3:84",
                            "nodeType": "YulIdentifier",
                            "src": "10983:3:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "10988:4:84",
                            "nodeType": "YulLiteral",
                            "src": "10988:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "10979:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "10979:3:84"
                        },
                        "nativeSrc": "10979:14:84",
                        "nodeType": "YulFunctionCall",
                        "src": "10979:14:84"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "11003:1:84",
                                "nodeType": "YulLiteral",
                                "src": "11003:1:84",
                                "type": "",
                                "value": "8"
                              },
                              {
                                "name": "slotValue",
                                "nativeSrc": "11006:9:84",
                                "nodeType": "YulIdentifier",
                                "src": "11006:9:84"
                              }
                            ],
                            "functionName": {
                              "name": "shr",
                              "nativeSrc": "10999:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "10999:3:84"
                            },
                            "nativeSrc": "10999:17:84",
                            "nodeType": "YulFunctionCall",
                            "src": "10999:17:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "11018:18:84",
                            "nodeType": "YulLiteral",
                            "src": "11018:18:84",
                            "type": "",
                            "value": "0xffffffffffffffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "10995:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "10995:3:84"
                        },
                        "nativeSrc": "10995:42:84",
                        "nodeType": "YulFunctionCall",
                        "src": "10995:42:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "10972:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "10972:6:84"
                    },
                    "nativeSrc": "10972:66:84",
                    "nodeType": "YulFunctionCall",
                    "src": "10972:66:84"
                  },
                  "nativeSrc": "10972:66:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "10972:66:84"
                }
              ]
            },
            "name": "abi_encode_struct_RadonSLA_storage",
            "nativeSrc": "10822:222:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "value",
                "nativeSrc": "10866:5:84",
                "nodeType": "YulTypedName",
                "src": "10866:5:84",
                "type": ""
              },
              {
                "name": "pos",
                "nativeSrc": "10873:3:84",
                "nodeType": "YulTypedName",
                "src": "10873:3:84",
                "type": ""
              }
            ],
            "src": "10822:222:84"
          },
          {
            "body": {
              "nativeSrc": "11229:147:84",
              "nodeType": "YulBlock",
              "src": "11229:147:84",
              "statements": [
                {
                  "nativeSrc": "11239:26:84",
                  "nodeType": "YulAssignment",
                  "src": "11239:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "11251:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "11251:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "11262:2:84",
                        "nodeType": "YulLiteral",
                        "src": "11262:2:84",
                        "type": "",
                        "value": "96"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "11247:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "11247:3:84"
                    },
                    "nativeSrc": "11247:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "11247:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "11239:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "11239:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "11281:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "11281:9:84"
                      },
                      {
                        "name": "value0",
                        "nativeSrc": "11292:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "11292:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "11274:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "11274:6:84"
                    },
                    "nativeSrc": "11274:25:84",
                    "nodeType": "YulFunctionCall",
                    "src": "11274:25:84"
                  },
                  "nativeSrc": "11274:25:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "11274:25:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value1",
                        "nativeSrc": "11343:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "11343:6:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "11355:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "11355:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "11366:2:84",
                            "nodeType": "YulLiteral",
                            "src": "11366:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "11351:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "11351:3:84"
                        },
                        "nativeSrc": "11351:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "11351:18:84"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_struct_RadonSLA_storage",
                      "nativeSrc": "11308:34:84",
                      "nodeType": "YulIdentifier",
                      "src": "11308:34:84"
                    },
                    "nativeSrc": "11308:62:84",
                    "nodeType": "YulFunctionCall",
                    "src": "11308:62:84"
                  },
                  "nativeSrc": "11308:62:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "11308:62:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_bytes32_t_struct$_RadonSLA_$23503_storage__to_t_bytes32_t_struct$_RadonSLA_$23503_memory_ptr__fromStack_reversed",
            "nativeSrc": "11049:327:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "11190:9:84",
                "nodeType": "YulTypedName",
                "src": "11190:9:84",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "11201:6:84",
                "nodeType": "YulTypedName",
                "src": "11201:6:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "11209:6:84",
                "nodeType": "YulTypedName",
                "src": "11209:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "11220:4:84",
                "nodeType": "YulTypedName",
                "src": "11220:4:84",
                "type": ""
              }
            ],
            "src": "11049:327:84"
          },
          {
            "body": {
              "nativeSrc": "11462:103:84",
              "nodeType": "YulBlock",
              "src": "11462:103:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "11508:16:84",
                    "nodeType": "YulBlock",
                    "src": "11508:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "11517:1:84",
                              "nodeType": "YulLiteral",
                              "src": "11517:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "11520:1:84",
                              "nodeType": "YulLiteral",
                              "src": "11520:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "11510:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "11510:6:84"
                          },
                          "nativeSrc": "11510:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "11510:12:84"
                        },
                        "nativeSrc": "11510:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "11510:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "11483:7:84",
                            "nodeType": "YulIdentifier",
                            "src": "11483:7:84"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "11492:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "11492:9:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "11479:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "11479:3:84"
                        },
                        "nativeSrc": "11479:23:84",
                        "nodeType": "YulFunctionCall",
                        "src": "11479:23:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "11504:2:84",
                        "nodeType": "YulLiteral",
                        "src": "11504:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "11475:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "11475:3:84"
                    },
                    "nativeSrc": "11475:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "11475:32:84"
                  },
                  "nativeSrc": "11472:52:84",
                  "nodeType": "YulIf",
                  "src": "11472:52:84"
                },
                {
                  "nativeSrc": "11533:26:84",
                  "nodeType": "YulAssignment",
                  "src": "11533:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "11549:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "11549:9:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "11543:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "11543:5:84"
                    },
                    "nativeSrc": "11543:16:84",
                    "nodeType": "YulFunctionCall",
                    "src": "11543:16:84"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "11533:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "11533:6:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_uint256_fromMemory",
            "nativeSrc": "11381:184:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "11428:9:84",
                "nodeType": "YulTypedName",
                "src": "11428:9:84",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "11439:7:84",
                "nodeType": "YulTypedName",
                "src": "11439:7:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "11451:6:84",
                "nodeType": "YulTypedName",
                "src": "11451:6:84",
                "type": ""
              }
            ],
            "src": "11381:184:84"
          },
          {
            "body": {
              "nativeSrc": "11834:278:84",
              "nodeType": "YulBlock",
              "src": "11834:278:84",
              "statements": [
                {
                  "nativeSrc": "11844:27:84",
                  "nodeType": "YulAssignment",
                  "src": "11844:27:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "11856:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "11856:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "11867:3:84",
                        "nodeType": "YulLiteral",
                        "src": "11867:3:84",
                        "type": "",
                        "value": "192"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "11852:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "11852:3:84"
                    },
                    "nativeSrc": "11852:19:84",
                    "nodeType": "YulFunctionCall",
                    "src": "11852:19:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "11844:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "11844:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "11887:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "11887:9:84"
                      },
                      {
                        "name": "value0",
                        "nativeSrc": "11898:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "11898:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "11880:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "11880:6:84"
                    },
                    "nativeSrc": "11880:25:84",
                    "nodeType": "YulFunctionCall",
                    "src": "11880:25:84"
                  },
                  "nativeSrc": "11880:25:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "11880:25:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "11925:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "11925:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "11936:2:84",
                            "nodeType": "YulLiteral",
                            "src": "11936:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "11921:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "11921:3:84"
                        },
                        "nativeSrc": "11921:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "11921:18:84"
                      },
                      {
                        "name": "value1",
                        "nativeSrc": "11941:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "11941:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "11914:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "11914:6:84"
                    },
                    "nativeSrc": "11914:34:84",
                    "nodeType": "YulFunctionCall",
                    "src": "11914:34:84"
                  },
                  "nativeSrc": "11914:34:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "11914:34:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "11968:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "11968:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "11979:2:84",
                            "nodeType": "YulLiteral",
                            "src": "11979:2:84",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "11964:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "11964:3:84"
                        },
                        "nativeSrc": "11964:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "11964:18:84"
                      },
                      {
                        "name": "value2",
                        "nativeSrc": "11984:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "11984:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "11957:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "11957:6:84"
                    },
                    "nativeSrc": "11957:34:84",
                    "nodeType": "YulFunctionCall",
                    "src": "11957:34:84"
                  },
                  "nativeSrc": "11957:34:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "11957:34:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "12011:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "12011:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "12022:2:84",
                            "nodeType": "YulLiteral",
                            "src": "12022:2:84",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "12007:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "12007:3:84"
                        },
                        "nativeSrc": "12007:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "12007:18:84"
                      },
                      {
                        "name": "value3",
                        "nativeSrc": "12027:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "12027:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "12000:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "12000:6:84"
                    },
                    "nativeSrc": "12000:34:84",
                    "nodeType": "YulFunctionCall",
                    "src": "12000:34:84"
                  },
                  "nativeSrc": "12000:34:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "12000:34:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value4",
                        "nativeSrc": "12078:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "12078:6:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "12090:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "12090:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "12101:3:84",
                            "nodeType": "YulLiteral",
                            "src": "12101:3:84",
                            "type": "",
                            "value": "128"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "12086:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "12086:3:84"
                        },
                        "nativeSrc": "12086:19:84",
                        "nodeType": "YulFunctionCall",
                        "src": "12086:19:84"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_struct_RadonSLA_storage",
                      "nativeSrc": "12043:34:84",
                      "nodeType": "YulIdentifier",
                      "src": "12043:34:84"
                    },
                    "nativeSrc": "12043:63:84",
                    "nodeType": "YulFunctionCall",
                    "src": "12043:63:84"
                  },
                  "nativeSrc": "12043:63:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "12043:63:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint256_t_uint256_t_uint256_t_uint256_t_struct$_RadonSLA_$23503_storage__to_t_uint256_t_uint256_t_uint256_t_uint256_t_struct$_RadonSLA_$23503_memory_ptr__fromStack_reversed",
            "nativeSrc": "11570:542:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "11771:9:84",
                "nodeType": "YulTypedName",
                "src": "11771:9:84",
                "type": ""
              },
              {
                "name": "value4",
                "nativeSrc": "11782:6:84",
                "nodeType": "YulTypedName",
                "src": "11782:6:84",
                "type": ""
              },
              {
                "name": "value3",
                "nativeSrc": "11790:6:84",
                "nodeType": "YulTypedName",
                "src": "11790:6:84",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "11798:6:84",
                "nodeType": "YulTypedName",
                "src": "11798:6:84",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "11806:6:84",
                "nodeType": "YulTypedName",
                "src": "11806:6:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "11814:6:84",
                "nodeType": "YulTypedName",
                "src": "11814:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "11825:4:84",
                "nodeType": "YulTypedName",
                "src": "11825:4:84",
                "type": ""
              }
            ],
            "src": "11570:542:84"
          },
          {
            "body": {
              "nativeSrc": "12166:79:84",
              "nodeType": "YulBlock",
              "src": "12166:79:84",
              "statements": [
                {
                  "nativeSrc": "12176:17:84",
                  "nodeType": "YulAssignment",
                  "src": "12176:17:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "x",
                        "nativeSrc": "12188:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "12188:1:84"
                      },
                      {
                        "name": "y",
                        "nativeSrc": "12191:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "12191:1:84"
                      }
                    ],
                    "functionName": {
                      "name": "sub",
                      "nativeSrc": "12184:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "12184:3:84"
                    },
                    "nativeSrc": "12184:9:84",
                    "nodeType": "YulFunctionCall",
                    "src": "12184:9:84"
                  },
                  "variableNames": [
                    {
                      "name": "diff",
                      "nativeSrc": "12176:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "12176:4:84"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "12217:22:84",
                    "nodeType": "YulBlock",
                    "src": "12217:22:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x11",
                            "nativeSrc": "12219:16:84",
                            "nodeType": "YulIdentifier",
                            "src": "12219:16:84"
                          },
                          "nativeSrc": "12219:18:84",
                          "nodeType": "YulFunctionCall",
                          "src": "12219:18:84"
                        },
                        "nativeSrc": "12219:18:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "12219:18:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "diff",
                        "nativeSrc": "12208:4:84",
                        "nodeType": "YulIdentifier",
                        "src": "12208:4:84"
                      },
                      {
                        "name": "x",
                        "nativeSrc": "12214:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "12214:1:84"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "12205:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "12205:2:84"
                    },
                    "nativeSrc": "12205:11:84",
                    "nodeType": "YulFunctionCall",
                    "src": "12205:11:84"
                  },
                  "nativeSrc": "12202:37:84",
                  "nodeType": "YulIf",
                  "src": "12202:37:84"
                }
              ]
            },
            "name": "checked_sub_t_uint256",
            "nativeSrc": "12117:128:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "x",
                "nativeSrc": "12148:1:84",
                "nodeType": "YulTypedName",
                "src": "12148:1:84",
                "type": ""
              },
              {
                "name": "y",
                "nativeSrc": "12151:1:84",
                "nodeType": "YulTypedName",
                "src": "12151:1:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "diff",
                "nativeSrc": "12157:4:84",
                "nodeType": "YulTypedName",
                "src": "12157:4:84",
                "type": ""
              }
            ],
            "src": "12117:128:84"
          },
          {
            "body": {
              "nativeSrc": "12379:119:84",
              "nodeType": "YulBlock",
              "src": "12379:119:84",
              "statements": [
                {
                  "nativeSrc": "12389:26:84",
                  "nodeType": "YulAssignment",
                  "src": "12389:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "12401:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "12401:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "12412:2:84",
                        "nodeType": "YulLiteral",
                        "src": "12412:2:84",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "12397:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "12397:3:84"
                    },
                    "nativeSrc": "12397:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "12397:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "12389:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "12389:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "12431:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "12431:9:84"
                      },
                      {
                        "name": "value0",
                        "nativeSrc": "12442:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "12442:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "12424:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "12424:6:84"
                    },
                    "nativeSrc": "12424:25:84",
                    "nodeType": "YulFunctionCall",
                    "src": "12424:25:84"
                  },
                  "nativeSrc": "12424:25:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "12424:25:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "12469:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "12469:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "12480:2:84",
                            "nodeType": "YulLiteral",
                            "src": "12480:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "12465:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "12465:3:84"
                        },
                        "nativeSrc": "12465:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "12465:18:84"
                      },
                      {
                        "name": "value1",
                        "nativeSrc": "12485:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "12485:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "12458:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "12458:6:84"
                    },
                    "nativeSrc": "12458:34:84",
                    "nodeType": "YulFunctionCall",
                    "src": "12458:34:84"
                  },
                  "nativeSrc": "12458:34:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "12458:34:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint256_t_bytes32__to_t_uint256_t_bytes32__fromStack_reversed",
            "nativeSrc": "12250:248:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "12340:9:84",
                "nodeType": "YulTypedName",
                "src": "12340:9:84",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "12351:6:84",
                "nodeType": "YulTypedName",
                "src": "12351:6:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "12359:6:84",
                "nodeType": "YulTypedName",
                "src": "12359:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "12370:4:84",
                "nodeType": "YulTypedName",
                "src": "12370:4:84",
                "type": ""
              }
            ],
            "src": "12250:248:84"
          },
          {
            "body": {
              "nativeSrc": "12630:132:84",
              "nodeType": "YulBlock",
              "src": "12630:132:84",
              "statements": [
                {
                  "nativeSrc": "12640:26:84",
                  "nodeType": "YulAssignment",
                  "src": "12640:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "12652:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "12652:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "12663:2:84",
                        "nodeType": "YulLiteral",
                        "src": "12663:2:84",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "12648:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "12648:3:84"
                    },
                    "nativeSrc": "12648:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "12648:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "12640:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "12640:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "12682:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "12682:9:84"
                      },
                      {
                        "name": "value0",
                        "nativeSrc": "12693:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "12693:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "12675:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "12675:6:84"
                    },
                    "nativeSrc": "12675:25:84",
                    "nodeType": "YulFunctionCall",
                    "src": "12675:25:84"
                  },
                  "nativeSrc": "12675:25:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "12675:25:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "12720:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "12720:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "12731:2:84",
                            "nodeType": "YulLiteral",
                            "src": "12731:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "12716:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "12716:3:84"
                        },
                        "nativeSrc": "12716:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "12716:18:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value1",
                            "nativeSrc": "12740:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "12740:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "12748:6:84",
                            "nodeType": "YulLiteral",
                            "src": "12748:6:84",
                            "type": "",
                            "value": "0xffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "12736:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "12736:3:84"
                        },
                        "nativeSrc": "12736:19:84",
                        "nodeType": "YulFunctionCall",
                        "src": "12736:19:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "12709:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "12709:6:84"
                    },
                    "nativeSrc": "12709:47:84",
                    "nodeType": "YulFunctionCall",
                    "src": "12709:47:84"
                  },
                  "nativeSrc": "12709:47:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "12709:47:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint256_t_uint16__to_t_uint256_t_uint16__fromStack_reversed",
            "nativeSrc": "12503:259:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "12591:9:84",
                "nodeType": "YulTypedName",
                "src": "12591:9:84",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "12602:6:84",
                "nodeType": "YulTypedName",
                "src": "12602:6:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "12610:6:84",
                "nodeType": "YulTypedName",
                "src": "12610:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "12621:4:84",
                "nodeType": "YulTypedName",
                "src": "12621:4:84",
                "type": ""
              }
            ],
            "src": "12503:259:84"
          },
          {
            "body": {
              "nativeSrc": "12814:121:84",
              "nodeType": "YulBlock",
              "src": "12814:121:84",
              "statements": [
                {
                  "nativeSrc": "12824:16:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "12824:16:84",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "12834:6:84",
                    "nodeType": "YulLiteral",
                    "src": "12834:6:84",
                    "type": "",
                    "value": "0xffff"
                  },
                  "variables": [
                    {
                      "name": "_1",
                      "nativeSrc": "12828:2:84",
                      "nodeType": "YulTypedName",
                      "src": "12828:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "12849:34:84",
                  "nodeType": "YulAssignment",
                  "src": "12849:34:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "x",
                            "nativeSrc": "12864:1:84",
                            "nodeType": "YulIdentifier",
                            "src": "12864:1:84"
                          },
                          {
                            "name": "_1",
                            "nativeSrc": "12867:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "12867:2:84"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "12860:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "12860:3:84"
                        },
                        "nativeSrc": "12860:10:84",
                        "nodeType": "YulFunctionCall",
                        "src": "12860:10:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "y",
                            "nativeSrc": "12876:1:84",
                            "nodeType": "YulIdentifier",
                            "src": "12876:1:84"
                          },
                          {
                            "name": "_1",
                            "nativeSrc": "12879:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "12879:2:84"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "12872:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "12872:3:84"
                        },
                        "nativeSrc": "12872:10:84",
                        "nodeType": "YulFunctionCall",
                        "src": "12872:10:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "12856:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "12856:3:84"
                    },
                    "nativeSrc": "12856:27:84",
                    "nodeType": "YulFunctionCall",
                    "src": "12856:27:84"
                  },
                  "variableNames": [
                    {
                      "name": "sum",
                      "nativeSrc": "12849:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "12849:3:84"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "12907:22:84",
                    "nodeType": "YulBlock",
                    "src": "12907:22:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x11",
                            "nativeSrc": "12909:16:84",
                            "nodeType": "YulIdentifier",
                            "src": "12909:16:84"
                          },
                          "nativeSrc": "12909:18:84",
                          "nodeType": "YulFunctionCall",
                          "src": "12909:18:84"
                        },
                        "nativeSrc": "12909:18:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "12909:18:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "sum",
                        "nativeSrc": "12898:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "12898:3:84"
                      },
                      {
                        "name": "_1",
                        "nativeSrc": "12903:2:84",
                        "nodeType": "YulIdentifier",
                        "src": "12903:2:84"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "12895:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "12895:2:84"
                    },
                    "nativeSrc": "12895:11:84",
                    "nodeType": "YulFunctionCall",
                    "src": "12895:11:84"
                  },
                  "nativeSrc": "12892:37:84",
                  "nodeType": "YulIf",
                  "src": "12892:37:84"
                }
              ]
            },
            "name": "checked_add_t_uint16",
            "nativeSrc": "12767:168:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "x",
                "nativeSrc": "12797:1:84",
                "nodeType": "YulTypedName",
                "src": "12797:1:84",
                "type": ""
              },
              {
                "name": "y",
                "nativeSrc": "12800:1:84",
                "nodeType": "YulTypedName",
                "src": "12800:1:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "sum",
                "nativeSrc": "12806:3:84",
                "nodeType": "YulTypedName",
                "src": "12806:3:84",
                "type": ""
              }
            ],
            "src": "12767:168:84"
          },
          {
            "body": {
              "nativeSrc": "12992:116:84",
              "nodeType": "YulBlock",
              "src": "12992:116:84",
              "statements": [
                {
                  "nativeSrc": "13002:20:84",
                  "nodeType": "YulAssignment",
                  "src": "13002:20:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "x",
                        "nativeSrc": "13017:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "13017:1:84"
                      },
                      {
                        "name": "y",
                        "nativeSrc": "13020:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "13020:1:84"
                      }
                    ],
                    "functionName": {
                      "name": "mul",
                      "nativeSrc": "13013:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "13013:3:84"
                    },
                    "nativeSrc": "13013:9:84",
                    "nodeType": "YulFunctionCall",
                    "src": "13013:9:84"
                  },
                  "variableNames": [
                    {
                      "name": "product",
                      "nativeSrc": "13002:7:84",
                      "nodeType": "YulIdentifier",
                      "src": "13002:7:84"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "13080:22:84",
                    "nodeType": "YulBlock",
                    "src": "13080:22:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x11",
                            "nativeSrc": "13082:16:84",
                            "nodeType": "YulIdentifier",
                            "src": "13082:16:84"
                          },
                          "nativeSrc": "13082:18:84",
                          "nodeType": "YulFunctionCall",
                          "src": "13082:18:84"
                        },
                        "nativeSrc": "13082:18:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "13082:18:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "x",
                                "nativeSrc": "13051:1:84",
                                "nodeType": "YulIdentifier",
                                "src": "13051:1:84"
                              }
                            ],
                            "functionName": {
                              "name": "iszero",
                              "nativeSrc": "13044:6:84",
                              "nodeType": "YulIdentifier",
                              "src": "13044:6:84"
                            },
                            "nativeSrc": "13044:9:84",
                            "nodeType": "YulFunctionCall",
                            "src": "13044:9:84"
                          },
                          {
                            "arguments": [
                              {
                                "name": "y",
                                "nativeSrc": "13058:1:84",
                                "nodeType": "YulIdentifier",
                                "src": "13058:1:84"
                              },
                              {
                                "arguments": [
                                  {
                                    "name": "product",
                                    "nativeSrc": "13065:7:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "13065:7:84"
                                  },
                                  {
                                    "name": "x",
                                    "nativeSrc": "13074:1:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "13074:1:84"
                                  }
                                ],
                                "functionName": {
                                  "name": "div",
                                  "nativeSrc": "13061:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "13061:3:84"
                                },
                                "nativeSrc": "13061:15:84",
                                "nodeType": "YulFunctionCall",
                                "src": "13061:15:84"
                              }
                            ],
                            "functionName": {
                              "name": "eq",
                              "nativeSrc": "13055:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "13055:2:84"
                            },
                            "nativeSrc": "13055:22:84",
                            "nodeType": "YulFunctionCall",
                            "src": "13055:22:84"
                          }
                        ],
                        "functionName": {
                          "name": "or",
                          "nativeSrc": "13041:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "13041:2:84"
                        },
                        "nativeSrc": "13041:37:84",
                        "nodeType": "YulFunctionCall",
                        "src": "13041:37:84"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "13034:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "13034:6:84"
                    },
                    "nativeSrc": "13034:45:84",
                    "nodeType": "YulFunctionCall",
                    "src": "13034:45:84"
                  },
                  "nativeSrc": "13031:71:84",
                  "nodeType": "YulIf",
                  "src": "13031:71:84"
                }
              ]
            },
            "name": "checked_mul_t_uint256",
            "nativeSrc": "12940:168:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "x",
                "nativeSrc": "12971:1:84",
                "nodeType": "YulTypedName",
                "src": "12971:1:84",
                "type": ""
              },
              {
                "name": "y",
                "nativeSrc": "12974:1:84",
                "nodeType": "YulTypedName",
                "src": "12974:1:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "product",
                "nativeSrc": "12980:7:84",
                "nodeType": "YulTypedName",
                "src": "12980:7:84",
                "type": ""
              }
            ],
            "src": "12940:168:84"
          },
          {
            "body": {
              "nativeSrc": "13159:74:84",
              "nodeType": "YulBlock",
              "src": "13159:74:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "13182:22:84",
                    "nodeType": "YulBlock",
                    "src": "13182:22:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x12",
                            "nativeSrc": "13184:16:84",
                            "nodeType": "YulIdentifier",
                            "src": "13184:16:84"
                          },
                          "nativeSrc": "13184:18:84",
                          "nodeType": "YulFunctionCall",
                          "src": "13184:18:84"
                        },
                        "nativeSrc": "13184:18:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "13184:18:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "y",
                        "nativeSrc": "13179:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "13179:1:84"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "13172:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "13172:6:84"
                    },
                    "nativeSrc": "13172:9:84",
                    "nodeType": "YulFunctionCall",
                    "src": "13172:9:84"
                  },
                  "nativeSrc": "13169:35:84",
                  "nodeType": "YulIf",
                  "src": "13169:35:84"
                },
                {
                  "nativeSrc": "13213:14:84",
                  "nodeType": "YulAssignment",
                  "src": "13213:14:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "x",
                        "nativeSrc": "13222:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "13222:1:84"
                      },
                      {
                        "name": "y",
                        "nativeSrc": "13225:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "13225:1:84"
                      }
                    ],
                    "functionName": {
                      "name": "div",
                      "nativeSrc": "13218:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "13218:3:84"
                    },
                    "nativeSrc": "13218:9:84",
                    "nodeType": "YulFunctionCall",
                    "src": "13218:9:84"
                  },
                  "variableNames": [
                    {
                      "name": "r",
                      "nativeSrc": "13213:1:84",
                      "nodeType": "YulIdentifier",
                      "src": "13213:1:84"
                    }
                  ]
                }
              ]
            },
            "name": "checked_div_t_uint256",
            "nativeSrc": "13113:120:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "x",
                "nativeSrc": "13144:1:84",
                "nodeType": "YulTypedName",
                "src": "13144:1:84",
                "type": ""
              },
              {
                "name": "y",
                "nativeSrc": "13147:1:84",
                "nodeType": "YulTypedName",
                "src": "13147:1:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "r",
                "nativeSrc": "13153:1:84",
                "nodeType": "YulTypedName",
                "src": "13153:1:84",
                "type": ""
              }
            ],
            "src": "13113:120:84"
          },
          {
            "body": {
              "nativeSrc": "13270:95:84",
              "nodeType": "YulBlock",
              "src": "13270:95:84",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "13287:1:84",
                        "nodeType": "YulLiteral",
                        "src": "13287:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "13294:3:84",
                            "nodeType": "YulLiteral",
                            "src": "13294:3:84",
                            "type": "",
                            "value": "224"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "13299:10:84",
                            "nodeType": "YulLiteral",
                            "src": "13299:10:84",
                            "type": "",
                            "value": "0x4e487b71"
                          }
                        ],
                        "functionName": {
                          "name": "shl",
                          "nativeSrc": "13290:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "13290:3:84"
                        },
                        "nativeSrc": "13290:20:84",
                        "nodeType": "YulFunctionCall",
                        "src": "13290:20:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "13280:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "13280:6:84"
                    },
                    "nativeSrc": "13280:31:84",
                    "nodeType": "YulFunctionCall",
                    "src": "13280:31:84"
                  },
                  "nativeSrc": "13280:31:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "13280:31:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "13327:1:84",
                        "nodeType": "YulLiteral",
                        "src": "13327:1:84",
                        "type": "",
                        "value": "4"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "13330:4:84",
                        "nodeType": "YulLiteral",
                        "src": "13330:4:84",
                        "type": "",
                        "value": "0x01"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "13320:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "13320:6:84"
                    },
                    "nativeSrc": "13320:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "13320:15:84"
                  },
                  "nativeSrc": "13320:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "13320:15:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "13351:1:84",
                        "nodeType": "YulLiteral",
                        "src": "13351:1:84",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "13354:4:84",
                        "nodeType": "YulLiteral",
                        "src": "13354:4:84",
                        "type": "",
                        "value": "0x24"
                      }
                    ],
                    "functionName": {
                      "name": "revert",
                      "nativeSrc": "13344:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "13344:6:84"
                    },
                    "nativeSrc": "13344:15:84",
                    "nodeType": "YulFunctionCall",
                    "src": "13344:15:84"
                  },
                  "nativeSrc": "13344:15:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "13344:15:84"
                }
              ]
            },
            "name": "panic_error_0x01",
            "nativeSrc": "13238:127:84",
            "nodeType": "YulFunctionDefinition",
            "src": "13238:127:84"
          },
          {
            "body": {
              "nativeSrc": "13413:71:84",
              "nodeType": "YulBlock",
              "src": "13413:71:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "13462:16:84",
                    "nodeType": "YulBlock",
                    "src": "13462:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "13471:1:84",
                              "nodeType": "YulLiteral",
                              "src": "13471:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "13474:1:84",
                              "nodeType": "YulLiteral",
                              "src": "13474:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "13464:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "13464:6:84"
                          },
                          "nativeSrc": "13464:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "13464:12:84"
                        },
                        "nativeSrc": "13464:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "13464:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "13436:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "13436:5:84"
                          },
                          {
                            "arguments": [
                              {
                                "name": "value",
                                "nativeSrc": "13447:5:84",
                                "nodeType": "YulIdentifier",
                                "src": "13447:5:84"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "13454:4:84",
                                "nodeType": "YulLiteral",
                                "src": "13454:4:84",
                                "type": "",
                                "value": "0xff"
                              }
                            ],
                            "functionName": {
                              "name": "and",
                              "nativeSrc": "13443:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "13443:3:84"
                            },
                            "nativeSrc": "13443:16:84",
                            "nodeType": "YulFunctionCall",
                            "src": "13443:16:84"
                          }
                        ],
                        "functionName": {
                          "name": "eq",
                          "nativeSrc": "13433:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "13433:2:84"
                        },
                        "nativeSrc": "13433:27:84",
                        "nodeType": "YulFunctionCall",
                        "src": "13433:27:84"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "13426:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "13426:6:84"
                    },
                    "nativeSrc": "13426:35:84",
                    "nodeType": "YulFunctionCall",
                    "src": "13426:35:84"
                  },
                  "nativeSrc": "13423:55:84",
                  "nodeType": "YulIf",
                  "src": "13423:55:84"
                }
              ]
            },
            "name": "validator_revert_uint8",
            "nativeSrc": "13370:114:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "value",
                "nativeSrc": "13402:5:84",
                "nodeType": "YulTypedName",
                "src": "13402:5:84",
                "type": ""
              }
            ],
            "src": "13370:114:84"
          },
          {
            "body": {
              "nativeSrc": "13620:411:84",
              "nodeType": "YulBlock",
              "src": "13620:411:84",
              "statements": [
                {
                  "nativeSrc": "13630:34:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "13630:34:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "13658:5:84",
                        "nodeType": "YulIdentifier",
                        "src": "13658:5:84"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "13645:12:84",
                      "nodeType": "YulIdentifier",
                      "src": "13645:12:84"
                    },
                    "nativeSrc": "13645:19:84",
                    "nodeType": "YulFunctionCall",
                    "src": "13645:19:84"
                  },
                  "variables": [
                    {
                      "name": "value_1",
                      "nativeSrc": "13634:7:84",
                      "nodeType": "YulTypedName",
                      "src": "13634:7:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value_1",
                        "nativeSrc": "13696:7:84",
                        "nodeType": "YulIdentifier",
                        "src": "13696:7:84"
                      }
                    ],
                    "functionName": {
                      "name": "validator_revert_uint8",
                      "nativeSrc": "13673:22:84",
                      "nodeType": "YulIdentifier",
                      "src": "13673:22:84"
                    },
                    "nativeSrc": "13673:31:84",
                    "nodeType": "YulFunctionCall",
                    "src": "13673:31:84"
                  },
                  "nativeSrc": "13673:31:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "13673:31:84"
                },
                {
                  "nativeSrc": "13713:28:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "13713:28:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value_1",
                        "nativeSrc": "13727:7:84",
                        "nodeType": "YulIdentifier",
                        "src": "13727:7:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "13736:4:84",
                        "nodeType": "YulLiteral",
                        "src": "13736:4:84",
                        "type": "",
                        "value": "0xff"
                      }
                    ],
                    "functionName": {
                      "name": "and",
                      "nativeSrc": "13723:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "13723:3:84"
                    },
                    "nativeSrc": "13723:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "13723:18:84"
                  },
                  "variables": [
                    {
                      "name": "_1",
                      "nativeSrc": "13717:2:84",
                      "nodeType": "YulTypedName",
                      "src": "13717:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "13750:21:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "13750:21:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "slot",
                        "nativeSrc": "13766:4:84",
                        "nodeType": "YulIdentifier",
                        "src": "13766:4:84"
                      }
                    ],
                    "functionName": {
                      "name": "sload",
                      "nativeSrc": "13760:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "13760:5:84"
                    },
                    "nativeSrc": "13760:11:84",
                    "nodeType": "YulFunctionCall",
                    "src": "13760:11:84"
                  },
                  "variables": [
                    {
                      "name": "_2",
                      "nativeSrc": "13754:2:84",
                      "nodeType": "YulTypedName",
                      "src": "13754:2:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "slot",
                        "nativeSrc": "13787:4:84",
                        "nodeType": "YulIdentifier",
                        "src": "13787:4:84"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "_2",
                                "nativeSrc": "13800:2:84",
                                "nodeType": "YulIdentifier",
                                "src": "13800:2:84"
                              },
                              {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "13808:3:84",
                                    "nodeType": "YulLiteral",
                                    "src": "13808:3:84",
                                    "type": "",
                                    "value": "255"
                                  }
                                ],
                                "functionName": {
                                  "name": "not",
                                  "nativeSrc": "13804:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "13804:3:84"
                                },
                                "nativeSrc": "13804:8:84",
                                "nodeType": "YulFunctionCall",
                                "src": "13804:8:84"
                              }
                            ],
                            "functionName": {
                              "name": "and",
                              "nativeSrc": "13796:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "13796:3:84"
                            },
                            "nativeSrc": "13796:17:84",
                            "nodeType": "YulFunctionCall",
                            "src": "13796:17:84"
                          },
                          {
                            "name": "_1",
                            "nativeSrc": "13815:2:84",
                            "nodeType": "YulIdentifier",
                            "src": "13815:2:84"
                          }
                        ],
                        "functionName": {
                          "name": "or",
                          "nativeSrc": "13793:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "13793:2:84"
                        },
                        "nativeSrc": "13793:25:84",
                        "nodeType": "YulFunctionCall",
                        "src": "13793:25:84"
                      }
                    ],
                    "functionName": {
                      "name": "sstore",
                      "nativeSrc": "13780:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "13780:6:84"
                    },
                    "nativeSrc": "13780:39:84",
                    "nodeType": "YulFunctionCall",
                    "src": "13780:39:84"
                  },
                  "nativeSrc": "13780:39:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "13780:39:84"
                },
                {
                  "nativeSrc": "13828:43:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "13828:43:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "13860:5:84",
                            "nodeType": "YulIdentifier",
                            "src": "13860:5:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "13867:2:84",
                            "nodeType": "YulLiteral",
                            "src": "13867:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "13856:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "13856:3:84"
                        },
                        "nativeSrc": "13856:14:84",
                        "nodeType": "YulFunctionCall",
                        "src": "13856:14:84"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "13843:12:84",
                      "nodeType": "YulIdentifier",
                      "src": "13843:12:84"
                    },
                    "nativeSrc": "13843:28:84",
                    "nodeType": "YulFunctionCall",
                    "src": "13843:28:84"
                  },
                  "variables": [
                    {
                      "name": "value_2",
                      "nativeSrc": "13832:7:84",
                      "nodeType": "YulTypedName",
                      "src": "13832:7:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value_2",
                        "nativeSrc": "13904:7:84",
                        "nodeType": "YulIdentifier",
                        "src": "13904:7:84"
                      }
                    ],
                    "functionName": {
                      "name": "validator_revert_uint64",
                      "nativeSrc": "13880:23:84",
                      "nodeType": "YulIdentifier",
                      "src": "13880:23:84"
                    },
                    "nativeSrc": "13880:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "13880:32:84"
                  },
                  "nativeSrc": "13880:32:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "13880:32:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "slot",
                        "nativeSrc": "13928:4:84",
                        "nodeType": "YulIdentifier",
                        "src": "13928:4:84"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "name": "_2",
                                    "nativeSrc": "13944:2:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "13944:2:84"
                                  },
                                  {
                                    "arguments": [
                                      {
                                        "kind": "number",
                                        "nativeSrc": "13952:20:84",
                                        "nodeType": "YulLiteral",
                                        "src": "13952:20:84",
                                        "type": "",
                                        "value": "0xffffffffffffffffff"
                                      }
                                    ],
                                    "functionName": {
                                      "name": "not",
                                      "nativeSrc": "13948:3:84",
                                      "nodeType": "YulIdentifier",
                                      "src": "13948:3:84"
                                    },
                                    "nativeSrc": "13948:25:84",
                                    "nodeType": "YulFunctionCall",
                                    "src": "13948:25:84"
                                  }
                                ],
                                "functionName": {
                                  "name": "and",
                                  "nativeSrc": "13940:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "13940:3:84"
                                },
                                "nativeSrc": "13940:34:84",
                                "nodeType": "YulFunctionCall",
                                "src": "13940:34:84"
                              },
                              {
                                "name": "_1",
                                "nativeSrc": "13976:2:84",
                                "nodeType": "YulIdentifier",
                                "src": "13976:2:84"
                              }
                            ],
                            "functionName": {
                              "name": "or",
                              "nativeSrc": "13937:2:84",
                              "nodeType": "YulIdentifier",
                              "src": "13937:2:84"
                            },
                            "nativeSrc": "13937:42:84",
                            "nodeType": "YulFunctionCall",
                            "src": "13937:42:84"
                          },
                          {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "13989:1:84",
                                    "nodeType": "YulLiteral",
                                    "src": "13989:1:84",
                                    "type": "",
                                    "value": "8"
                                  },
                                  {
                                    "name": "value_2",
                                    "nativeSrc": "13992:7:84",
                                    "nodeType": "YulIdentifier",
                                    "src": "13992:7:84"
                                  }
                                ],
                                "functionName": {
                                  "name": "shl",
                                  "nativeSrc": "13985:3:84",
                                  "nodeType": "YulIdentifier",
                                  "src": "13985:3:84"
                                },
                                "nativeSrc": "13985:15:84",
                                "nodeType": "YulFunctionCall",
                                "src": "13985:15:84"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "14002:20:84",
                                "nodeType": "YulLiteral",
                                "src": "14002:20:84",
                                "type": "",
                                "value": "0xffffffffffffffff00"
                              }
                            ],
                            "functionName": {
                              "name": "and",
                              "nativeSrc": "13981:3:84",
                              "nodeType": "YulIdentifier",
                              "src": "13981:3:84"
                            },
                            "nativeSrc": "13981:42:84",
                            "nodeType": "YulFunctionCall",
                            "src": "13981:42:84"
                          }
                        ],
                        "functionName": {
                          "name": "or",
                          "nativeSrc": "13934:2:84",
                          "nodeType": "YulIdentifier",
                          "src": "13934:2:84"
                        },
                        "nativeSrc": "13934:90:84",
                        "nodeType": "YulFunctionCall",
                        "src": "13934:90:84"
                      }
                    ],
                    "functionName": {
                      "name": "sstore",
                      "nativeSrc": "13921:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "13921:6:84"
                    },
                    "nativeSrc": "13921:104:84",
                    "nodeType": "YulFunctionCall",
                    "src": "13921:104:84"
                  },
                  "nativeSrc": "13921:104:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "13921:104:84"
                }
              ]
            },
            "name": "update_storage_value_offset_0t_struct$_RadonSLA_$23503_calldata_ptr_to_t_struct$_RadonSLA_$23503_storage",
            "nativeSrc": "13489:542:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "slot",
                "nativeSrc": "13603:4:84",
                "nodeType": "YulTypedName",
                "src": "13603:4:84",
                "type": ""
              },
              {
                "name": "value",
                "nativeSrc": "13609:5:84",
                "nodeType": "YulTypedName",
                "src": "13609:5:84",
                "type": ""
              }
            ],
            "src": "13489:542:84"
          },
          {
            "body": {
              "nativeSrc": "14210:240:84",
              "nodeType": "YulBlock",
              "src": "14210:240:84",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "14227:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "14227:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "14238:2:84",
                        "nodeType": "YulLiteral",
                        "src": "14238:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "14220:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "14220:6:84"
                    },
                    "nativeSrc": "14220:21:84",
                    "nodeType": "YulFunctionCall",
                    "src": "14220:21:84"
                  },
                  "nativeSrc": "14220:21:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "14220:21:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "14261:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "14261:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "14272:2:84",
                            "nodeType": "YulLiteral",
                            "src": "14272:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "14257:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "14257:3:84"
                        },
                        "nativeSrc": "14257:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "14257:18:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "14277:2:84",
                        "nodeType": "YulLiteral",
                        "src": "14277:2:84",
                        "type": "",
                        "value": "50"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "14250:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "14250:6:84"
                    },
                    "nativeSrc": "14250:30:84",
                    "nodeType": "YulFunctionCall",
                    "src": "14250:30:84"
                  },
                  "nativeSrc": "14250:30:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "14250:30:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "14300:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "14300:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "14311:2:84",
                            "nodeType": "YulLiteral",
                            "src": "14311:2:84",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "14296:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "14296:3:84"
                        },
                        "nativeSrc": "14296:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "14296:18:84"
                      },
                      {
                        "hexValue": "5769746e65743a20747269656420746f206465636f64652076616c7565206672",
                        "kind": "string",
                        "nativeSrc": "14316:34:84",
                        "nodeType": "YulLiteral",
                        "src": "14316:34:84",
                        "type": "",
                        "value": "Witnet: tried to decode value fr"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "14289:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "14289:6:84"
                    },
                    "nativeSrc": "14289:62:84",
                    "nodeType": "YulFunctionCall",
                    "src": "14289:62:84"
                  },
                  "nativeSrc": "14289:62:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "14289:62:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "14371:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "14371:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "14382:2:84",
                            "nodeType": "YulLiteral",
                            "src": "14382:2:84",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "14367:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "14367:3:84"
                        },
                        "nativeSrc": "14367:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "14367:18:84"
                      },
                      {
                        "hexValue": "6f6d206572726f72656420726573756c742e",
                        "kind": "string",
                        "nativeSrc": "14387:20:84",
                        "nodeType": "YulLiteral",
                        "src": "14387:20:84",
                        "type": "",
                        "value": "om errored result."
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "14360:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "14360:6:84"
                    },
                    "nativeSrc": "14360:48:84",
                    "nodeType": "YulFunctionCall",
                    "src": "14360:48:84"
                  },
                  "nativeSrc": "14360:48:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "14360:48:84"
                },
                {
                  "nativeSrc": "14417:27:84",
                  "nodeType": "YulAssignment",
                  "src": "14417:27:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "14429:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "14429:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "14440:3:84",
                        "nodeType": "YulLiteral",
                        "src": "14440:3:84",
                        "type": "",
                        "value": "128"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "14425:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "14425:3:84"
                    },
                    "nativeSrc": "14425:19:84",
                    "nodeType": "YulFunctionCall",
                    "src": "14425:19:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "14417:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "14417:4:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_stringliteral_c540643114d8824fc67c5a3bcabc32e042f198b987f1133b221fc24db5c15b9a__to_t_string_memory_ptr__fromStack_reversed",
            "nativeSrc": "14036:414:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "14187:9:84",
                "nodeType": "YulTypedName",
                "src": "14187:9:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "14201:4:84",
                "nodeType": "YulTypedName",
                "src": "14201:4:84",
                "type": ""
              }
            ],
            "src": "14036:414:84"
          },
          {
            "body": {
              "nativeSrc": "14584:119:84",
              "nodeType": "YulBlock",
              "src": "14584:119:84",
              "statements": [
                {
                  "nativeSrc": "14594:26:84",
                  "nodeType": "YulAssignment",
                  "src": "14594:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "14606:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "14606:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "14617:2:84",
                        "nodeType": "YulLiteral",
                        "src": "14617:2:84",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "14602:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "14602:3:84"
                    },
                    "nativeSrc": "14602:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "14602:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "14594:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "14594:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "14636:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "14636:9:84"
                      },
                      {
                        "name": "value0",
                        "nativeSrc": "14647:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "14647:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "14629:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "14629:6:84"
                    },
                    "nativeSrc": "14629:25:84",
                    "nodeType": "YulFunctionCall",
                    "src": "14629:25:84"
                  },
                  "nativeSrc": "14629:25:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "14629:25:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "14674:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "14674:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "14685:2:84",
                            "nodeType": "YulLiteral",
                            "src": "14685:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "14670:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "14670:3:84"
                        },
                        "nativeSrc": "14670:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "14670:18:84"
                      },
                      {
                        "name": "value1",
                        "nativeSrc": "14690:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "14690:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "14663:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "14663:6:84"
                    },
                    "nativeSrc": "14663:34:84",
                    "nodeType": "YulFunctionCall",
                    "src": "14663:34:84"
                  },
                  "nativeSrc": "14663:34:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "14663:34:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed",
            "nativeSrc": "14455:248:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "14545:9:84",
                "nodeType": "YulTypedName",
                "src": "14545:9:84",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "14556:6:84",
                "nodeType": "YulTypedName",
                "src": "14556:6:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "14564:6:84",
                "nodeType": "YulTypedName",
                "src": "14564:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "14575:4:84",
                "nodeType": "YulTypedName",
                "src": "14575:4:84",
                "type": ""
              }
            ],
            "src": "14455:248:84"
          },
          {
            "body": {
              "nativeSrc": "14882:231:84",
              "nodeType": "YulBlock",
              "src": "14882:231:84",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "14899:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "14899:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "14910:2:84",
                        "nodeType": "YulLiteral",
                        "src": "14910:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "14892:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "14892:6:84"
                    },
                    "nativeSrc": "14892:21:84",
                    "nodeType": "YulFunctionCall",
                    "src": "14892:21:84"
                  },
                  "nativeSrc": "14892:21:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "14892:21:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "14933:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "14933:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "14944:2:84",
                            "nodeType": "YulLiteral",
                            "src": "14944:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "14929:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "14929:3:84"
                        },
                        "nativeSrc": "14929:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "14929:18:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "14949:2:84",
                        "nodeType": "YulLiteral",
                        "src": "14949:2:84",
                        "type": "",
                        "value": "41"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "14922:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "14922:6:84"
                    },
                    "nativeSrc": "14922:30:84",
                    "nodeType": "YulFunctionCall",
                    "src": "14922:30:84"
                  },
                  "nativeSrc": "14922:30:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "14922:30:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "14972:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "14972:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "14983:2:84",
                            "nodeType": "YulLiteral",
                            "src": "14983:2:84",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "14968:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "14968:3:84"
                        },
                        "nativeSrc": "14968:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "14968:18:84"
                      },
                      {
                        "hexValue": "4f776e61626c6532537465703a2063616c6c6572206973206e6f742074686520",
                        "kind": "string",
                        "nativeSrc": "14988:34:84",
                        "nodeType": "YulLiteral",
                        "src": "14988:34:84",
                        "type": "",
                        "value": "Ownable2Step: caller is not the "
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "14961:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "14961:6:84"
                    },
                    "nativeSrc": "14961:62:84",
                    "nodeType": "YulFunctionCall",
                    "src": "14961:62:84"
                  },
                  "nativeSrc": "14961:62:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "14961:62:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "15043:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "15043:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "15054:2:84",
                            "nodeType": "YulLiteral",
                            "src": "15054:2:84",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "15039:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "15039:3:84"
                        },
                        "nativeSrc": "15039:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "15039:18:84"
                      },
                      {
                        "hexValue": "6e6577206f776e6572",
                        "kind": "string",
                        "nativeSrc": "15059:11:84",
                        "nodeType": "YulLiteral",
                        "src": "15059:11:84",
                        "type": "",
                        "value": "new owner"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "15032:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "15032:6:84"
                    },
                    "nativeSrc": "15032:39:84",
                    "nodeType": "YulFunctionCall",
                    "src": "15032:39:84"
                  },
                  "nativeSrc": "15032:39:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "15032:39:84"
                },
                {
                  "nativeSrc": "15080:27:84",
                  "nodeType": "YulAssignment",
                  "src": "15080:27:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "15092:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "15092:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "15103:3:84",
                        "nodeType": "YulLiteral",
                        "src": "15103:3:84",
                        "type": "",
                        "value": "128"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "15088:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "15088:3:84"
                    },
                    "nativeSrc": "15088:19:84",
                    "nodeType": "YulFunctionCall",
                    "src": "15088:19:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "15080:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "15080:4:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_stringliteral_225559eb8402045bea7ff07c35d0ad8c0547830223ac1c21d44fb948d6896ebc__to_t_string_memory_ptr__fromStack_reversed",
            "nativeSrc": "14708:405:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "14859:9:84",
                "nodeType": "YulTypedName",
                "src": "14859:9:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "14873:4:84",
                "nodeType": "YulTypedName",
                "src": "14873:4:84",
                "type": ""
              }
            ],
            "src": "14708:405:84"
          },
          {
            "body": {
              "nativeSrc": "15208:245:84",
              "nodeType": "YulBlock",
              "src": "15208:245:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "15254:16:84",
                    "nodeType": "YulBlock",
                    "src": "15254:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "15263:1:84",
                              "nodeType": "YulLiteral",
                              "src": "15263:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "15266:1:84",
                              "nodeType": "YulLiteral",
                              "src": "15266:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "15256:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "15256:6:84"
                          },
                          "nativeSrc": "15256:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "15256:12:84"
                        },
                        "nativeSrc": "15256:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "15256:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "15229:7:84",
                            "nodeType": "YulIdentifier",
                            "src": "15229:7:84"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "15238:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "15238:9:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "15225:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "15225:3:84"
                        },
                        "nativeSrc": "15225:23:84",
                        "nodeType": "YulFunctionCall",
                        "src": "15225:23:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "15250:2:84",
                        "nodeType": "YulLiteral",
                        "src": "15250:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "15221:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "15221:3:84"
                    },
                    "nativeSrc": "15221:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "15221:32:84"
                  },
                  "nativeSrc": "15218:52:84",
                  "nodeType": "YulIf",
                  "src": "15218:52:84"
                },
                {
                  "nativeSrc": "15279:30:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "15279:30:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "15299:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "15299:9:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "15293:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "15293:5:84"
                    },
                    "nativeSrc": "15293:16:84",
                    "nodeType": "YulFunctionCall",
                    "src": "15293:16:84"
                  },
                  "variables": [
                    {
                      "name": "offset",
                      "nativeSrc": "15283:6:84",
                      "nodeType": "YulTypedName",
                      "src": "15283:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "15352:16:84",
                    "nodeType": "YulBlock",
                    "src": "15352:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "15361:1:84",
                              "nodeType": "YulLiteral",
                              "src": "15361:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "15364:1:84",
                              "nodeType": "YulLiteral",
                              "src": "15364:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "15354:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "15354:6:84"
                          },
                          "nativeSrc": "15354:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "15354:12:84"
                        },
                        "nativeSrc": "15354:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "15354:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "15324:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "15324:6:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "15332:18:84",
                        "nodeType": "YulLiteral",
                        "src": "15332:18:84",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "15321:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "15321:2:84"
                    },
                    "nativeSrc": "15321:30:84",
                    "nodeType": "YulFunctionCall",
                    "src": "15321:30:84"
                  },
                  "nativeSrc": "15318:50:84",
                  "nodeType": "YulIf",
                  "src": "15318:50:84"
                },
                {
                  "nativeSrc": "15377:70:84",
                  "nodeType": "YulAssignment",
                  "src": "15377:70:84",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "15419:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "15419:9:84"
                          },
                          {
                            "name": "offset",
                            "nativeSrc": "15430:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "15430:6:84"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "15415:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "15415:3:84"
                        },
                        "nativeSrc": "15415:22:84",
                        "nodeType": "YulFunctionCall",
                        "src": "15415:22:84"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "15439:7:84",
                        "nodeType": "YulIdentifier",
                        "src": "15439:7:84"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_bytes_fromMemory",
                      "nativeSrc": "15387:27:84",
                      "nodeType": "YulIdentifier",
                      "src": "15387:27:84"
                    },
                    "nativeSrc": "15387:60:84",
                    "nodeType": "YulFunctionCall",
                    "src": "15387:60:84"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "15377:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "15377:6:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_bytes_memory_ptr_fromMemory",
            "nativeSrc": "15118:335:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "15174:9:84",
                "nodeType": "YulTypedName",
                "src": "15174:9:84",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "15185:7:84",
                "nodeType": "YulTypedName",
                "src": "15185:7:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "15197:6:84",
                "nodeType": "YulTypedName",
                "src": "15197:6:84",
                "type": ""
              }
            ],
            "src": "15118:335:84"
          },
          {
            "body": {
              "nativeSrc": "15527:176:84",
              "nodeType": "YulBlock",
              "src": "15527:176:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "15573:16:84",
                    "nodeType": "YulBlock",
                    "src": "15573:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "15582:1:84",
                              "nodeType": "YulLiteral",
                              "src": "15582:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "15585:1:84",
                              "nodeType": "YulLiteral",
                              "src": "15585:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "15575:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "15575:6:84"
                          },
                          "nativeSrc": "15575:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "15575:12:84"
                        },
                        "nativeSrc": "15575:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "15575:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "15548:7:84",
                            "nodeType": "YulIdentifier",
                            "src": "15548:7:84"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "15557:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "15557:9:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "15544:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "15544:3:84"
                        },
                        "nativeSrc": "15544:23:84",
                        "nodeType": "YulFunctionCall",
                        "src": "15544:23:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "15569:2:84",
                        "nodeType": "YulLiteral",
                        "src": "15569:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "15540:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "15540:3:84"
                    },
                    "nativeSrc": "15540:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "15540:32:84"
                  },
                  "nativeSrc": "15537:52:84",
                  "nodeType": "YulIf",
                  "src": "15537:52:84"
                },
                {
                  "nativeSrc": "15598:36:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "15598:36:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "15624:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "15624:9:84"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "15611:12:84",
                      "nodeType": "YulIdentifier",
                      "src": "15611:12:84"
                    },
                    "nativeSrc": "15611:23:84",
                    "nodeType": "YulFunctionCall",
                    "src": "15611:23:84"
                  },
                  "variables": [
                    {
                      "name": "value",
                      "nativeSrc": "15602:5:84",
                      "nodeType": "YulTypedName",
                      "src": "15602:5:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "15667:5:84",
                        "nodeType": "YulIdentifier",
                        "src": "15667:5:84"
                      }
                    ],
                    "functionName": {
                      "name": "validator_revert_uint64",
                      "nativeSrc": "15643:23:84",
                      "nodeType": "YulIdentifier",
                      "src": "15643:23:84"
                    },
                    "nativeSrc": "15643:30:84",
                    "nodeType": "YulFunctionCall",
                    "src": "15643:30:84"
                  },
                  "nativeSrc": "15643:30:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "15643:30:84"
                },
                {
                  "nativeSrc": "15682:15:84",
                  "nodeType": "YulAssignment",
                  "src": "15682:15:84",
                  "value": {
                    "name": "value",
                    "nativeSrc": "15692:5:84",
                    "nodeType": "YulIdentifier",
                    "src": "15692:5:84"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "15682:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "15682:6:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_uint64",
            "nativeSrc": "15458:245:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "15493:9:84",
                "nodeType": "YulTypedName",
                "src": "15493:9:84",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "15504:7:84",
                "nodeType": "YulTypedName",
                "src": "15504:7:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "15516:6:84",
                "nodeType": "YulTypedName",
                "src": "15516:6:84",
                "type": ""
              }
            ],
            "src": "15458:245:84"
          },
          {
            "body": {
              "nativeSrc": "15776:175:84",
              "nodeType": "YulBlock",
              "src": "15776:175:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "15822:16:84",
                    "nodeType": "YulBlock",
                    "src": "15822:16:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "15831:1:84",
                              "nodeType": "YulLiteral",
                              "src": "15831:1:84",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "15834:1:84",
                              "nodeType": "YulLiteral",
                              "src": "15834:1:84",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "15824:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "15824:6:84"
                          },
                          "nativeSrc": "15824:12:84",
                          "nodeType": "YulFunctionCall",
                          "src": "15824:12:84"
                        },
                        "nativeSrc": "15824:12:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "15824:12:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "15797:7:84",
                            "nodeType": "YulIdentifier",
                            "src": "15797:7:84"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "15806:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "15806:9:84"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "15793:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "15793:3:84"
                        },
                        "nativeSrc": "15793:23:84",
                        "nodeType": "YulFunctionCall",
                        "src": "15793:23:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "15818:2:84",
                        "nodeType": "YulLiteral",
                        "src": "15818:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "15789:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "15789:3:84"
                    },
                    "nativeSrc": "15789:32:84",
                    "nodeType": "YulFunctionCall",
                    "src": "15789:32:84"
                  },
                  "nativeSrc": "15786:52:84",
                  "nodeType": "YulIf",
                  "src": "15786:52:84"
                },
                {
                  "nativeSrc": "15847:36:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "15847:36:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "15873:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "15873:9:84"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "15860:12:84",
                      "nodeType": "YulIdentifier",
                      "src": "15860:12:84"
                    },
                    "nativeSrc": "15860:23:84",
                    "nodeType": "YulFunctionCall",
                    "src": "15860:23:84"
                  },
                  "variables": [
                    {
                      "name": "value",
                      "nativeSrc": "15851:5:84",
                      "nodeType": "YulTypedName",
                      "src": "15851:5:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "15915:5:84",
                        "nodeType": "YulIdentifier",
                        "src": "15915:5:84"
                      }
                    ],
                    "functionName": {
                      "name": "validator_revert_uint8",
                      "nativeSrc": "15892:22:84",
                      "nodeType": "YulIdentifier",
                      "src": "15892:22:84"
                    },
                    "nativeSrc": "15892:29:84",
                    "nodeType": "YulFunctionCall",
                    "src": "15892:29:84"
                  },
                  "nativeSrc": "15892:29:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "15892:29:84"
                },
                {
                  "nativeSrc": "15930:15:84",
                  "nodeType": "YulAssignment",
                  "src": "15930:15:84",
                  "value": {
                    "name": "value",
                    "nativeSrc": "15940:5:84",
                    "nodeType": "YulIdentifier",
                    "src": "15940:5:84"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "15930:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "15930:6:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_uint8",
            "nativeSrc": "15708:243:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "15742:9:84",
                "nodeType": "YulTypedName",
                "src": "15742:9:84",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "15753:7:84",
                "nodeType": "YulTypedName",
                "src": "15753:7:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "15765:6:84",
                "nodeType": "YulTypedName",
                "src": "15765:6:84",
                "type": ""
              }
            ],
            "src": "15708:243:84"
          },
          {
            "body": {
              "nativeSrc": "16003:88:84",
              "nodeType": "YulBlock",
              "src": "16003:88:84",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "16034:22:84",
                    "nodeType": "YulBlock",
                    "src": "16034:22:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x11",
                            "nativeSrc": "16036:16:84",
                            "nodeType": "YulIdentifier",
                            "src": "16036:16:84"
                          },
                          "nativeSrc": "16036:18:84",
                          "nodeType": "YulFunctionCall",
                          "src": "16036:18:84"
                        },
                        "nativeSrc": "16036:18:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "16036:18:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "16019:5:84",
                        "nodeType": "YulIdentifier",
                        "src": "16019:5:84"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "16030:1:84",
                            "nodeType": "YulLiteral",
                            "src": "16030:1:84",
                            "type": "",
                            "value": "0"
                          }
                        ],
                        "functionName": {
                          "name": "not",
                          "nativeSrc": "16026:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "16026:3:84"
                        },
                        "nativeSrc": "16026:6:84",
                        "nodeType": "YulFunctionCall",
                        "src": "16026:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "eq",
                      "nativeSrc": "16016:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "16016:2:84"
                    },
                    "nativeSrc": "16016:17:84",
                    "nodeType": "YulFunctionCall",
                    "src": "16016:17:84"
                  },
                  "nativeSrc": "16013:43:84",
                  "nodeType": "YulIf",
                  "src": "16013:43:84"
                },
                {
                  "nativeSrc": "16065:20:84",
                  "nodeType": "YulAssignment",
                  "src": "16065:20:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "16076:5:84",
                        "nodeType": "YulIdentifier",
                        "src": "16076:5:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "16083:1:84",
                        "nodeType": "YulLiteral",
                        "src": "16083:1:84",
                        "type": "",
                        "value": "1"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "16072:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "16072:3:84"
                    },
                    "nativeSrc": "16072:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "16072:13:84"
                  },
                  "variableNames": [
                    {
                      "name": "ret",
                      "nativeSrc": "16065:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "16065:3:84"
                    }
                  ]
                }
              ]
            },
            "name": "increment_t_uint256",
            "nativeSrc": "15956:135:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "value",
                "nativeSrc": "15985:5:84",
                "nodeType": "YulTypedName",
                "src": "15985:5:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "ret",
                "nativeSrc": "15995:3:84",
                "nodeType": "YulTypedName",
                "src": "15995:3:84",
                "type": ""
              }
            ],
            "src": "15956:135:84"
          },
          {
            "body": {
              "nativeSrc": "16144:77:84",
              "nodeType": "YulBlock",
              "src": "16144:77:84",
              "statements": [
                {
                  "nativeSrc": "16154:16:84",
                  "nodeType": "YulAssignment",
                  "src": "16154:16:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "x",
                        "nativeSrc": "16165:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "16165:1:84"
                      },
                      {
                        "name": "y",
                        "nativeSrc": "16168:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "16168:1:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "16161:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "16161:3:84"
                    },
                    "nativeSrc": "16161:9:84",
                    "nodeType": "YulFunctionCall",
                    "src": "16161:9:84"
                  },
                  "variableNames": [
                    {
                      "name": "sum",
                      "nativeSrc": "16154:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "16154:3:84"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "16193:22:84",
                    "nodeType": "YulBlock",
                    "src": "16193:22:84",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x11",
                            "nativeSrc": "16195:16:84",
                            "nodeType": "YulIdentifier",
                            "src": "16195:16:84"
                          },
                          "nativeSrc": "16195:18:84",
                          "nodeType": "YulFunctionCall",
                          "src": "16195:18:84"
                        },
                        "nativeSrc": "16195:18:84",
                        "nodeType": "YulExpressionStatement",
                        "src": "16195:18:84"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "x",
                        "nativeSrc": "16185:1:84",
                        "nodeType": "YulIdentifier",
                        "src": "16185:1:84"
                      },
                      {
                        "name": "sum",
                        "nativeSrc": "16188:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "16188:3:84"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "16182:2:84",
                      "nodeType": "YulIdentifier",
                      "src": "16182:2:84"
                    },
                    "nativeSrc": "16182:10:84",
                    "nodeType": "YulFunctionCall",
                    "src": "16182:10:84"
                  },
                  "nativeSrc": "16179:36:84",
                  "nodeType": "YulIf",
                  "src": "16179:36:84"
                }
              ]
            },
            "name": "checked_add_t_uint256",
            "nativeSrc": "16096:125:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "x",
                "nativeSrc": "16127:1:84",
                "nodeType": "YulTypedName",
                "src": "16127:1:84",
                "type": ""
              },
              {
                "name": "y",
                "nativeSrc": "16130:1:84",
                "nodeType": "YulTypedName",
                "src": "16130:1:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "sum",
                "nativeSrc": "16136:3:84",
                "nodeType": "YulTypedName",
                "src": "16136:3:84",
                "type": ""
              }
            ],
            "src": "16096:125:84"
          },
          {
            "body": {
              "nativeSrc": "16325:87:84",
              "nodeType": "YulBlock",
              "src": "16325:87:84",
              "statements": [
                {
                  "nativeSrc": "16335:26:84",
                  "nodeType": "YulAssignment",
                  "src": "16335:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "16347:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "16347:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "16358:2:84",
                        "nodeType": "YulLiteral",
                        "src": "16358:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "16343:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "16343:3:84"
                    },
                    "nativeSrc": "16343:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "16343:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "16335:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "16335:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "16377:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "16377:9:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "16392:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "16392:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "16400:4:84",
                            "nodeType": "YulLiteral",
                            "src": "16400:4:84",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "16388:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "16388:3:84"
                        },
                        "nativeSrc": "16388:17:84",
                        "nodeType": "YulFunctionCall",
                        "src": "16388:17:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "16370:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "16370:6:84"
                    },
                    "nativeSrc": "16370:36:84",
                    "nodeType": "YulFunctionCall",
                    "src": "16370:36:84"
                  },
                  "nativeSrc": "16370:36:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "16370:36:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint8__to_t_uint256__fromStack_reversed",
            "nativeSrc": "16226:186:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "16294:9:84",
                "nodeType": "YulTypedName",
                "src": "16294:9:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "16305:6:84",
                "nodeType": "YulTypedName",
                "src": "16305:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "16316:4:84",
                "nodeType": "YulTypedName",
                "src": "16316:4:84",
                "type": ""
              }
            ],
            "src": "16226:186:84"
          },
          {
            "body": {
              "nativeSrc": "16542:141:84",
              "nodeType": "YulBlock",
              "src": "16542:141:84",
              "statements": [
                {
                  "nativeSrc": "16552:26:84",
                  "nodeType": "YulAssignment",
                  "src": "16552:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "16564:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "16564:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "16575:2:84",
                        "nodeType": "YulLiteral",
                        "src": "16575:2:84",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "16560:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "16560:3:84"
                    },
                    "nativeSrc": "16560:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "16560:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "16552:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "16552:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "16594:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "16594:9:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "16609:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "16609:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "16617:4:84",
                            "nodeType": "YulLiteral",
                            "src": "16617:4:84",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "16605:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "16605:3:84"
                        },
                        "nativeSrc": "16605:17:84",
                        "nodeType": "YulFunctionCall",
                        "src": "16605:17:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "16587:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "16587:6:84"
                    },
                    "nativeSrc": "16587:36:84",
                    "nodeType": "YulFunctionCall",
                    "src": "16587:36:84"
                  },
                  "nativeSrc": "16587:36:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "16587:36:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "16643:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "16643:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "16654:2:84",
                            "nodeType": "YulLiteral",
                            "src": "16654:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "16639:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "16639:3:84"
                        },
                        "nativeSrc": "16639:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "16639:18:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value1",
                            "nativeSrc": "16663:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "16663:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "16671:4:84",
                            "nodeType": "YulLiteral",
                            "src": "16671:4:84",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "16659:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "16659:3:84"
                        },
                        "nativeSrc": "16659:17:84",
                        "nodeType": "YulFunctionCall",
                        "src": "16659:17:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "16632:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "16632:6:84"
                    },
                    "nativeSrc": "16632:45:84",
                    "nodeType": "YulFunctionCall",
                    "src": "16632:45:84"
                  },
                  "nativeSrc": "16632:45:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "16632:45:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint8_t_uint8__to_t_uint256_t_uint256__fromStack_reversed",
            "nativeSrc": "16417:266:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "16503:9:84",
                "nodeType": "YulTypedName",
                "src": "16503:9:84",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "16514:6:84",
                "nodeType": "YulTypedName",
                "src": "16514:6:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "16522:6:84",
                "nodeType": "YulTypedName",
                "src": "16522:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "16533:4:84",
                "nodeType": "YulTypedName",
                "src": "16533:4:84",
                "type": ""
              }
            ],
            "src": "16417:266:84"
          },
          {
            "body": {
              "nativeSrc": "16825:150:84",
              "nodeType": "YulBlock",
              "src": "16825:150:84",
              "statements": [
                {
                  "nativeSrc": "16835:27:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "16835:27:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value0",
                        "nativeSrc": "16855:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "16855:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "16849:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "16849:5:84"
                    },
                    "nativeSrc": "16849:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "16849:13:84"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "16839:6:84",
                      "nodeType": "YulTypedName",
                      "src": "16839:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "16910:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "16910:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "16918:4:84",
                            "nodeType": "YulLiteral",
                            "src": "16918:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "16906:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "16906:3:84"
                        },
                        "nativeSrc": "16906:17:84",
                        "nodeType": "YulFunctionCall",
                        "src": "16906:17:84"
                      },
                      {
                        "name": "pos",
                        "nativeSrc": "16925:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "16925:3:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "16930:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "16930:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "copy_memory_to_memory_with_cleanup",
                      "nativeSrc": "16871:34:84",
                      "nodeType": "YulIdentifier",
                      "src": "16871:34:84"
                    },
                    "nativeSrc": "16871:66:84",
                    "nodeType": "YulFunctionCall",
                    "src": "16871:66:84"
                  },
                  "nativeSrc": "16871:66:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "16871:66:84"
                },
                {
                  "nativeSrc": "16946:23:84",
                  "nodeType": "YulAssignment",
                  "src": "16946:23:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "16957:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "16957:3:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "16962:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "16962:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "16953:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "16953:3:84"
                    },
                    "nativeSrc": "16953:16:84",
                    "nodeType": "YulFunctionCall",
                    "src": "16953:16:84"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "16946:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "16946:3:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed",
            "nativeSrc": "16688:287:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "16801:3:84",
                "nodeType": "YulTypedName",
                "src": "16801:3:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "16806:6:84",
                "nodeType": "YulTypedName",
                "src": "16806:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "16817:3:84",
                "nodeType": "YulTypedName",
                "src": "16817:3:84",
                "type": ""
              }
            ],
            "src": "16688:287:84"
          },
          {
            "body": {
              "nativeSrc": "17163:309:84",
              "nodeType": "YulBlock",
              "src": "17163:309:84",
              "statements": [
                {
                  "nativeSrc": "17173:27:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "17173:27:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value0",
                        "nativeSrc": "17193:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "17193:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "17187:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "17187:5:84"
                    },
                    "nativeSrc": "17187:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "17187:13:84"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "17177:6:84",
                      "nodeType": "YulTypedName",
                      "src": "17177:6:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "17248:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "17248:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "17256:4:84",
                            "nodeType": "YulLiteral",
                            "src": "17256:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "17244:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "17244:3:84"
                        },
                        "nativeSrc": "17244:17:84",
                        "nodeType": "YulFunctionCall",
                        "src": "17244:17:84"
                      },
                      {
                        "name": "pos",
                        "nativeSrc": "17263:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "17263:3:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "17268:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "17268:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "copy_memory_to_memory_with_cleanup",
                      "nativeSrc": "17209:34:84",
                      "nodeType": "YulIdentifier",
                      "src": "17209:34:84"
                    },
                    "nativeSrc": "17209:66:84",
                    "nodeType": "YulFunctionCall",
                    "src": "17209:66:84"
                  },
                  "nativeSrc": "17209:66:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "17209:66:84"
                },
                {
                  "nativeSrc": "17284:29:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "17284:29:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "17301:3:84",
                        "nodeType": "YulIdentifier",
                        "src": "17301:3:84"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "17306:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "17306:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "17297:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "17297:3:84"
                    },
                    "nativeSrc": "17297:16:84",
                    "nodeType": "YulFunctionCall",
                    "src": "17297:16:84"
                  },
                  "variables": [
                    {
                      "name": "end_1",
                      "nativeSrc": "17288:5:84",
                      "nodeType": "YulTypedName",
                      "src": "17288:5:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "17322:29:84",
                  "nodeType": "YulVariableDeclaration",
                  "src": "17322:29:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "value1",
                        "nativeSrc": "17344:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "17344:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "17338:5:84",
                      "nodeType": "YulIdentifier",
                      "src": "17338:5:84"
                    },
                    "nativeSrc": "17338:13:84",
                    "nodeType": "YulFunctionCall",
                    "src": "17338:13:84"
                  },
                  "variables": [
                    {
                      "name": "length_1",
                      "nativeSrc": "17326:8:84",
                      "nodeType": "YulTypedName",
                      "src": "17326:8:84",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value1",
                            "nativeSrc": "17399:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "17399:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "17407:4:84",
                            "nodeType": "YulLiteral",
                            "src": "17407:4:84",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "17395:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "17395:3:84"
                        },
                        "nativeSrc": "17395:17:84",
                        "nodeType": "YulFunctionCall",
                        "src": "17395:17:84"
                      },
                      {
                        "name": "end_1",
                        "nativeSrc": "17414:5:84",
                        "nodeType": "YulIdentifier",
                        "src": "17414:5:84"
                      },
                      {
                        "name": "length_1",
                        "nativeSrc": "17421:8:84",
                        "nodeType": "YulIdentifier",
                        "src": "17421:8:84"
                      }
                    ],
                    "functionName": {
                      "name": "copy_memory_to_memory_with_cleanup",
                      "nativeSrc": "17360:34:84",
                      "nodeType": "YulIdentifier",
                      "src": "17360:34:84"
                    },
                    "nativeSrc": "17360:70:84",
                    "nodeType": "YulFunctionCall",
                    "src": "17360:70:84"
                  },
                  "nativeSrc": "17360:70:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "17360:70:84"
                },
                {
                  "nativeSrc": "17439:27:84",
                  "nodeType": "YulAssignment",
                  "src": "17439:27:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "end_1",
                        "nativeSrc": "17450:5:84",
                        "nodeType": "YulIdentifier",
                        "src": "17450:5:84"
                      },
                      {
                        "name": "length_1",
                        "nativeSrc": "17457:8:84",
                        "nodeType": "YulIdentifier",
                        "src": "17457:8:84"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "17446:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "17446:3:84"
                    },
                    "nativeSrc": "17446:20:84",
                    "nodeType": "YulFunctionCall",
                    "src": "17446:20:84"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "17439:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "17439:3:84"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed",
            "nativeSrc": "16980:492:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "17131:3:84",
                "nodeType": "YulTypedName",
                "src": "17131:3:84",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "17136:6:84",
                "nodeType": "YulTypedName",
                "src": "17136:6:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "17144:6:84",
                "nodeType": "YulTypedName",
                "src": "17144:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "17155:3:84",
                "nodeType": "YulTypedName",
                "src": "17155:3:84",
                "type": ""
              }
            ],
            "src": "16980:492:84"
          },
          {
            "body": {
              "nativeSrc": "17606:119:84",
              "nodeType": "YulBlock",
              "src": "17606:119:84",
              "statements": [
                {
                  "nativeSrc": "17616:26:84",
                  "nodeType": "YulAssignment",
                  "src": "17616:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "17628:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "17628:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "17639:2:84",
                        "nodeType": "YulLiteral",
                        "src": "17639:2:84",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "17624:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "17624:3:84"
                    },
                    "nativeSrc": "17624:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "17624:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "17616:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "17616:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "17658:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "17658:9:84"
                      },
                      {
                        "name": "value0",
                        "nativeSrc": "17669:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "17669:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "17651:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "17651:6:84"
                    },
                    "nativeSrc": "17651:25:84",
                    "nodeType": "YulFunctionCall",
                    "src": "17651:25:84"
                  },
                  "nativeSrc": "17651:25:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "17651:25:84"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "17696:9:84",
                            "nodeType": "YulIdentifier",
                            "src": "17696:9:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "17707:2:84",
                            "nodeType": "YulLiteral",
                            "src": "17707:2:84",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "17692:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "17692:3:84"
                        },
                        "nativeSrc": "17692:18:84",
                        "nodeType": "YulFunctionCall",
                        "src": "17692:18:84"
                      },
                      {
                        "name": "value1",
                        "nativeSrc": "17712:6:84",
                        "nodeType": "YulIdentifier",
                        "src": "17712:6:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "17685:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "17685:6:84"
                    },
                    "nativeSrc": "17685:34:84",
                    "nodeType": "YulFunctionCall",
                    "src": "17685:34:84"
                  },
                  "nativeSrc": "17685:34:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "17685:34:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed",
            "nativeSrc": "17477:248:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "17567:9:84",
                "nodeType": "YulTypedName",
                "src": "17567:9:84",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "17578:6:84",
                "nodeType": "YulTypedName",
                "src": "17578:6:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "17586:6:84",
                "nodeType": "YulTypedName",
                "src": "17586:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "17597:4:84",
                "nodeType": "YulTypedName",
                "src": "17597:4:84",
                "type": ""
              }
            ],
            "src": "17477:248:84"
          },
          {
            "body": {
              "nativeSrc": "17830:101:84",
              "nodeType": "YulBlock",
              "src": "17830:101:84",
              "statements": [
                {
                  "nativeSrc": "17840:26:84",
                  "nodeType": "YulAssignment",
                  "src": "17840:26:84",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "17852:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "17852:9:84"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "17863:2:84",
                        "nodeType": "YulLiteral",
                        "src": "17863:2:84",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "17848:3:84",
                      "nodeType": "YulIdentifier",
                      "src": "17848:3:84"
                    },
                    "nativeSrc": "17848:18:84",
                    "nodeType": "YulFunctionCall",
                    "src": "17848:18:84"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "17840:4:84",
                      "nodeType": "YulIdentifier",
                      "src": "17840:4:84"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "17882:9:84",
                        "nodeType": "YulIdentifier",
                        "src": "17882:9:84"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "17897:6:84",
                            "nodeType": "YulIdentifier",
                            "src": "17897:6:84"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "17905:18:84",
                            "nodeType": "YulLiteral",
                            "src": "17905:18:84",
                            "type": "",
                            "value": "0xffffffffffffffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "17893:3:84",
                          "nodeType": "YulIdentifier",
                          "src": "17893:3:84"
                        },
                        "nativeSrc": "17893:31:84",
                        "nodeType": "YulFunctionCall",
                        "src": "17893:31:84"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "17875:6:84",
                      "nodeType": "YulIdentifier",
                      "src": "17875:6:84"
                    },
                    "nativeSrc": "17875:50:84",
                    "nodeType": "YulFunctionCall",
                    "src": "17875:50:84"
                  },
                  "nativeSrc": "17875:50:84",
                  "nodeType": "YulExpressionStatement",
                  "src": "17875:50:84"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint64__to_t_uint256__fromStack_reversed",
            "nativeSrc": "17730:201:84",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "17799:9:84",
                "nodeType": "YulTypedName",
                "src": "17799:9:84",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "17810:6:84",
                "nodeType": "YulTypedName",
                "src": "17810:6:84",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "17821:4:84",
                "nodeType": "YulTypedName",
                "src": "17821:4:84",
                "type": ""
              }
            ],
            "src": "17730:201:84"
          }
        ]
      },
      "contents": "{\n    { }\n    function copy_memory_to_memory_with_cleanup(src, dst, length)\n    {\n        let i := 0\n        for { } lt(i, length) { i := add(i, 32) }\n        {\n            mstore(add(dst, i), mload(add(src, i)))\n        }\n        mstore(add(dst, length), 0)\n    }\n    function abi_encode_tuple_packed_t_stringliteral_6aa2932fe75962e4eb862ba4982429ce713637712a759cb9d40b6d5260a002eb_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value3, value2, value1, value0) -> end\n    {\n        mstore(pos, \"not implemented: 0x\")\n        let length := mload(value0)\n        copy_memory_to_memory_with_cleanup(add(value0, 0x20), add(pos, 19), length)\n        let _1 := add(pos, length)\n        let length_1 := mload(value1)\n        copy_memory_to_memory_with_cleanup(add(value1, 0x20), add(_1, 19), length_1)\n        let _2 := add(_1, length_1)\n        let length_2 := mload(value2)\n        copy_memory_to_memory_with_cleanup(add(value2, 0x20), add(_2, 19), length_2)\n        let _3 := add(_2, length_2)\n        let length_3 := mload(value3)\n        copy_memory_to_memory_with_cleanup(add(value3, 0x20), add(_3, 19), length_3)\n        end := add(add(_3, length_3), 19)\n    }\n    function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        value0 := calldataload(headStart)\n    }\n    function abi_encode_tuple_t_bytes32_t_uint64_t_bytes32_t_uint256__to_t_bytes32_t_uint64_t_bytes32_t_uint256__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n    {\n        tail := add(headStart, 128)\n        mstore(headStart, value0)\n        mstore(add(headStart, 32), and(value1, 0xffffffffffffffff))\n        mstore(add(headStart, 64), value2)\n        mstore(add(headStart, 96), value3)\n    }\n    function validator_revert_uint32(value)\n    {\n        if iszero(eq(value, and(value, 0xffffffff))) { revert(0, 0) }\n    }\n    function abi_decode_tuple_t_uint32t_uint256t_uint256(headStart, dataEnd) -> value0, value1, value2\n    {\n        if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n        let value := calldataload(headStart)\n        validator_revert_uint32(value)\n        value0 := value\n        value1 := calldataload(add(headStart, 32))\n        value2 := calldataload(add(headStart, 64))\n    }\n    function abi_encode_tuple_t_uint32__to_t_uint32__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        mstore(headStart, and(value0, 0xffffffff))\n    }\n    function abi_encode_tuple_t_contract$_WitnetOracle_$749__to_t_address__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n    }\n    function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        mstore(headStart, value0)\n    }\n    function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        mstore(headStart, value0)\n    }\n    function panic_error_0x21()\n    {\n        mstore(0, shl(224, 0x4e487b71))\n        mstore(4, 0x21)\n        revert(0, 0x24)\n    }\n    function abi_encode_tuple_t_enum$_ResponseStatus_$23496__to_t_uint8__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        if iszero(lt(value0, 6))\n        {\n            mstore(0, shl(224, 0x4e487b71))\n            mstore(4, 0x21)\n            revert(0, 0x24)\n        }\n        mstore(headStart, value0)\n    }\n    function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n    }\n    function abi_encode_tuple_t_struct$_RadonSLA_$23503_memory_ptr__to_t_struct$_RadonSLA_$23503_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 64)\n        mstore(headStart, and(mload(value0), 0xff))\n        mstore(add(headStart, 0x20), and(mload(add(value0, 0x20)), 0xffffffffffffffff))\n    }\n    function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        mstore(headStart, iszero(iszero(value0)))\n    }\n    function abi_encode_tuple_t_uint256_t_uint256_t_uint256__to_t_uint256_t_uint256_t_uint256__fromStack_reversed(headStart, value2, value1, value0) -> tail\n    {\n        tail := add(headStart, 96)\n        mstore(headStart, value0)\n        mstore(add(headStart, 32), value1)\n        mstore(add(headStart, 64), value2)\n    }\n    function abi_encode_tuple_t_bytes4__to_t_bytes4__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        mstore(headStart, and(value0, shl(224, 0xffffffff)))\n    }\n    function abi_decode_tuple_t_uint16(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        let value := calldataload(headStart)\n        if iszero(eq(value, and(value, 0xffff))) { revert(0, 0) }\n        value0 := value\n    }\n    function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n    {\n        mstore(headStart, 32)\n        let length := mload(value0)\n        mstore(add(headStart, 32), length)\n        copy_memory_to_memory_with_cleanup(add(value0, 32), add(headStart, 64), length)\n        tail := add(add(headStart, and(add(length, 31), not(31))), 64)\n    }\n    function abi_decode_tuple_t_struct$_RadonSLA_$23503_calldata_ptr(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n        value0 := headStart\n    }\n    function abi_encode_tuple_t_uint16__to_t_uint16__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        mstore(headStart, and(value0, 0xffff))\n    }\n    function validator_revert_address(value)\n    {\n        if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n    }\n    function abi_decode_tuple_t_address(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        let value := calldataload(headStart)\n        validator_revert_address(value)\n        value0 := value\n    }\n    function abi_encode_tuple_packed_t_string_memory_ptr_t_stringliteral_e64009107d042bdc478cc69a5433e4573ea2e8a23a46646c0ee241e30c888e73_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n    {\n        let length := mload(value0)\n        copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n        let end_1 := add(pos, length)\n        mstore(end_1, \": \")\n        let length_1 := mload(value1)\n        copy_memory_to_memory_with_cleanup(add(value1, 0x20), add(end_1, 2), length_1)\n        end := add(add(end_1, length_1), 2)\n    }\n    function panic_error_0x41()\n    {\n        mstore(0, shl(224, 0x4e487b71))\n        mstore(4, 0x41)\n        revert(0, 0x24)\n    }\n    function panic_error_0x12()\n    {\n        mstore(0, shl(224, 0x4e487b71))\n        mstore(4, 0x12)\n        revert(0, 0x24)\n    }\n    function panic_error_0x11()\n    {\n        mstore(0, shl(224, 0x4e487b71))\n        mstore(4, 0x11)\n        revert(0, 0x24)\n    }\n    function checked_div_t_uint8(x, y) -> r\n    {\n        let y_1 := and(y, 0xff)\n        if iszero(y_1) { panic_error_0x12() }\n        r := div(and(x, 0xff), y_1)\n    }\n    function checked_add_t_uint8(x, y) -> sum\n    {\n        sum := add(and(x, 0xff), and(y, 0xff))\n        if gt(sum, 0xff) { panic_error_0x11() }\n    }\n    function mod_t_uint8(x, y) -> r\n    {\n        let y_1 := and(y, 0xff)\n        if iszero(y_1) { panic_error_0x12() }\n        r := mod(and(x, 0xff), y_1)\n    }\n    function panic_error_0x32()\n    {\n        mstore(0, shl(224, 0x4e487b71))\n        mstore(4, 0x32)\n        revert(0, 0x24)\n    }\n    function abi_decode_tuple_t_enum$_ResponseStatus_$23496_fromMemory(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        let value := mload(headStart)\n        if iszero(lt(value, 6)) { revert(0, 0) }\n        value0 := value\n    }\n    function allocate_memory() -> memPtr\n    {\n        memPtr := mload(64)\n        let newFreePtr := add(memPtr, 0xa0)\n        if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n        mstore(64, newFreePtr)\n    }\n    function validator_revert_uint64(value)\n    {\n        if iszero(eq(value, and(value, 0xffffffffffffffff))) { revert(0, 0) }\n    }\n    function abi_decode_bytes_fromMemory(offset, end) -> array\n    {\n        if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n        let _1 := mload(offset)\n        let _2 := 0xffffffffffffffff\n        if gt(_1, _2) { panic_error_0x41() }\n        let _3 := not(31)\n        let memPtr := mload(64)\n        let newFreePtr := add(memPtr, and(add(and(add(_1, 0x1f), _3), 63), _3))\n        if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n        mstore(64, newFreePtr)\n        mstore(memPtr, _1)\n        if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n        copy_memory_to_memory_with_cleanup(add(offset, 0x20), add(memPtr, 0x20), _1)\n        array := memPtr\n    }\n    function abi_decode_tuple_t_struct$_Response_$23488_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        let offset := mload(headStart)\n        let _1 := 0xffffffffffffffff\n        if gt(offset, _1) { revert(0, 0) }\n        let _2 := add(headStart, offset)\n        if slt(sub(dataEnd, _2), 0xa0) { revert(0, 0) }\n        let value := allocate_memory()\n        let value_1 := mload(_2)\n        validator_revert_address(value_1)\n        mstore(value, value_1)\n        let value_2 := mload(add(_2, 32))\n        validator_revert_uint64(value_2)\n        mstore(add(value, 32), value_2)\n        let value_3 := mload(add(_2, 64))\n        validator_revert_uint32(value_3)\n        mstore(add(value, 64), value_3)\n        mstore(add(value, 96), mload(add(_2, 96)))\n        let offset_1 := mload(add(_2, 128))\n        if gt(offset_1, _1) { revert(0, 0) }\n        mstore(add(value, 128), abi_decode_bytes_fromMemory(add(_2, offset_1), dataEnd))\n        value0 := value\n    }\n    function abi_encode_tuple_t_address_t_bytes32__to_t_address_t_bytes32__fromStack_reversed(headStart, value1, value0) -> tail\n    {\n        tail := add(headStart, 64)\n        mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n        mstore(add(headStart, 32), value1)\n    }\n    function abi_encode_struct_RadonSLA_storage(value, pos)\n    {\n        let slotValue := sload(value)\n        mstore(pos, and(slotValue, 0xff))\n        mstore(add(pos, 0x20), and(shr(8, slotValue), 0xffffffffffffffff))\n    }\n    function abi_encode_tuple_t_bytes32_t_struct$_RadonSLA_$23503_storage__to_t_bytes32_t_struct$_RadonSLA_$23503_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n    {\n        tail := add(headStart, 96)\n        mstore(headStart, value0)\n        abi_encode_struct_RadonSLA_storage(value1, add(headStart, 32))\n    }\n    function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        value0 := mload(headStart)\n    }\n    function abi_encode_tuple_t_uint256_t_uint256_t_uint256_t_uint256_t_struct$_RadonSLA_$23503_storage__to_t_uint256_t_uint256_t_uint256_t_uint256_t_struct$_RadonSLA_$23503_memory_ptr__fromStack_reversed(headStart, value4, value3, value2, value1, value0) -> tail\n    {\n        tail := add(headStart, 192)\n        mstore(headStart, value0)\n        mstore(add(headStart, 32), value1)\n        mstore(add(headStart, 64), value2)\n        mstore(add(headStart, 96), value3)\n        abi_encode_struct_RadonSLA_storage(value4, add(headStart, 128))\n    }\n    function checked_sub_t_uint256(x, y) -> diff\n    {\n        diff := sub(x, y)\n        if gt(diff, x) { panic_error_0x11() }\n    }\n    function abi_encode_tuple_t_uint256_t_bytes32__to_t_uint256_t_bytes32__fromStack_reversed(headStart, value1, value0) -> tail\n    {\n        tail := add(headStart, 64)\n        mstore(headStart, value0)\n        mstore(add(headStart, 32), value1)\n    }\n    function abi_encode_tuple_t_uint256_t_uint16__to_t_uint256_t_uint16__fromStack_reversed(headStart, value1, value0) -> tail\n    {\n        tail := add(headStart, 64)\n        mstore(headStart, value0)\n        mstore(add(headStart, 32), and(value1, 0xffff))\n    }\n    function checked_add_t_uint16(x, y) -> sum\n    {\n        let _1 := 0xffff\n        sum := add(and(x, _1), and(y, _1))\n        if gt(sum, _1) { panic_error_0x11() }\n    }\n    function checked_mul_t_uint256(x, y) -> product\n    {\n        product := mul(x, y)\n        if iszero(or(iszero(x), eq(y, div(product, x)))) { panic_error_0x11() }\n    }\n    function checked_div_t_uint256(x, y) -> r\n    {\n        if iszero(y) { panic_error_0x12() }\n        r := div(x, y)\n    }\n    function panic_error_0x01()\n    {\n        mstore(0, shl(224, 0x4e487b71))\n        mstore(4, 0x01)\n        revert(0, 0x24)\n    }\n    function validator_revert_uint8(value)\n    {\n        if iszero(eq(value, and(value, 0xff))) { revert(0, 0) }\n    }\n    function update_storage_value_offset_0t_struct$_RadonSLA_$23503_calldata_ptr_to_t_struct$_RadonSLA_$23503_storage(slot, value)\n    {\n        let value_1 := calldataload(value)\n        validator_revert_uint8(value_1)\n        let _1 := and(value_1, 0xff)\n        let _2 := sload(slot)\n        sstore(slot, or(and(_2, not(255)), _1))\n        let value_2 := calldataload(add(value, 32))\n        validator_revert_uint64(value_2)\n        sstore(slot, or(or(and(_2, not(0xffffffffffffffffff)), _1), and(shl(8, value_2), 0xffffffffffffffff00)))\n    }\n    function abi_encode_tuple_t_stringliteral_c540643114d8824fc67c5a3bcabc32e042f198b987f1133b221fc24db5c15b9a__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n    {\n        mstore(headStart, 32)\n        mstore(add(headStart, 32), 50)\n        mstore(add(headStart, 64), \"Witnet: tried to decode value fr\")\n        mstore(add(headStart, 96), \"om errored result.\")\n        tail := add(headStart, 128)\n    }\n    function abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n    {\n        tail := add(headStart, 64)\n        mstore(headStart, value0)\n        mstore(add(headStart, 32), value1)\n    }\n    function abi_encode_tuple_t_stringliteral_225559eb8402045bea7ff07c35d0ad8c0547830223ac1c21d44fb948d6896ebc__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n    {\n        mstore(headStart, 32)\n        mstore(add(headStart, 32), 41)\n        mstore(add(headStart, 64), \"Ownable2Step: caller is not the \")\n        mstore(add(headStart, 96), \"new owner\")\n        tail := add(headStart, 128)\n    }\n    function abi_decode_tuple_t_bytes_memory_ptr_fromMemory(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        let offset := mload(headStart)\n        if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n        value0 := abi_decode_bytes_fromMemory(add(headStart, offset), dataEnd)\n    }\n    function abi_decode_tuple_t_uint64(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        let value := calldataload(headStart)\n        validator_revert_uint64(value)\n        value0 := value\n    }\n    function abi_decode_tuple_t_uint8(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        let value := calldataload(headStart)\n        validator_revert_uint8(value)\n        value0 := value\n    }\n    function increment_t_uint256(value) -> ret\n    {\n        if eq(value, not(0)) { panic_error_0x11() }\n        ret := add(value, 1)\n    }\n    function checked_add_t_uint256(x, y) -> sum\n    {\n        sum := add(x, y)\n        if gt(x, sum) { panic_error_0x11() }\n    }\n    function abi_encode_tuple_t_uint8__to_t_uint256__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        mstore(headStart, and(value0, 0xff))\n    }\n    function abi_encode_tuple_t_uint8_t_uint8__to_t_uint256_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n    {\n        tail := add(headStart, 64)\n        mstore(headStart, and(value0, 0xff))\n        mstore(add(headStart, 32), and(value1, 0xff))\n    }\n    function abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n    {\n        let length := mload(value0)\n        copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n        end := add(pos, length)\n    }\n    function abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n    {\n        let length := mload(value0)\n        copy_memory_to_memory_with_cleanup(add(value0, 0x20), pos, length)\n        let end_1 := add(pos, length)\n        let length_1 := mload(value1)\n        copy_memory_to_memory_with_cleanup(add(value1, 0x20), end_1, length_1)\n        end := add(end_1, length_1)\n    }\n    function abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed(headStart, value1, value0) -> tail\n    {\n        tail := add(headStart, 64)\n        mstore(headStart, value0)\n        mstore(add(headStart, 32), value1)\n    }\n    function abi_encode_tuple_t_uint64__to_t_uint256__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        mstore(headStart, and(value0, 0xffffffffffffffff))\n    }\n}",
      "id": 84,
      "language": "Yul",
      "name": "#utility.yul"
    }
  ],
  "sourceMap": "452:154:73:-:0;;;513:90;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;578:4;584:10;578:4;584:10;;1269:95:1;;1322:31;;-1:-1:-1;;;1322:31:1;;1350:1;1322:31;;;620:51:84;593:18;;1322:31:1;;;;;;;;1269:95;1373:32;1392:12;1373:18;:32::i;:::-;1225:187;-1:-1:-1;;;;;;;;1219:47:16;;:4;-1:-1:-1;;;;;1219:10:16;;:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;;1219:47:16;;1197:134;;;;-1:-1:-1;;;1197:134:16;;1179:2:84;1197:134:16;;;1161:21:84;1218:2;1198:18;;;1191:30;1257:34;1237:18;;;1230:62;-1:-1:-1;;;1308:18:84;;;1301:35;1353:19;;1197:134:16;977:401:84;1197:134:16;-1:-1:-1;;;;;1342:15:16;;;;;1389:355;;;;;;;;;1543:2;1389:355;;1696:11;1389:355;;;;;1368:18;:376;;;-1:-1:-1;;;;;;1368:376:16;;;;;;1765:33;:38;;-1:-1:-1;;1765:38:16;1801:2;1765:38;;;1333:176:23::2;::::0;1356:30;::::2;::::0;;:101:::2;;;-1:-1:-1::0;;;;;;;;1407:50:23::2;;:7;-1:-1:-1::0;;;;;1407:13:23::2;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;;1407:50:23::2;;1356:101;1333:176;::::0;;;;::::2;::::0;;;::::2;::::0;;::::2;;::::0;::::2;::::0;:8:::2;:176::i;:::-;1520:32;1555:8;:6;:8::i;:::-;-1:-1:-1::0;;;;;1555:17:23::2;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1684:16;::::0;;1698:1:::2;1684:16:::0;;;;;::::2;::::0;;;1520:54;;-1:-1:-1;1653:28:23::2;::::0;1684:16;::::2;::::0;;::::2;::::0;;::::2;::::0;::::2;-1:-1:-1::0;;1913:18:23::2;::::0;;1929:1:::2;1913:18:::0;;;::::2;::::0;::::2;::::0;;;1653:47;;-1:-1:-1;;;;;;1732:30:23;::::2;::::0;::::2;::::0;-1:-1:-1;1781:34:23::2;::::0;1913:18:::2;::::0;::::2;;;:::i;:::-;;;;;;;;;;;;;;;;;1732:289;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1715:11;1727:1;1715:14;;;;;;;;:::i;:::-;;;;;;:306;;;::::0;::::2;2036:36;2087:19;2109:9;-1:-1:-1::0;;;;;2109:28:23::2;;2138:144;;;;;;;;2185:31;2138:144;;;;;;;;:::i;:::-;;;;;2244:8;2138:144;;::::0;2109:174:::2;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2087:196;;2298:14;2315:9;-1:-1:-1::0;;;;;2315:28:23::2;;2344:158;;;;;;;;2391:45;2344:158:::0;::::2;;;;;;;:::i;:::-;;;;;2464:8;2344:158;;::::0;2315:188:::2;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2298:205;;2534:9;-1:-1:-1::0;;;;;2534:28:23::2;;2581:11;2611;2641:6;2666:2;2734:11;:18;-1:-1:-1::0;;;;;2719:34:23::2;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2534:234;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2518:250;::::0;-1:-1:-1;452:154:73;;-1:-1:-1;;;;;;;452:154:73;1478:156:79;1568:13;1561:20;;-1:-1:-1;;;;;;1561:20:79;;;1592:34;1617:8;1592:24;:34::i;:::-;1478:156;:::o;19954:204:23:-;20095:10;20090:61;;20122:17;20130:8;20122:7;:17::i;:::-;19954:204;;:::o;3544:155::-;3634:12;3671:20;2377:8:16;;;2298:95;3671:20:23;3664:27;;3544:155;:::o;2912:187:1:-;2985:16;3004:6;;-1:-1:-1;;;;;3020:17:1;;;-1:-1:-1;;;;;;3020:17:1;;;;;;3052:40;;3004:6;;;;;;;3052:40;;2985:16;3052:40;2975:124;2912:187;:::o;20166:235:23:-;3366:29;;;;;;;;;;;;-1:-1:-1;;;3366:29:23;;;;20358:8;20274:107;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;20274:107:23;;;;;;;;;;-1:-1:-1;;;20246:147:23;;;;;;;:::i;452:154:73:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:151:84:-;-1:-1:-1;;;;;109:31:84;;99:42;;89:70;;155:1;152;145:12;170:299;268:6;321:2;309:9;300:7;296:23;292:32;289:52;;;337:1;334;327:12;289:52;369:9;363:16;388:51;433:5;388:51;:::i;:::-;458:5;170:299;-1:-1:-1;;;170:299:84:o;682:290::-;751:6;804:2;792:9;783:7;779:23;775:32;772:52;;;820:1;817;810:12;772:52;846:16;;-1:-1:-1;;;;;;891:32:84;;881:43;;871:71;;938:1;935;928:12;1689:127;1750:10;1745:3;1741:20;1738:1;1731:31;1781:4;1778:1;1771:15;1805:4;1802:1;1795:15;1821:127;1882:10;1877:3;1873:20;1870:1;1863:31;1913:4;1910:1;1903:15;1937:4;1934:1;1927:15;1953:250;2038:1;2048:113;2062:6;2059:1;2056:13;2048:113;;;2138:11;;;2132:18;2119:11;;;2112:39;2084:2;2077:10;2048:113;;;-1:-1:-1;;2195:1:84;2177:16;;2170:27;1953:250::o;2208:271::-;2250:3;2288:5;2282:12;2315:6;2310:3;2303:19;2331:76;2400:6;2393:4;2388:3;2384:14;2377:4;2370:5;2366:16;2331:76;:::i;:::-;2461:2;2440:15;-1:-1:-1;;2436:29:84;2427:39;;;;2468:4;2423:50;;2208:271;-1:-1:-1;;2208:271:84:o;2646:2087::-;3211:4;3251:1;3243:6;3240:13;3230:47;;3257:18;;:::i;:::-;3304:6;3293:9;3286:25;3330:2;3368:3;3363:2;3352:9;3348:18;3341:31;3391:1;3429;3423:3;3412:9;3408:19;3401:30;3450:2;3488:3;3483:2;3472:9;3468:18;3461:31;3529:1;3523:3;3512:9;3508:19;3501:30;3574:3;3563:9;3559:19;3614:3;3609:2;3598:9;3594:18;3587:31;3638:11;3678:6;3672:13;3714:6;3701:11;3694:27;3740:3;3730:13;;3774:2;3763:9;3759:18;3752:25;;3836:2;3826:6;3823:1;3819:14;3808:9;3804:30;3800:39;3786:53;;3874:2;3866:6;3862:15;3895:1;3905:708;3919:6;3916:1;3913:13;3905:708;;;3984:22;;;-1:-1:-1;;3980:37:84;3968:50;;4041:13;;3988:6;4141:15;;;4211:2;4226:278;4242:4;4237:3;4234:13;4226:278;;;4327:6;4319;4315:19;4308:5;4301:34;4362:42;4397:6;4386:8;4380:15;4362:42;:::i;:::-;4433:17;;;;4476:14;;;;4352:52;-1:-1:-1;4266:1:84;4257:11;4226:278;;;-1:-1:-1;4527:6:84;-1:-1:-1;;;4591:12:84;;;;4556:15;;;;3941:1;3934:9;3905:708;;;-1:-1:-1;;;;4650:22:84;;;4644:3;4629:19;;4622:51;2561:1;2549:14;;-1:-1:-1;;;2588:4:84;2579:14;;2572:35;2632:2;2623:12;;4682:45;2646:2087;-1:-1:-1;;;;;;;;2646:2087:84:o;4738:184::-;4808:6;4861:2;4849:9;4840:7;4836:23;4832:32;4829:52;;;4877:1;4874;4867:12;4829:52;-1:-1:-1;4900:16:84;;4738:184;-1:-1:-1;4738:184:84:o;4927:127::-;4988:10;4983:3;4979:20;4976:1;4969:31;5019:4;5016:1;5009:15;5043:4;5040:1;5033:15;5059:1310;5213:4;5242:2;5271;5260:9;5253:21;5312:2;5301:9;5297:18;5340:6;5334:13;5373:2;5369;5366:10;5356:44;;5380:18;;:::i;:::-;5416;;;5409:30;5474:15;;;5468:22;5509:4;5529:20;;;5522:34;;;5605:19;;5633:22;;;;5686:3;5736:1;5732:14;;;5717:30;;5713:40;;;5776:21;;;;5671:19;;;;5815:1;5825:515;5839:6;5836:1;5833:13;5825:515;;;5904:22;;;-1:-1:-1;;5900:37:84;5888:50;;5961:13;;5997:9;;6036:2;6029:10;;6019:44;;6043:18;;:::i;:::-;6076;;6135:11;;6129:18;6167:15;;;6160:27;;;6210:50;6244:15;;;6129:18;6210:50;:::i;:::-;6200:60;-1:-1:-1;;6283:15:84;;;;6318:12;;;;5861:1;5854:9;5825:515;;;-1:-1:-1;6357:6:84;;5059:1310;-1:-1:-1;;;;;;;;5059:1310:84:o;6374:2225::-;6804:3;6817:22;;;6888:13;;6789:19;;;6910:22;;;6756:4;;6986;;6963:3;6948:19;;;7013:15;;;6756:4;7056:169;7070:6;7067:1;7064:13;7056:169;;;7131:13;;7119:26;;7165:12;;;;7200:15;;;;7092:1;7085:9;7056:169;;;7060:3;;;7261:6;7256:2;7245:9;7241:18;7234:34;7304:6;7299:2;7288:9;7284:18;7277:34;7359:6;7351;7347:19;7342:2;7331:9;7327:18;7320:47;7413:9;7408:3;7404:19;7398:3;7387:9;7383:19;7376:48;7446:3;7480:6;7474:13;7508:8;7503:3;7496:21;7544:2;7539:3;7535:12;7526:21;;7566:1;7622:2;7610:8;7607:1;7603:16;7598:3;7594:26;7590:35;7662:2;7654:6;7650:15;7685:1;7695:875;7711:8;7706:3;7703:17;7695:875;;;-1:-1:-1;;7814:16:84;;;7810:25;;7796:40;;7859:15;;7935:9;;7957:24;;;8113:11;;;;8003:15;;;;8061:17;;;8049:30;;8045:39;;8148:1;8162:291;8178:8;8173:3;8170:17;8162:291;;;8280:2;8271:6;8263;8259:19;8255:28;8248:5;8241:43;8311:42;8346:6;8335:8;8329:15;8311:42;:::i;:::-;8382:17;;;;8425:14;;;;8301:52;-1:-1:-1;8206:1:84;8197:11;8162:291;;;-1:-1:-1;8546:14:84;;;;8476:6;-1:-1:-1;;;8507:17:84;;;;-1:-1:-1;;7739:1:84;7730:11;7695:875;;;-1:-1:-1;8587:6:84;;6374:2225;-1:-1:-1;;;;;;;;;;;;;6374:2225:84:o;8604:641::-;8884:3;8922:6;8916:13;8938:66;8997:6;8992:3;8985:4;8977:6;8973:17;8938:66;:::i;:::-;-1:-1:-1;;;9026:16:84;;;9051:19;;;9095:13;;9117:78;9095:13;9182:1;9171:13;;9164:4;9152:17;;9117:78;:::i;:::-;9215:20;9237:1;9211:28;;8604:641;-1:-1:-1;;;;8604:641:84:o;9250:220::-;9399:2;9388:9;9381:21;9362:4;9419:45;9460:2;9449:9;9445:18;9437:6;9419:45;:::i;9250:220::-;452:154:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;",
  "deployedSourceMap": "452:154:73:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2841:32:23;;;;;;;;;;;;;;-1:-1:-1;;;2841:32:23;;;:7;:32::i;:::-;452:154:73;;2937:325:23;3019:42;3051:7;;3038:22;;3019:18;:42::i;:::-;3076:47;3095:27;3108:7;;3095:27;;;3076:18;:47::i;:::-;3138:48;3157:28;3170:7;;3157:28;;;3138:18;:48::i;:::-;3201;3220:28;3233:7;;3220:28;;;3201:18;:48::i;:::-;2952:308;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2937:7;:325::i;7974:1714::-;;;;;;;;;;-1:-1:-1;7974:1714:23;;;;;:::i;:::-;;:::i;:::-;;;;1760:25:84;;;-1:-1:-1;;;;;1821:31:84;;;1816:2;1801:18;;1794:59;1869:18;;;1862:34;1927:2;1912:18;;1905:34;1747:3;1732:19;7974:1714:23;;;;;;;;15348:434;;;;;;;;;;-1:-1:-1;15348:434:23;;;;;:::i;:::-;;:::i;:::-;;;2636:10:84;2624:23;;;2606:42;;2594:2;2579:18;15348:434:23;2462:192:84;3544:155:23;;;;;;;;;;-1:-1:-1;2377:8:16;3544:155:23;;;-1:-1:-1;;;;;2843:32:84;;;2825:51;;2813:2;2798:18;3544:155:23;2659:223:84;1113:47:23;;;;;;;;;;;;;;;;;;3033:25:84;;;3021:2;3006:18;1113:47:23;2887:177:84;16070:1381:23;;;:::i;2293:101:1:-;;;;;;;;;;;;;:::i;13209:1057:23:-;;;;;;;;;;-1:-1:-1;13209:1057:23;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;18214:162::-;;;;;;;;;;;;;:::i;5180:302::-;;;;;;;;;;-1:-1:-1;5180:302:23;;;;;:::i;:::-;;:::i;18569:172::-;;;;;;;;;;-1:-1:-1;18686:7:23;1710:6:1;-1:-1:-1;;;;;1710:6:1;18569:172:23;3544:155;9775:170;;;;;;;;;;;;;:::i;17791:169::-;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;;;;;;17927:25:23;;;;;;;17934:18;17927:25;;;;;;;-1:-1:-1;;;;;17927:25:23;;;;;;;;;;;;17791:169;;4144:43:84;;;4229:24;;4225:49;4203:20;;;4196:79;;;;4117:18;17791:169:23;3944:337:84;14480:237:23;;;;;;;;;;-1:-1:-1;14480:237:23;;;;;:::i;:::-;;:::i;:::-;;;4451:14:84;;4444:22;4426:41;;4414:2;4399:18;14480:237:23;4286:187:84;10566:500:23;;;;;;;;;;-1:-1:-1;10566:500:23;;;;;:::i;:::-;;:::i;:::-;;;;4680:25:84;;;4736:2;4721:18;;4714:34;;;;4764:18;;;4757:34;4668:2;4653:18;10566:500:23;4478:319:84;4104:363:23;;;;;;;;;;-1:-1:-1;4104:363:23;;;;;:::i;:::-;;:::i;3411:125::-;;;;;;;;;;-1:-1:-1;3411:125:23;;-1:-1:-1;;;4946:52:84;;4934:2;4919:18;3411:125:23;4802:202:84;19172:225:23;;;;;;;;;;-1:-1:-1;19172:225:23;;;;;:::i;:::-;;:::i;3278:125::-;;;;;;;;;;-1:-1:-1;3366:29:23;;;;;;;;;;;-1:-1:-1;;;3366:29:23;;;;3278:125;;;;3366:29;3278:125;:::i;12067:451::-;;;;;;;;;;-1:-1:-1;12067:451:23;;;;;:::i;:::-;;:::i;19405:295::-;;;;;;;;;;-1:-1:-1;19405:295:23;;;;;:::i;:::-;;:::i;11354:418::-;;;;;;;;;;-1:-1:-1;11354:418:23;;;;;:::i;:::-;;:::i;18749:196::-;;;;;;;;;;;;;:::i;18384:177::-;;;;;;;;;;-1:-1:-1;18520:33:23;;18384:177;;18520:33;;;;6031:38:84;;6019:2;6004:18;18384:177:23;5887:188:84;18957:207:23;;;;;;;;;;-1:-1:-1;18957:207:23;;;;;:::i;:::-;;:::i;20166:235::-;3366:29;;;;;;;;;;;;-1:-1:-1;;;3366:29:23;;;;20358:8;20274:107;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;20274:107:23;;;;;;;;;;-1:-1:-1;;;20246:147:23;;;;;;;:::i;:::-;;;;;;;;19878:397:64;19999:12;;;20009:1;19999:12;;;;;;;;;19950:13;;19981:15;;19999:12;;;;;;;;;;;-1:-1:-1;;19981:30:64;-1:-1:-1;20022:8:64;20039:7;20044:2;20039;:7;:::i;:::-;20033:19;;20050:2;20033:19;:::i;:::-;20022:30;-1:-1:-1;20063:8:64;20080:7;20085:2;20080;:7;:::i;:::-;20074:19;;20091:2;20074:19;:::i;:::-;20063:30;;20113:2;20108;:7;;;20104:33;;;20130:7;20136:1;20130:7;;:::i;:::-;;;20104:33;20157:2;20152;:7;;;20148:33;;;20174:7;20180:1;20174:7;;:::i;:::-;;;20148:33;20207:2;20200:10;;20192:2;20195:1;20192:5;;;;;;;;:::i;:::-;;;;:18;-1:-1:-1;;;;;20192:18:64;;;;;;;;;20236:2;20229:10;;20221:2;20224:1;20221:5;;;;;;;;:::i;:::-;;;;:18;-1:-1:-1;;;;;20221:18:64;;;;;;;;-1:-1:-1;20264:2:64;;19878:397;-1:-1:-1;;;;19878:397:64:o;7974:1714:23:-;8112:31;8158:30;8203;8248:34;8314:11;:9;:11::i;:::-;:36;;;;:22;;;;;:36;;;;;:50;:55;;8310:138;;8401:35;8423:12;8401:21;:35::i;:::-;8386:50;;8310:138;8460:29;8492:11;:9;:11::i;:::-;:22;;:36;8515:12;8492:36;;;;;;;;;;;8460:68;;8539:22;8564:11;:25;;;8539:50;;8600:85;8623:14;8641:1;8623:19;;8600:85;;;;;;;;;;;;;-1:-1:-1;;;8600:85:23;;;:8;:85::i;:::-;8740:47;;-1:-1:-1;;;8740:47:23;;;;;3033:25:84;;;8706:31:23;;8740:8;-1:-1:-1;;;;;8740:31:23;;;;3006:18:84;;8740:47:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8706:81;-1:-1:-1;8813:29:23;8802:7;:40;;;;;;;;:::i;:::-;;8798:883;;8907:41;;-1:-1:-1;;;8907:41:23;;;;;3033:25:84;;;8859:45:23;;8907:8;-1:-1:-1;;;;;8907:25:23;;;;3006:18:84;;8907:41:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8907:41:23;;;;;;;;;;;;:::i;:::-;8859:89;;8988:20;:36;;;8963:61;;;;9064:20;:36;;;9039:61;;9144:20;:29;;;-1:-1:-1;;;;;9115:58:23;;;9214:65;:53;:20;:36;;;:51;:53::i;:::-;:63;:65::i;:::-;9188:91;;8844:449;8798:883;;;9314:29;9303:7;:40;;;;;;;;:::i;:::-;;9299:382;;9390:21;;;;9426:104;;;;;;;;;;;;-1:-1:-1;;;9426:104:23;;;;;;9453:24;;;;9426:8;:104::i;:::-;9552:46;9578:19;9552:25;:46::i;:::-;9545:53;;;;;;;;;;;;;;9299:382;9641:28;;;;;;;;;;;;;;-1:-1:-1;;;9641:28:23;;;:7;:28::i;:::-;8299:1389;;;7974:1714;;;;;;:::o;15348:434::-;15485:6;15516:258;15559:6;15580;15662:10;15695:34;15716:12;15695:20;:34::i;:::-;15629:119;;;-1:-1:-1;;;;;10735:32:84;;;15629:119:23;;;10717:51:84;10784:18;;10777:34;10690:18;;15629:119:23;;;;;;;;;;;;15601:162;;;;;;15516:28;:258::i;:::-;15509:265;;15348:434;;;;;;:::o;3671:20::-;3664:27;;3544:155;:::o;16070:1381::-;16161:24;16240:12;16207:11;:9;:11::i;:::-;:30;:45;16203:1072;;;16288:9;16269:28;;16364:19;16386:8;-1:-1:-1;;;;;16386:20:23;;16432:16;16482:13;16514:18;16386:163;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16364:185;;16612:29;16644:11;:9;:11::i;:::-;16667:12;16644:36;;;;:22;;;;;:36;;;;;16695:42;;;16644:36;-1:-1:-1;16809:11:23;:9;:11::i;:::-;:30;16854:21;;;:34;;;16809:30;-1:-1:-1;16950:12:23;16903:11;:9;:11::i;:::-;:34;;;;:22;;;;;:34;;;;;:44;;:59;17010:12;16977:11;:9;:11::i;:::-;:45;17071:192;;;;;;17101:12;;17132:11;;17162:16;;17197:14;;17230:18;;17071:192;:::i;:::-;;;;;;;;16254:1021;;;16203:1072;17348:9;17329:16;:28;17325:119;;;17382:10;17374:58;17403:28;17415:16;17403:9;:28;:::i;:::-;17374:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17325:119;16070:1381;:::o;2293:101:1:-;1531:13;:11;:13::i;:::-;2357:30:::1;2384:1;2357:18;:30::i;:::-;2293:101::o:0;13209:1057:23:-;13325:23;13370:11;:9;:11::i;:::-;:36;;;;:22;;;;;:36;;;;;:50;:55;;13366:138;;13457:35;13479:12;13457:21;:35::i;:::-;13442:50;;13366:138;13514:22;13539:11;:9;:11::i;:::-;:36;;;;:22;;;;;:36;;;;;:50;;-1:-1:-1;13604:19:23;;;13600:659;;-1:-1:-1;13647:28:23;;13209:1057;-1:-1:-1;;13209:1057:23:o;13600:659::-;13752:47;;-1:-1:-1;;;13752:47:23;;;;;3033:25:84;;;13718:31:23;;13752:8;-1:-1:-1;;;;;13752:31:23;;;;3006:18:84;;13752:47:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13718:81;-1:-1:-1;13829:29:23;13818:7;:40;;;;;;;;:::i;:::-;;13814:434;;13879:27;13909:11;:9;:11::i;:::-;:36;;;;:22;;;;;:36;;;;;:46;;;;-1:-1:-1;13978:24:23;;13974:204;;14034:39;14053:19;14034:18;:39::i;:::-;14027:46;13209:1057;-1:-1:-1;;;;;13209:1057:23:o;13974:204::-;-1:-1:-1;14129:29:23;;13209:1057;-1:-1:-1;;;;13209:1057:23:o;13974:204::-;13860:333;13814:434;13703:556;13355:911;13209:1057;;;:::o;18214:162::-;18338:30;:28;:30::i;5180:302::-;5297:7;5382:12;5413:35;5435:12;5413:21;:35::i;:::-;5353:110;;;;;;12424:25:84;;;;12465:18;;12458:34;12397:18;;5353:110:23;;;;;;;;;;;;5329:145;;;;;;5322:152;;5180:302;;;:::o;9775:170::-;9875:7;9907:11;:9;:11::i;:::-;:30;;9775:170;-1:-1:-1;9775:170:23:o;14480:237::-;14589:4;14669:29;14633:32;14652:12;14633:18;:32::i;:::-;:65;;;;;;;;:::i;:::-;;;14480:237;-1:-1:-1;;14480:237:23:o;10566:500::-;10695:22;10732:27;10774;10829:29;10861:11;:9;:11::i;:::-;:36;;;;:22;;;;:36;;;;;;10925:25;;10983:21;;;;11037;;;;;10925:25;;10983:21;;11037;-1:-1:-1;10566:500:23;-1:-1:-1;;;10566:500:23:o;4104:363::-;4329:112;;-1:-1:-1;;;4329:112:23;;;;;12675:25:84;;;4419:2:23;12716:18:84;;;12709:47;4221:7:23;;4456:3;;-1:-1:-1;;;;;4329:8:23;:24;;;;12648:18:84;;4329:112:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4275:33;;4269:39;;4275:33;;4269:3;:39;:::i;:::-;4268:173;;;;;;:::i;:::-;4253:206;;;;:::i;:::-;4246:213;4104:363;-1:-1:-1;;4104:363:23:o;19172:225::-;1531:13:1;:11;:13::i;:::-;19327:33:23::1;:62:::0;;-1:-1:-1;;19327:62:23::1;;::::0;;;::::1;::::0;;;::::1;::::0;;19172:225::o;12067:451::-;12185:7;12232:1;12217:12;:16;12210:24;;;;:::i;:::-;12245:15;12263:11;:9;:11::i;:::-;:30;;-1:-1:-1;12313:22:23;;;12312:187;;12426:73;12443:12;12457:11;:9;:11::i;:::-;:31;;;;:22;;;;:31;;;;;:41;;12426:16;:73::i;:::-;12312:187;;19405:295;1531:13:1;:11;:13::i;:::-;19558:87:23::1;19581:25;:15;:23;:25::i;:::-;19558:87;;;;;;;;;;;;;-1:-1:-1::0;;;19558:87:23::1;;::::0;:8:::1;:87::i;:::-;19677:15:::0;19656:18:::1;:36;19677:15:::0;19656:18;:36:::1;:::i;:::-;-1:-1:-1::0;;;19405:295:23:o;11354:418::-;11472:7;11506:11;:9;:11::i;:::-;:36;;;;:22;;;;;:36;;;;;:50;:55;;11505:248;;11691:62;11708:12;11722:11;:9;:11::i;:::-;:30;11691:16;:62::i;:::-;11505:248;;;11578:11;:9;:11::i;:::-;:36;;;;:22;;:36;;-1:-1:-1;11578:36:23;;;:46;;;;11354:418::o;18749:196::-;18878:7;18910:27;887:13:79;;-1:-1:-1;;;;;887:13:79;;807:101;18957:207:23;1531:13:1;:11;:13::i;:::-;19120:36:23::1;19146:9;19120:25;:36::i;:::-;18957:207:::0;:::o;21511:145::-;21625:13;;21511:145::o;19954:204::-;20095:10;20090:61;;20122:17;20130:8;20122:7;:17::i;:::-;19954:204;;:::o;22195:250:64:-;22284:20;;:::i;:::-;22322:32;22357:31;22378:9;22357:20;:31::i;:::-;22322:66;;22406:31;22427:9;22406:20;:31::i;26954:181::-;27069:7;27043:6;25524;:14;;;25516:77;;;;-1:-1:-1;;;25516:77:64;;;;;;;:::i;:::-;27101:26:::1;27111:15;27119:6;27111:7;:15::i;:::-;27101:9;:26::i;4316:338:70:-:0;4430:6;4455:15;-1:-1:-1;;;;;4534:4:70;4540:5;4523:23;;;;;;;;12424:25:84;;;12480:2;12465:18;;12458:34;12412:2;12397:18;;12250:248;4523:23:70;;;;-1:-1:-1;;4523:23:70;;;;;;;;;4495:66;;4523:23;4495:66;;;;4473:123;;-1:-1:-1;4642:3:70;4622:15;;;;4473:123;4622:15;:::i;:::-;4621:24;;;4316:338;-1:-1:-1;;;;;4316:338:70:o;1796:162:1:-;18686:7:23;1710:6:1;-1:-1:-1;;;;;1710:6:1;735:10:3;1855:23:1;1851:101;;1901:40;;-1:-1:-1;;;1901:40:1;;735:10:3;1901:40:1;;;2825:51:84;2798:18;;1901:40:1;2659:223:84;1478:156:79;1568:13;1561:20;;-1:-1:-1;;;;;;1561:20:79;;;1592:34;1617:8;1592:24;:34::i;1719:245::-;735:10:3;;1816:14:79;:12;:14::i;:::-;-1:-1:-1;;;;;1816:24:79;;1812:108;;1857:51;;-1:-1:-1;;;1857:51:79;;14910:2:84;1857:51:79;;;14892:21:84;14949:2;14929:18;;;14922:30;14988:34;14968:18;;;14961:62;-1:-1:-1;;;15039:18:84;;;15032:39;15088:19;;1857:51:79;14708:405:84;1812:108:79;1930:26;1949:6;1930:18;:26::i;5494:1242:23:-;5597:7;5626:11;:9;:11::i;:::-;:36;;;;:22;;;;;:36;;;;;:50;:55;;5622:138;;5713:35;5735:12;5713:21;:35::i;:::-;5698:50;;5622:138;5772:29;5804:11;:9;:11::i;:::-;:22;;:36;5827:12;5804:36;;;;;;;;;;;5772:68;;5851:22;5876:11;:25;;;5851:50;;5912:85;5935:14;5953:1;5935:19;;5912:85;;;;;;;;;;;;;-1:-1:-1;;;5912:85:23;;;:8;:85::i;:::-;6052:47;;-1:-1:-1;;;6052:47:23;;;;;3033:25:84;;;6018:31:23;;6052:8;-1:-1:-1;;;;;6052:31:23;;;;3006:18:84;;6052:47:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6018:81;-1:-1:-1;6125:29:23;6114:7;:40;;;;;;;;:::i;:::-;;6110:619;;6197:48;;-1:-1:-1;;;6197:48:23;;;;;3033:25:84;;;6197:121:23;;:87;;-1:-1:-1;;;;;6197:8:23;:32;;;;3006:18:84;;6197:48:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6197:48:23;;;;;;;;;;;;:::i;:::-;:85;:87::i;6110:619::-;6366:29;6355:7;:40;;;;;;;;:::i;:::-;;6351:378;;6442:21;;;;6478:104;;;;;;;;;;;;-1:-1:-1;;;6478:104:23;;;;;;6505:24;;;;6478:8;:104::i;:::-;6604:42;6626:19;6604:21;:42::i;:::-;6597:49;5494:1242;-1:-1:-1;;;;;;5494:1242:23:o;6351:378::-;6689:28;;;;;;;;;;;;;;-1:-1:-1;;;6689:28:23;;;:7;:28::i;21066:256::-;21149:7;21188;21178;:17;21177:126;;21235:68;21252:7;21261:11;:9;:11::i;:::-;:31;;;;:22;;;;:31;;;;;:41;;21235:16;:68::i;21177:126::-;-1:-1:-1;21212:7:23;21169:145;-1:-1:-1;21066:256:23:o;3081:220:70:-;3144:4;;3183:24;;;;;;;;:::i;:::-;-1:-1:-1;;;;;3183:28:70;;:71;;;;-1:-1:-1;3253:1:70;3233:17;;;;:3;:17;:::i;:::-;:21;;;3183:71;:99;;;;-1:-1:-1;3279:3:70;3258:17;;;;:3;:17;:::i;:::-;:24;;;;3161:132;3081:220;-1:-1:-1;;3081:220:70:o;20587:292:23:-;20670:7;20710;20699;:18;;20698:162;;20792:68;20809:7;20818:11;:9;:11::i;:::-;:31;;;;:22;;;;:31;;;;;:41;;20792:16;:68::i;20698:162::-;20735:11;:9;:11::i;:::-;:31;;;;:22;;:31;;-1:-1:-1;20735:31:23;;;:41;;;;20587:292;-1:-1:-1;20587:292:23:o;2543:215:1:-;1531:13;:11;:13::i;:::-;-1:-1:-1;;;;;2627:22:1;::::1;2623:91;;2672:31;::::0;-1:-1:-1;;;2672:31:1;;2700:1:::1;2672:31;::::0;::::1;2825:51:84::0;2798:18;;2672:31:1::1;2659:223:84::0;2488:204:66;2563:11;;:::i;:::-;2622:32;;;;;;;;;;;;2586:33;2622:32;;;;2668:18;2622:32;2668:10;:18::i;31124:414:64:-;31223:20;;:::i;:::-;-1:-1:-1;31470:8:64;;;;31502:28;;;;;;;;;-1:-1:-1;;;;;31470:14:64;;;31482:2;31470:14;;31502:28;;;;;;;;;;31124:414::o;26428:181::-;26540:12;26515:6;25524;:14;;;25516:77;;;;-1:-1:-1;;;25516:77:64;;;;;;;:::i;:::-;26577:24:::1;:6;:12;;;:22;:24::i;22867:122::-:0;22930:7;22957:24;22970:6;22978:2;22957:12;:24::i;2912:187:1:-;2985:16;3004:6;;-1:-1:-1;;;;;3020:17:1;;;-1:-1:-1;;;;;;3020:17:1;;;;;;3052:40;;3004:6;;;;;;;3052:40;;2985:16;3052:40;2975:124;2912:187;:::o;3010:1033:66:-;3120:11;;:::i;:::-;1949;;:18;3098:6;;1949:11;:23;1945:79;;1990:26;;-1:-1:-1;;;1990:26:66;;;;;;;;;;;1945:79;3143:17:::1;3185:3;3143:17:::0;-1:-1:-1;;;;;3143:17:66;3293:4:::1;3304:492;3311:8;3304:492;;;3401:18;:6;:16;:18::i;:::-;3387:32:::0;-1:-1:-1;3428:6:66;::::1;::::0;::::1;:::i;:::-;3455:16:::0;3470:1:::1;3455:16:::0;;;;;-1:-1:-1;3518:4:66::1;3504:18:::0;::::1;::::0;-1:-1:-1;3428:6:66;-1:-1:-1;;;;3569:27:66;;3565:224:::1;;3624:13;::::0;::::1;::::0;3654:41:::1;3624:6:::0;3673:21;3654:10:::1;:41::i;:::-;3648:47;;3729:7;3713:6;:13;;;:23;;;;:::i;:::-;3706:30;::::0;;::::1;:::i;:::-;;;3598:148;3304:492;;3565:224;-1:-1:-1::0;3774:5:66::1;3304:492;;;1320:1;3806:35;::::0;::::1;;3802:96;;;3859:31;::::0;-1:-1:-1;;;3859:31:66;;16400:4:84;16388:17;;3859:31:66::1;::::0;::::1;16370:36:84::0;16343:18;;3859:31:66::1;16226:186:84::0;3802:96:66::1;-1:-1:-1::0;3911:126:66::1;::::0;;::::1;::::0;::::1;::::0;;;;;::::1;::::0;;::::1;;::::0;::::1;::::0;;;::::1;::::0;;;;;;;;::::1;::::0;;;;-1:-1:-1;;;;;3911:126:66;;::::1;::::0;;;;::::1;::::0;;;;-1:-1:-1;3911:126:66;;3010:1033;-1:-1:-1;3010:1033:66:o;10269:921::-;10380:19;10342:4;1071:1;1787:8;1769:26;;:4;:14;;;:26;;;1765:101;;1833:14;;;;;1813:45;;-1:-1:-1;;;1813:45:66;;16617:4:84;16605:17;;;1813:45:66;;;16587:36:84;16659:17;;;16639:18;;;16632:45;16560:18;;1813:45:66;16417:266:84;1765:101:66;10422:72:::1;10441:4;:11;;;10461:4;:26;;;10422:10;:72::i;:::-;-1:-1:-1::0;;;;;10411:83:66::1;:8;::::0;::::1;:83:::0;;;-1:-1:-1;;10505:22:66;10501:684:::1;;10626:13;10649:83;10687:4;:11;;;10709:4;:14;;;10649:27;:83::i;:::-;10626:107:::0;-1:-1:-1;1366:16:66::1;10746:19:::0;;::::1;;10742:372;;;10804:11:::0;;:24:::1;::::0;::::1;::::0;;::::1;::::0;:16:::1;:24;:::i;:::-;10787:42;;;;;;;;:::i;:::-;;;;;;;;;;;;;10778:51;;10856:89;10896:4;:11;;;10920:4;:14;;;10856:27;:89::i;:::-;10840:106:::0;-1:-1:-1;1366:16:66::1;10961:19:::0;;::::1;;10957:148;;;11056:11:::0;;11035:6;;11056:24:::1;::::0;::::1;::::0;;::::1;::::0;:16:::1;:24;:::i;:::-;11004:89;;;;;;;;;:::i;:::-;;;;;;;;;;;;;10995:98;;10529:592;10501:684;;;11167:8;::::0;::::1;::::0;11143:11;;:34:::1;::::0;::::1;::::0;;::::1;::::0;:16:::1;:34;:::i;:::-;11136:41;;;;22997:413:64::0;23098:16;23152:2;23139:9;:15;;;;23132:23;;;;:::i;:::-;23191:9;23219;23203:25;;:6;:13;:25;:53;;23243:6;:13;23203:53;;;23231:9;23203:53;;;23191:65;;23276:7;23271:121;23294:4;23289:2;:9;23271:121;;;23369:2;23374:1;23369:6;23346;23353:2;23346:10;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;23346:10:64;23338:38;;23326:50;;;;;23300:5;;23271:121;;;;23166:237;22997:413;;;;:::o;13731:315:65:-;13857:11;13808:6;:13;;;13823:6;:11;;;:18;1012:6;1004:5;:14;1000:75;;;1036:31;;-1:-1:-1;;;1036:31:65;;;;;12424:25:84;;;12465:18;;;12458:34;;;12397:18;;1036:31:65;12250:248:84;1000:75:65;13900:11;;13932:13:::1;::::0;::::1;::::0;;13985:25;;;13999:1:::1;13985:25:::0;13979:32;;-1:-1:-1;13932:13:65;;;14024:16:::1;13932:13:::0;14024:16:::1;:::i;:::-;;;::::0;::::1;13873:173;;13731:315:::0;;;;;:::o;8833:697:66:-;8972:6;9018:2;8994:21;:26;;;8990:77;;;-1:-1:-1;9031:28:66;;;;;8990:77;9077:21;:27;;9102:2;9077:27;9073:75;;9122:18;:6;:16;:18::i;:::-;9115:25;;;;;;9073:75;9158:21;:27;;9183:2;9158:27;9154:76;;9203:19;:6;:17;:19::i;:::-;9196:26;;;;;;9154:76;9240:21;:27;;9265:2;9240:27;9236:76;;9285:19;:6;:17;:19::i;:::-;9278:26;;;;;;9236:76;9322:21;:27;;9347:2;9322:27;9318:76;;9367:19;:6;:17;:19::i;:::-;9360:26;;;;9318:76;9404:21;:27;;9429:2;9404:27;9400:67;;-1:-1:-1;;;;;;9442:17:66;;9400:67;9480:44;;-1:-1:-1;;;9480:44:66;;16400:4:84;16388:17;;9480:44:66;;;16370:36:84;16343:18;;9480:44:66;16226:186:84;18997:541:66;19139:10;19161:17;19181:18;:6;:16;:18::i;:::-;19161:38;;19210:11;:19;;19225:4;19210:19;19206:59;;-1:-1:-1;;;;;19240:17:66;;;;;19206:59;19277;19296:6;19311:11;19325:4;19311:18;19277:10;:59::i;:::-;19271:65;-1:-1:-1;;;;;;19347:17:66;;;;19343:190;;19382:26;;-1:-1:-1;;;19382:26:66;;-1:-1:-1;;;;;17893:31:84;;19382:26:66;;;17875:50:84;17848:18;;19382:26:66;17730:201:84;19343:190:66;19440:16;19426:31;;19440:16;19455:1;19440:16;;;;19426:31;19422:111;;19475:50;;-1:-1:-1;;;19475:50:66;;19496:16;19511:1;19496:16;;;;19475:50;;;16587:36:84;19496:16:66;16659:17:84;;16639:18;;;16632:45;16560:18;;19475:50:66;16417:266:84;19422:111:66;19154:384;18997:541;;;;:::o;5250:934:65:-;5393:19;5351:6;5335;:13;;;:22;;;;:::i;:::-;5359:11;;:18;1004:14;;;1000:75;;;1036:31;;-1:-1:-1;;;1036:31:65;;;;;12424:25:84;;;12465:18;;;12458:34;;;12397:18;;1036:31:65;12250:248:84;1000:75:65;5497:6:::1;-1:-1:-1::0;;;;;5487:17:65::1;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;5487:17:65::1;-1:-1:-1::0;5478:26:65;-1:-1:-1;5567:10:65;;5563:616:::1;;5609:11:::0;;5643:13:::1;::::0;;::::1;::::0;;5815:27;;;;;;5874:15;::::1;5963:85;5874:15:::0;5815:27;6033:6;5963::::1;:85::i;:::-;6109:62;6124:6;6141;6158:4;6109;:62::i;:::-;;5579:600;;;;5250:934:::0;;;;;;:::o;14288:323::-;14419:12;14366:6;:13;;;14382:1;14366:17;;;;:::i;:::-;14385:11;;:18;1004:14;;;1000:75;;;1036:31;;-1:-1:-1;;;1036:31:65;;;;;12424:25:84;;;12465:18;;;12458:34;;;12397:18;;1036:31:65;12250:248:84;1000:75:65;14463:11;;14495:13:::1;::::0;::::1;::::0;;14562:1:::1;14548:25:::0;;;;;14542:32;;-1:-1:-1;14495:13:65;;14587:18:::1;14562:1:::0;14495:13;14587:18:::1;:::i;:::-;::::0;;-1:-1:-1;14288:323:65;;;-1:-1:-1;;;;;14288:323:65:o;14853:::-;14984:12;14931:6;:13;;;14947:1;14931:17;;;;:::i;:::-;14950:11;;:18;1004:14;;;1000:75;;;1036:31;;-1:-1:-1;;;1036:31:65;;;;;12424:25:84;;;12465:18;;;12458:34;;;12397:18;;1036:31:65;12250:248:84;1000:75:65;15028:11;;15060:13:::1;::::0;::::1;::::0;;15127:1:::1;15113:25:::0;;;;;15107:32;;-1:-1:-1;15060:13:65;;15152:18:::1;15127:1:::0;15060:13;15152:18:::1;:::i;15418:323::-:0;15549:12;15496:6;:13;;;15512:1;15496:17;;;;:::i;:::-;15515:11;;:18;1004:14;;;1000:75;;;1036:31;;-1:-1:-1;;;1036:31:65;;;;;12424:25:84;;;12465:18;;;12458:34;;;12397:18;;1036:31:65;12250:248:84;1000:75:65;15593:11;;15625:13:::1;::::0;::::1;::::0;;15692:1:::1;15678:25:::0;;;;;15672:32;;-1:-1:-1;15625:13:65;;15717:18:::1;15692:1:::0;15625:13;15717:18:::1;:::i;23103:622::-:0;23274:147;23288:2;23281:3;:9;23274:147;;23349:10;;23336:24;;23389:2;23381:10;;;;23402:9;;;;-1:-1:-1;;23292:9:65;23274:147;;;23433:7;;23429:284;;23572:10;;23627:11;;23507:2;:8;;;23499:3;:17;-1:-1:-1;;23499:21:65;23584:10;;23568:27;;;23623:23;;23671:21;23658:35;;23103:622;;;:::o;21757:329::-;21927:4;21885:6;21893;:11;;;:18;1012:6;1004:5;:14;1000:75;;;1036:31;;-1:-1:-1;;;1036:31:65;;;;;12424:25:84;;;12465:18;;;12458:34;;;12397:18;;1036:31:65;12250:248:84;1000:75:65;21982:8:::1;21978:54;;;22011:13;::::0;::::1;::::0;22001:23:::1;::::0;;::::1;:::i;:::-;;;21978:54;-1:-1:-1::0;;;;22038:13:65::1;::::0;;;::::1;:22:::0;;;;21757:329::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:250:84:-;99:1;109:113;123:6;120:1;117:13;109:113;;;199:11;;;193:18;180:11;;;173:39;145:2;138:10;109:113;;;-1:-1:-1;;256:1:84;238:16;;231:27;14:250::o;269:1072::-;-1:-1:-1;;;670:3:84;663:34;645:3;726:6;720:13;742:75;810:6;805:2;800:3;796:12;789:4;781:6;777:17;742:75;:::i;:::-;877:13;;836:16;;;;899:76;877:13;961:2;953:11;;946:4;934:17;;899:76;:::i;:::-;1036:13;;994:17;;;1058:76;1036:13;1120:2;1112:11;;1105:4;1093:17;;1058:76;:::i;:::-;1195:13;;1153:17;;;1217:76;1195:13;1279:2;1271:11;;1264:4;1252:17;;1217:76;:::i;:::-;1313:17;1332:2;1309:26;;269:1072;-1:-1:-1;;;;;;269:1072:84:o;1346:180::-;1405:6;1458:2;1446:9;1437:7;1433:23;1429:32;1426:52;;;1474:1;1471;1464:12;1426:52;-1:-1:-1;1497:23:84;;1346:180;-1:-1:-1;1346:180:84:o;1950:121::-;2035:10;2028:5;2024:22;2017:5;2014:33;2004:61;;2061:1;2058;2051:12;2076:381;2152:6;2160;2168;2221:2;2209:9;2200:7;2196:23;2192:32;2189:52;;;2237:1;2234;2227:12;2189:52;2276:9;2263:23;2295:30;2319:5;2295:30;:::i;:::-;2344:5;2396:2;2381:18;;2368:32;;-1:-1:-1;2447:2:84;2432:18;;;2419:32;;2076:381;-1:-1:-1;;;2076:381:84:o;3251:127::-;3312:10;3307:3;3303:20;3300:1;3293:31;3343:4;3340:1;3333:15;3367:4;3364:1;3357:15;3383:348;3535:2;3520:18;;3568:1;3557:13;;3547:144;;3613:10;3608:3;3604:20;3601:1;3594:31;3648:4;3645:1;3638:15;3676:4;3673:1;3666:15;3547:144;3700:25;;;3383:348;:::o;5009:272::-;5067:6;5120:2;5108:9;5099:7;5095:23;5091:32;5088:52;;;5136:1;5133;5126:12;5088:52;5175:9;5162:23;5225:6;5218:5;5214:18;5207:5;5204:29;5194:57;;5247:1;5244;5237:12;5286:396;5435:2;5424:9;5417:21;5398:4;5467:6;5461:13;5510:6;5505:2;5494:9;5490:18;5483:34;5526:79;5598:6;5593:2;5582:9;5578:18;5573:2;5565:6;5561:15;5526:79;:::i;:::-;5666:2;5645:15;-1:-1:-1;;5641:29:84;5626:45;;;;5673:2;5622:54;;5286:396;-1:-1:-1;;5286:396:84:o;5687:195::-;5775:6;5828:2;5816:9;5807:7;5803:23;5799:32;5796:52;;;5844:1;5841;5834:12;6080:131;-1:-1:-1;;;;;6155:31:84;;6145:42;;6135:70;;6201:1;6198;6191:12;6216:247;6275:6;6328:2;6316:9;6307:7;6303:23;6299:32;6296:52;;;6344:1;6341;6334:12;6296:52;6383:9;6370:23;6402:31;6427:5;6402:31;:::i;6468:641::-;6748:3;6786:6;6780:13;6802:66;6861:6;6856:3;6849:4;6841:6;6837:17;6802:66;:::i;:::-;-1:-1:-1;;;6890:16:84;;;6915:19;;;6959:13;;6981:78;6959:13;7046:1;7035:13;;7028:4;7016:17;;6981:78;:::i;:::-;7079:20;7101:1;7075:28;;6468:641;-1:-1:-1;;;;6468:641:84:o;7114:127::-;7175:10;7170:3;7166:20;7163:1;7156:31;7206:4;7203:1;7196:15;7230:4;7227:1;7220:15;7246:127;7307:10;7302:3;7298:20;7295:1;7288:31;7338:4;7335:1;7328:15;7362:4;7359:1;7352:15;7378:127;7439:10;7434:3;7430:20;7427:1;7420:31;7470:4;7467:1;7460:15;7494:4;7491:1;7484:15;7510:165;7548:1;7582:4;7579:1;7575:12;7606:3;7596:37;;7613:18;;:::i;:::-;7665:3;7658:4;7655:1;7651:12;7647:22;7642:27;;;7510:165;;;;:::o;7680:148::-;7768:4;7747:12;;;7761;;;7743:31;;7786:13;;7783:39;;;7802:18;;:::i;7833:157::-;7863:1;7897:4;7894:1;7890:12;7921:3;7911:37;;7928:18;;:::i;:::-;7980:3;7973:4;7970:1;7966:12;7962:22;7957:27;;;7833:157;;;;:::o;7995:127::-;8056:10;8051:3;8047:20;8044:1;8037:31;8087:4;8084:1;8077:15;8111:4;8108:1;8101:15;8127:280;8217:6;8270:2;8258:9;8249:7;8245:23;8241:32;8238:52;;;8286:1;8283;8276:12;8238:52;8318:9;8312:16;8357:1;8350:5;8347:12;8337:40;;8373:1;8370;8363:12;8412:248;8479:2;8473:9;8521:4;8509:17;;-1:-1:-1;;;;;8541:34:84;;8577:22;;;8538:62;8535:88;;;8603:18;;:::i;:::-;8639:2;8632:22;8412:248;:::o;8665:129::-;-1:-1:-1;;;;;8743:5:84;8739:30;8732:5;8729:41;8719:69;;8784:1;8781;8774:12;8799:698;8852:5;8905:3;8898:4;8890:6;8886:17;8882:27;8872:55;;8923:1;8920;8913:12;8872:55;8952:6;8946:13;-1:-1:-1;;;;;9015:2:84;9011;9008:10;9005:36;;;9021:18;;:::i;:::-;9096:2;9090:9;9064:2;9150:13;;-1:-1:-1;;9146:22:84;;;9170:2;9142:31;9138:40;9126:53;;;9194:18;;;9214:22;;;9191:46;9188:72;;;9240:18;;:::i;:::-;9280:10;9276:2;9269:22;9315:2;9307:6;9300:18;9361:3;9354:4;9349:2;9341:6;9337:15;9333:26;9330:35;9327:55;;;9378:1;9375;9368:12;9327:55;9391:76;9464:2;9457:4;9449:6;9445:17;9438:4;9430:6;9426:17;9391:76;:::i;9502:1036::-;9599:6;9652:2;9640:9;9631:7;9627:23;9623:32;9620:52;;;9668:1;9665;9658:12;9620:52;9701:9;9695:16;-1:-1:-1;;;;;9771:2:84;9763:6;9760:14;9757:34;;;9787:1;9784;9777:12;9757:34;9810:22;;;;9866:4;9848:16;;;9844:27;9841:47;;;9884:1;9881;9874:12;9841:47;9910:17;;:::i;:::-;9957:2;9951:9;9969:33;9994:7;9969:33;:::i;:::-;10011:22;;10071:2;10063:11;;10057:18;10084:32;10057:18;10084:32;:::i;:::-;10143:2;10132:14;;10125:31;10194:2;10186:11;;10180:18;10207:32;10180:18;10207:32;:::i;:::-;10266:2;10255:14;;10248:31;10325:2;10317:11;;;10311:18;10295:14;;;10288:42;10369:3;10361:12;;10355:19;10386:16;;;10383:36;;;10415:1;10412;10405:12;10383:36;10452:55;10499:7;10488:8;10484:2;10480:17;10452:55;:::i;:::-;10446:3;10435:15;;10428:80;-1:-1:-1;10439:5:84;9502:1036;-1:-1:-1;;;;;9502:1036:84:o;11049:327::-;11274:25;;;11262:2;11247:18;;11308:62;11366:2;11351:18;;11343:6;10909:12;10957:4;10942:20;;10930:33;;11003:1;10999:17;-1:-1:-1;;;;;10995:42:84;10988:4;10979:14;;;10972:66;10822:222;11381:184;11451:6;11504:2;11492:9;11483:7;11479:23;11475:32;11472:52;;;11520:1;11517;11510:12;11472:52;-1:-1:-1;11543:16:84;;11381:184;-1:-1:-1;11381:184:84:o;11570:542::-;11825:4;11867:3;11856:9;11852:19;11844:27;;11898:6;11887:9;11880:25;11941:6;11936:2;11925:9;11921:18;11914:34;11984:6;11979:2;11968:9;11964:18;11957:34;12027:6;12022:2;12011:9;12007:18;12000:34;12043:63;12101:3;12090:9;12086:19;12078:6;10909:12;10957:4;10942:20;;10930:33;;11003:1;10999:17;-1:-1:-1;;;;;10995:42:84;10988:4;10979:14;;;10972:66;10822:222;12117:128;12184:9;;;12205:11;;;12202:37;;;12219:18;;:::i;12767:168::-;12834:6;12860:10;;;12872;;;12856:27;;12895:11;;;12892:37;;;12909:18;;:::i;12940:168::-;13013:9;;;13044;;13061:15;;;13055:22;;13041:37;13031:71;;13082:18;;:::i;13113:120::-;13153:1;13179;13169:35;;13184:18;;:::i;:::-;-1:-1:-1;13218:9:84;;13113:120::o;13238:127::-;13299:10;13294:3;13290:20;13287:1;13280:31;13330:4;13327:1;13320:15;13354:4;13351:1;13344:15;13370:114;13454:4;13447:5;13443:16;13436:5;13433:27;13423:55;;13474:1;13471;13464:12;13489:542;13658:5;13645:19;13673:31;13696:7;13673:31;:::i;:::-;13736:4;13727:7;13723:18;13713:28;;13766:4;13760:11;13815:2;13808:3;13804:8;13800:2;13796:17;13793:25;13787:4;13780:39;13867:2;13860:5;13856:14;13843:28;13880:32;13904:7;13880:32;:::i;:::-;14002:20;13992:7;13989:1;13985:15;13981:42;13976:2;13952:20;13948:25;13944:2;13940:34;13937:42;13934:90;13928:4;13921:104;;;;13489:542;;:::o;14036:414::-;14238:2;14220:21;;;14277:2;14257:18;;;14250:30;14316:34;14311:2;14296:18;;14289:62;-1:-1:-1;;;14382:2:84;14367:18;;14360:48;14440:3;14425:19;;14036:414::o;15118:335::-;15197:6;15250:2;15238:9;15229:7;15225:23;15221:32;15218:52;;;15266:1;15263;15256:12;15218:52;15299:9;15293:16;-1:-1:-1;;;;;15324:6:84;15321:30;15318:50;;;15364:1;15361;15354:12;15318:50;15387:60;15439:7;15430:6;15419:9;15415:22;15387:60;:::i;:::-;15377:70;15118:335;-1:-1:-1;;;;15118:335:84:o;15458:245::-;15516:6;15569:2;15557:9;15548:7;15544:23;15540:32;15537:52;;;15585:1;15582;15575:12;15537:52;15624:9;15611:23;15643:30;15667:5;15643:30;:::i;15708:243::-;15765:6;15818:2;15806:9;15797:7;15793:23;15789:32;15786:52;;;15834:1;15831;15824:12;15786:52;15873:9;15860:23;15892:29;15915:5;15892:29;:::i;15956:135::-;15995:3;16016:17;;;16013:43;;16036:18;;:::i;:::-;-1:-1:-1;16083:1:84;16072:13;;15956:135::o;16096:125::-;16161:9;;;16182:10;;;16179:36;;;16195:18;;:::i;16688:287::-;16817:3;16855:6;16849:13;16871:66;16930:6;16925:3;16918:4;16910:6;16906:17;16871:66;:::i;:::-;16953:16;;;;;16688:287;-1:-1:-1;;16688:287:84:o;16980:492::-;17155:3;17193:6;17187:13;17209:66;17268:6;17263:3;17256:4;17248:6;17244:17;17209:66;:::i;:::-;17338:13;;17297:16;;;;17360:70;17338:13;17297:16;17407:4;17395:17;;17360:70;:::i;:::-;17446:20;;16980:492;-1:-1:-1;;;;16980:492:84:o",
  "source": "// SPDX-License-Identifier: MIT\r\n\r\npragma solidity >=0.7.0 <0.9.0;\r\npragma experimental ABIEncoderV2;\r\n\r\nimport \"./WitnetMockedOracle.sol\";\r\nimport \"../apps/WitnetRandomnessV2.sol\";\r\n\r\n/// @title Mocked implementation of `WitnetRandomness`.\r\n/// @dev TO BE USED ONLY ON DEVELOPMENT ENVIRONMENTS. \r\n/// @dev ON SUPPORTED TESTNETS AND MAINNETS, PLEASE USE \r\n/// @dev THE `WitnetRandomness` CONTRACT ADDRESS PROVIDED \r\n/// @dev BY THE WITNET FOUNDATION.\r\ncontract WitnetMockedRandomness is WitnetRandomnessV2 {\r\n    constructor(WitnetMockedOracle _wrb)\r\n        WitnetRandomnessV2(_wrb, msg.sender)\r\n    {}\r\n}\r\n",
  "sourcePath": "C:\\Users\\guill\\github\\witnet\\witnet-solidity-bridge\\contracts\\mocks\\WitnetMockedRandomness.sol",
  "ast": {
    "absolutePath": "project:/contracts/mocks/WitnetMockedRandomness.sol",
    "exportedSymbols": {
      "Context": [
        509
      ],
      "IWitnetOracle": [
        13265
      ],
      "IWitnetOracleEvents": [
        13315
      ],
      "IWitnetRandomness": [
        13639
      ],
      "IWitnetRandomnessAdmin": [
        13677
      ],
      "IWitnetRandomnessEvents": [
        13696
      ],
      "IWitnetRequestBytecodes": [
        13979
      ],
      "IWitnetRequestFactory": [
        14002
      ],
      "Ownable": [
        401
      ],
      "Ownable2Step": [
        24094
      ],
      "UsingWitnet": [
        1157
      ],
      "Witnet": [
        17557
      ],
      "WitnetBuffer": [
        19191
      ],
      "WitnetCBOR": [
        20734
      ],
      "WitnetMockedOracle": [
        23735
      ],
      "WitnetMockedRandomness": [
        23780
      ],
      "WitnetOracle": [
        749
      ],
      "WitnetRandomness": [
        794
      ],
      "WitnetRandomnessV2": [
        3137
      ],
      "WitnetRequestBytecodes": [
        849
      ],
      "WitnetRequestFactory": [
        880
      ],
      "WitnetV2": [
        23640
      ]
    },
    "id": 23781,
    "license": "MIT",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 23761,
        "literals": [
          "solidity",
          ">=",
          "0.7",
          ".0",
          "<",
          "0.9",
          ".0"
        ],
        "nodeType": "PragmaDirective",
        "src": "35:31:73"
      },
      {
        "id": 23762,
        "literals": [
          "experimental",
          "ABIEncoderV2"
        ],
        "nodeType": "PragmaDirective",
        "src": "68:33:73"
      },
      {
        "absolutePath": "project:/contracts/mocks/WitnetMockedOracle.sol",
        "file": "./WitnetMockedOracle.sol",
        "id": 23763,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 23781,
        "sourceUnit": 23736,
        "src": "105:34:73",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "absolutePath": "project:/contracts/apps/WitnetRandomnessV2.sol",
        "file": "../apps/WitnetRandomnessV2.sol",
        "id": 23764,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 23781,
        "sourceUnit": 3138,
        "src": "141:40:73",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "abstract": false,
        "baseContracts": [
          {
            "baseName": {
              "id": 23766,
              "name": "WitnetRandomnessV2",
              "nameLocations": [
                "487:18:73"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 3137,
              "src": "487:18:73"
            },
            "id": 23767,
            "nodeType": "InheritanceSpecifier",
            "src": "487:18:73"
          }
        ],
        "canonicalName": "WitnetMockedRandomness",
        "contractDependencies": [],
        "contractKind": "contract",
        "documentation": {
          "id": 23765,
          "nodeType": "StructuredDocumentation",
          "src": "185:267:73",
          "text": "@title Mocked implementation of `WitnetRandomness`.\n @dev TO BE USED ONLY ON DEVELOPMENT ENVIRONMENTS. \n @dev ON SUPPORTED TESTNETS AND MAINNETS, PLEASE USE \n @dev THE `WitnetRandomness` CONTRACT ADDRESS PROVIDED \n @dev BY THE WITNET FOUNDATION."
        },
        "fullyImplemented": true,
        "id": 23780,
        "linearizedBaseContracts": [
          23780,
          3137,
          13677,
          794,
          13696,
          13639,
          1157,
          13315,
          24094,
          401,
          509
        ],
        "name": "WitnetMockedRandomness",
        "nameLocation": "461:22:73",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "body": {
              "id": 23778,
              "nodeType": "Block",
              "src": "601:2:73",
              "statements": []
            },
            "id": 23779,
            "implemented": true,
            "kind": "constructor",
            "modifiers": [
              {
                "arguments": [
                  {
                    "id": 23773,
                    "name": "_wrb",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 23770,
                    "src": "578:4:73",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_WitnetMockedOracle_$23735",
                      "typeString": "contract WitnetMockedOracle"
                    }
                  },
                  {
                    "expression": {
                      "id": 23774,
                      "name": "msg",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 4294967281,
                      "src": "584:3:73",
                      "typeDescriptions": {
                        "typeIdentifier": "t_magic_message",
                        "typeString": "msg"
                      }
                    },
                    "id": 23775,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberLocation": "588:6:73",
                    "memberName": "sender",
                    "nodeType": "MemberAccess",
                    "src": "584:10:73",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  }
                ],
                "id": 23776,
                "kind": "baseConstructorSpecifier",
                "modifierName": {
                  "id": 23772,
                  "name": "WitnetRandomnessV2",
                  "nameLocations": [
                    "559:18:73"
                  ],
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 3137,
                  "src": "559:18:73"
                },
                "nodeType": "ModifierInvocation",
                "src": "559:36:73"
              }
            ],
            "name": "",
            "nameLocation": "-1:-1:-1",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 23771,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 23770,
                  "mutability": "mutable",
                  "name": "_wrb",
                  "nameLocation": "544:4:73",
                  "nodeType": "VariableDeclaration",
                  "scope": 23779,
                  "src": "525:23:73",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_contract$_WitnetMockedOracle_$23735",
                    "typeString": "contract WitnetMockedOracle"
                  },
                  "typeName": {
                    "id": 23769,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 23768,
                      "name": "WitnetMockedOracle",
                      "nameLocations": [
                        "525:18:73"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 23735,
                      "src": "525:18:73"
                    },
                    "referencedDeclaration": 23735,
                    "src": "525:18:73",
                    "typeDescriptions": {
                      "typeIdentifier": "t_contract$_WitnetMockedOracle_$23735",
                      "typeString": "contract WitnetMockedOracle"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "524:25:73"
            },
            "returnParameters": {
              "id": 23777,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "601:0:73"
            },
            "scope": 23780,
            "src": "513:90:73",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "public"
          }
        ],
        "scope": 23781,
        "src": "452:154:73",
        "usedErrors": [
          267,
          272,
          17562,
          17568,
          19262,
          19268,
          19276
        ],
        "usedEvents": [
          278,
          13278,
          13285,
          13294,
          13307,
          13314,
          13695,
          24023
        ]
      }
    ],
    "src": "35:573:73"
  },
  "compiler": {
    "name": "solc",
    "version": "0.8.25+commit.b61c2a91.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "3.4.16",
  "updatedAt": "2024-12-05T09:36:04.668Z",
  "devdoc": {
    "details": "TO BE USED ONLY ON DEVELOPMENT ENVIRONMENTS. ON SUPPORTED TESTNETS AND MAINNETS, PLEASE USE THE `WitnetRandomness` CONTRACT ADDRESS PROVIDED BY THE WITNET FOUNDATION.",
    "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": {
      "fetchRandomnessAfter(uint256)": {
        "details": "Reverts if:i.   no `randomize()` was requested on neither the given block, nor afterwards.ii.  the first non-errored `randomize()` request found on or after the given block is not solved yet.iii. all `randomize()` requests that took place on or after the given block were solved with errors.",
        "params": {
          "_blockNumber": "Block number from which the search will start"
        }
      },
      "fetchRandomnessAfterProof(uint256)": {
        "details": "Reverts if:i.   no `randomize()` was requested on neither the given block, nor afterwards.ii.  the first non-errored `randomize()` request found on or after the given block is not solved yet.iii. all `randomize()` requests that took place on or after the given block were solved with errors.",
        "params": {
          "_blockNumber": "Block number from which the search will start."
        },
        "returns": {
          "_witnetResultFinalityBlock": "EVM block number from which the provided randomness can be considered to be final.",
          "_witnetResultRandomness": "Random value provided by the Witnet blockchain and used for solving randomness after given block.",
          "_witnetResultTallyHash": "Hash of the witnessing commit/reveal act that took place on the Witnet blockchain.",
          "_witnetResultTimestamp": "Timestamp at which the randomness value was generated by the Witnet blockchain."
        }
      },
      "getRandomizeData(uint256)": {
        "details": "Returns zero values if no randomize request was actually posted on the given block.",
        "returns": {
          "_nextRandomizeBlock": "Block number in which a randomize request got posted just after this one, 0 if none.",
          "_prevRandomizeBlock": "Block number in which a randomize request got posted just before this one. 0 if none.",
          "_witnetQueryId": "Identifier of the underlying Witnet query created on the given block number. "
        }
      },
      "getRandomizeNextBlock(uint256)": {
        "params": {
          "_blockNumber": "Block number from which the search will start."
        },
        "returns": {
          "_0": "Number of the first block found after the given one, or `0` otherwise."
        }
      },
      "getRandomizePrevBlock(uint256)": {
        "params": {
          "_blockNumber": "Block number from which the search will start. Cannot be zero."
        },
        "returns": {
          "_0": "First block found before the given one, or `0` otherwise."
        }
      },
      "getRandomizeStatus(uint256)": {
        "details": "Possible values:- 0 -> Void: no randomize request was actually posted on or after the given block number.- 1 -> Awaiting: a randomize request was found but it's not yet solved by the Witnet blockchain.- 2 -> Ready: a successfull randomize value was reported and ready to be read.- 3 -> Error: all randomize requests after the given block were solved with errors.- 4 -> Finalizing: a randomize resolution has been reported from the Witnet blockchain, but it's not yet final.  "
      },
      "random(uint32,uint256,uint256)": {
        "details": "Fails under same conditions as `getRandomnessAfter(uint256)` does.",
        "params": {
          "_blockNumber": "Block number from which the search for the first randomize request solved aftewards will start.",
          "_nonce": "Nonce value enabling multiple random numbers from the same randomness value.",
          "_range": "Range within which the uniformly-distributed random number will be generated."
        }
      },
      "randomize()": {
        "details": "Only one randomness request per block will be actually posted to the Witnet Oracle. ",
        "returns": {
          "_evmRandomizeFee": "Funds actually paid as randomize fee."
        }
      },
      "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."
      }
    },
    "title": "Mocked implementation of `WitnetRandomness`.",
    "version": 1
  },
  "userdoc": {
    "events": {
      "WitnetQuery(uint256,uint256,(uint8,uint64))": {
        "notice": "Emitted every time a new query containing some verified data request is posted to the WRB."
      },
      "WitnetQueryResponse(uint256,uint256)": {
        "notice": "Emitted when a query with no callback gets reported into the WRB."
      },
      "WitnetQueryResponseDelivered(uint256,uint256,uint256)": {
        "notice": "Emitted when a query with a callback gets successfully reported into the WRB."
      },
      "WitnetQueryResponseDeliveryFailed(uint256,bytes,uint256,uint256,string)": {
        "notice": "Emitted when a query with a callback cannot get reported into the WRB."
      },
      "WitnetQueryRewardUpgraded(uint256,uint256)": {
        "notice": "Emitted when the reward of some not-yet reported query is upgraded."
      }
    },
    "kind": "user",
    "methods": {
      "acceptOwnership()": {
        "notice": "=============================================================================================================== --- 'IWitnetRandomnessAdmin' implementation -------------------------------------------------------------------"
      },
      "estimateRandomizeFee(uint256)": {
        "notice": "Returns amount of wei required to be paid as a fee when requesting randomization with a  transaction gas price as the one given."
      },
      "fetchRandomnessAfter(uint256)": {
        "notice": "Retrieves the result of keccak256-hashing the given block number with the randomness value generated by the Witnet Oracle blockchain in response to the first non-errored randomize request solved after such block number."
      },
      "fetchRandomnessAfterProof(uint256)": {
        "notice": "Retrieves the actual random value, unique hash and timestamp of the witnessing commit/reveal act that tookplace in the Witnet Oracle blockchain in response to the first non-errored randomize requestsolved after the given block number."
      },
      "getLastRandomizeBlock()": {
        "notice": "Returns last block number on which a randomize was requested."
      },
      "getRandomizeData(uint256)": {
        "notice": "Retrieves metadata related to the randomize request that got posted to the Witnet Oracle contract on the given block number."
      },
      "getRandomizeNextBlock(uint256)": {
        "notice": "Returns the number of the next block in which a randomize request was posted after the given one. "
      },
      "getRandomizePrevBlock(uint256)": {
        "notice": "Returns the number of the previous block in which a randomize request was posted before the given one."
      },
      "getRandomizeStatus(uint256)": {
        "notice": "Returns status of the first non-errored randomize request posted on or after the given block number."
      },
      "isRandomized(uint256)": {
        "notice": "Returns `true` only if a successfull resolution from the Witnet blockchain is found for the first non-errored randomize request posted on or after the given block number."
      },
      "random(uint32,uint256,uint256)": {
        "notice": "Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using the given `nonce` and the randomness returned by `getRandomnessAfter(blockNumber)`. "
      },
      "randomize()": {
        "notice": "Requests the Witnet oracle to generate an EVM-agnostic and trustless source of randomness. "
      },
      "witnetQuerySLA()": {
        "notice": "Returns the SLA parameters required for the Witnet Oracle blockchain to fulfill when solving randomness requests:- number of witnessing nodes contributing to randomness generation- reward in $nanoWIT received by every contributing node in the Witnet blockchain"
      },
      "witnetRadHash()": {
        "notice": "Unique identifier of the RNG data request used on the Witnet Oracle blockchain for solving randomness."
      }
    },
    "version": 1
  }
}