{
  "contractName": "WitOracleRadonEncodingLib",
  "abi": [
    {
      "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": "uint256",
          "name": "expected",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "given",
          "type": "uint256"
        }
      ],
      "name": "MissingArgs",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "read",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "expected",
          "type": "uint256"
        }
      ],
      "name": "UnexpectedMajorType",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint8",
          "name": "method",
          "type": "uint8"
        },
        {
          "internalType": "string",
          "name": "schema",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "body",
          "type": "string"
        },
        {
          "internalType": "string[2][]",
          "name": "headers",
          "type": "string[2][]"
        }
      ],
      "name": "UnsupportedDataRequestMethod",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "unexpected",
          "type": "uint256"
        }
      ],
      "name": "UnsupportedMajorType",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint8",
          "name": "datatype",
          "type": "uint8"
        },
        {
          "internalType": "uint256",
          "name": "maxlength",
          "type": "uint256"
        }
      ],
      "name": "UnsupportedRadonDataType",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint8",
          "name": "opcode",
          "type": "uint8"
        },
        {
          "internalType": "bytes",
          "name": "args",
          "type": "bytes"
        }
      ],
      "name": "UnsupportedRadonFilterArgs",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint8",
          "name": "opcode",
          "type": "uint8"
        }
      ],
      "name": "UnsupportedRadonFilterOpcode",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint8",
          "name": "opcode",
          "type": "uint8"
        }
      ],
      "name": "UnsupportedRadonReducerOpcode",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "uint8",
          "name": "opcode",
          "type": "uint8"
        },
        {
          "internalType": "bytes",
          "name": "script",
          "type": "bytes"
        },
        {
          "internalType": "uint256",
          "name": "offset",
          "type": "uint256"
        }
      ],
      "name": "UnsupportedRadonReducerScript",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "script",
          "type": "bytes"
        },
        {
          "internalType": "uint256",
          "name": "offset",
          "type": "uint256"
        }
      ],
      "name": "UnsupportedRadonScript",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "script",
          "type": "bytes"
        },
        {
          "internalType": "uint256",
          "name": "cursor",
          "type": "uint256"
        },
        {
          "internalType": "uint8",
          "name": "opcode",
          "type": "uint8"
        }
      ],
      "name": "UnsupportedRadonScriptOpcode",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "hash",
          "type": "bytes32"
        }
      ],
      "name": "UnsupportedRadonTallyScript",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "buf",
          "type": "bytes"
        }
      ],
      "name": "encode",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "enum Witnet.RadonReduceOpcodes",
              "name": "opcode",
              "type": "Witnet.RadonReduceOpcodes"
            },
            {
              "components": [
                {
                  "internalType": "enum Witnet.RadonFilterOpcodes",
                  "name": "opcode",
                  "type": "Witnet.RadonFilterOpcodes"
                },
                {
                  "internalType": "bytes",
                  "name": "cborArgs",
                  "type": "bytes"
                }
              ],
              "internalType": "struct Witnet.RadonFilter[]",
              "name": "filters",
              "type": "tuple[]"
            }
          ],
          "internalType": "struct Witnet.RadonReducer",
          "name": "reducer",
          "type": "tuple"
        }
      ],
      "name": "encode",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "bytecode",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "enum Witnet.RadonReduceOpcodes",
          "name": "opcode",
          "type": "Witnet.RadonReduceOpcodes"
        }
      ],
      "name": "encode",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "str",
          "type": "string"
        }
      ],
      "name": "encode",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "buf",
          "type": "bytes"
        },
        {
          "internalType": "uint256",
          "name": "majorType",
          "type": "uint256"
        }
      ],
      "name": "encode",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint64",
          "name": "n",
          "type": "uint64"
        },
        {
          "internalType": "bytes1",
          "name": "t",
          "type": "bytes1"
        }
      ],
      "name": "encode",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "buf",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "uint8",
              "name": "argsCount",
              "type": "uint8"
            },
            {
              "internalType": "enum Witnet.RadonRetrievalMethods",
              "name": "method",
              "type": "Witnet.RadonRetrievalMethods"
            },
            {
              "internalType": "enum Witnet.RadonDataTypes",
              "name": "dataType",
              "type": "Witnet.RadonDataTypes"
            },
            {
              "internalType": "string",
              "name": "url",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "body",
              "type": "string"
            },
            {
              "internalType": "string[2][]",
              "name": "headers",
              "type": "string[2][]"
            },
            {
              "internalType": "bytes",
              "name": "radonScript",
              "type": "bytes"
            }
          ],
          "internalType": "struct Witnet.RadonRetrieval[]",
          "name": "sources",
          "type": "tuple[]"
        },
        {
          "internalType": "string[][]",
          "name": "args",
          "type": "string[][]"
        },
        {
          "internalType": "bytes",
          "name": "aggregatorInnerBytecode",
          "type": "bytes"
        },
        {
          "internalType": "bytes",
          "name": "tallyInnerBytecode",
          "type": "bytes"
        },
        {
          "internalType": "uint16",
          "name": "",
          "type": "uint16"
        }
      ],
      "name": "encode",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "uint8",
              "name": "numWitnesses",
              "type": "uint8"
            },
            {
              "internalType": "uint8",
              "name": "minConsensusPercentage",
              "type": "uint8"
            },
            {
              "internalType": "uint64",
              "name": "witnessReward",
              "type": "uint64"
            },
            {
              "internalType": "uint64",
              "name": "witnessCollateral",
              "type": "uint64"
            },
            {
              "internalType": "uint64",
              "name": "minerCommitRevealFee",
              "type": "uint64"
            }
          ],
          "internalType": "struct Witnet.RadonSLAv1",
          "name": "sla",
          "type": "tuple"
        }
      ],
      "name": "encode",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "enum Witnet.RadonFilterOpcodes",
              "name": "opcode",
              "type": "Witnet.RadonFilterOpcodes"
            },
            {
              "internalType": "bytes",
              "name": "cborArgs",
              "type": "bytes"
            }
          ],
          "internalType": "struct Witnet.RadonFilter",
          "name": "filter",
          "type": "tuple"
        }
      ],
      "name": "encode",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "bytecode",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "uint8",
              "name": "argsCount",
              "type": "uint8"
            },
            {
              "internalType": "enum Witnet.RadonRetrievalMethods",
              "name": "method",
              "type": "Witnet.RadonRetrievalMethods"
            },
            {
              "internalType": "enum Witnet.RadonDataTypes",
              "name": "dataType",
              "type": "Witnet.RadonDataTypes"
            },
            {
              "internalType": "string",
              "name": "url",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "body",
              "type": "string"
            },
            {
              "internalType": "string[2][]",
              "name": "headers",
              "type": "string[2][]"
            },
            {
              "internalType": "bytes",
              "name": "radonScript",
              "type": "bytes"
            }
          ],
          "internalType": "struct Witnet.RadonRetrieval[]",
          "name": "retrievals",
          "type": "tuple[]"
        },
        {
          "internalType": "string[]",
          "name": "args",
          "type": "string[]"
        },
        {
          "internalType": "bytes",
          "name": "aggregatorInnerBytecode",
          "type": "bytes"
        },
        {
          "internalType": "bytes",
          "name": "tallyInnerBytecode",
          "type": "bytes"
        }
      ],
      "name": "encode",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "uint8",
              "name": "argsCount",
              "type": "uint8"
            },
            {
              "internalType": "enum Witnet.RadonRetrievalMethods",
              "name": "method",
              "type": "Witnet.RadonRetrievalMethods"
            },
            {
              "internalType": "enum Witnet.RadonDataTypes",
              "name": "dataType",
              "type": "Witnet.RadonDataTypes"
            },
            {
              "internalType": "string",
              "name": "url",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "body",
              "type": "string"
            },
            {
              "internalType": "string[2][]",
              "name": "headers",
              "type": "string[2][]"
            },
            {
              "internalType": "bytes",
              "name": "radonScript",
              "type": "bytes"
            }
          ],
          "internalType": "struct Witnet.RadonRetrieval",
          "name": "source",
          "type": "tuple"
        }
      ],
      "name": "encode",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "data",
          "type": "bytes"
        },
        {
          "internalType": "uint8",
          "name": "argIndex",
          "type": "uint8"
        },
        {
          "internalType": "string",
          "name": "argValue",
          "type": "string"
        }
      ],
      "name": "replaceCborStringsFromBytes",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "data",
          "type": "bytes"
        },
        {
          "internalType": "string[]",
          "name": "args",
          "type": "string[]"
        }
      ],
      "name": "replaceCborStringsFromBytes",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "uint8",
              "name": "argsCount",
              "type": "uint8"
            },
            {
              "internalType": "enum Witnet.RadonRetrievalMethods",
              "name": "method",
              "type": "Witnet.RadonRetrievalMethods"
            },
            {
              "internalType": "enum Witnet.RadonDataTypes",
              "name": "dataType",
              "type": "Witnet.RadonDataTypes"
            },
            {
              "internalType": "string",
              "name": "url",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "body",
              "type": "string"
            },
            {
              "internalType": "string[2][]",
              "name": "headers",
              "type": "string[2][]"
            },
            {
              "internalType": "bytes",
              "name": "radonScript",
              "type": "bytes"
            }
          ],
          "internalType": "struct Witnet.RadonRetrieval",
          "name": "self",
          "type": "tuple"
        },
        {
          "internalType": "uint8",
          "name": "argIndex",
          "type": "uint8"
        },
        {
          "internalType": "string",
          "name": "argValue",
          "type": "string"
        }
      ],
      "name": "replaceWildcards",
      "outputs": [
        {
          "components": [
            {
              "internalType": "uint8",
              "name": "argsCount",
              "type": "uint8"
            },
            {
              "internalType": "enum Witnet.RadonRetrievalMethods",
              "name": "method",
              "type": "Witnet.RadonRetrievalMethods"
            },
            {
              "internalType": "enum Witnet.RadonDataTypes",
              "name": "dataType",
              "type": "Witnet.RadonDataTypes"
            },
            {
              "internalType": "string",
              "name": "url",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "body",
              "type": "string"
            },
            {
              "internalType": "string[2][]",
              "name": "headers",
              "type": "string[2][]"
            },
            {
              "internalType": "bytes",
              "name": "radonScript",
              "type": "bytes"
            }
          ],
          "internalType": "struct Witnet.RadonRetrieval",
          "name": "",
          "type": "tuple"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "uint8",
              "name": "argsCount",
              "type": "uint8"
            },
            {
              "internalType": "enum Witnet.RadonRetrievalMethods",
              "name": "method",
              "type": "Witnet.RadonRetrievalMethods"
            },
            {
              "internalType": "enum Witnet.RadonDataTypes",
              "name": "dataType",
              "type": "Witnet.RadonDataTypes"
            },
            {
              "internalType": "string",
              "name": "url",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "body",
              "type": "string"
            },
            {
              "internalType": "string[2][]",
              "name": "headers",
              "type": "string[2][]"
            },
            {
              "internalType": "bytes",
              "name": "radonScript",
              "type": "bytes"
            }
          ],
          "internalType": "struct Witnet.RadonRetrieval",
          "name": "self",
          "type": "tuple"
        },
        {
          "internalType": "string[]",
          "name": "args",
          "type": "string[]"
        }
      ],
      "name": "replaceWildcards",
      "outputs": [
        {
          "components": [
            {
              "internalType": "uint8",
              "name": "argsCount",
              "type": "uint8"
            },
            {
              "internalType": "enum Witnet.RadonRetrievalMethods",
              "name": "method",
              "type": "Witnet.RadonRetrievalMethods"
            },
            {
              "internalType": "enum Witnet.RadonDataTypes",
              "name": "dataType",
              "type": "Witnet.RadonDataTypes"
            },
            {
              "internalType": "string",
              "name": "url",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "body",
              "type": "string"
            },
            {
              "internalType": "string[2][]",
              "name": "headers",
              "type": "string[2][]"
            },
            {
              "internalType": "bytes",
              "name": "radonScript",
              "type": "bytes"
            }
          ],
          "internalType": "struct Witnet.RadonRetrieval",
          "name": "",
          "type": "tuple"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "enum Witnet.RadonDataTypes",
          "name": "dataType",
          "type": "Witnet.RadonDataTypes"
        },
        {
          "internalType": "uint16",
          "name": "maxDataSize",
          "type": "uint16"
        }
      ],
      "name": "validate",
      "outputs": [
        {
          "internalType": "uint16",
          "name": "",
          "type": "uint16"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "enum Witnet.RadonRetrievalMethods",
          "name": "method",
          "type": "Witnet.RadonRetrievalMethods"
        },
        {
          "internalType": "string",
          "name": "url",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "body",
          "type": "string"
        },
        {
          "internalType": "string[2][]",
          "name": "headers",
          "type": "string[2][]"
        },
        {
          "internalType": "bytes",
          "name": "script",
          "type": "bytes"
        }
      ],
      "name": "validate",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "uint8",
              "name": "numWitnesses",
              "type": "uint8"
            },
            {
              "internalType": "uint8",
              "name": "minConsensusPercentage",
              "type": "uint8"
            },
            {
              "internalType": "uint64",
              "name": "witnessReward",
              "type": "uint64"
            },
            {
              "internalType": "uint64",
              "name": "witnessCollateral",
              "type": "uint64"
            },
            {
              "internalType": "uint64",
              "name": "minerCommitRevealFee",
              "type": "uint64"
            }
          ],
          "internalType": "struct Witnet.RadonSLAv1",
          "name": "sla",
          "type": "tuple"
        }
      ],
      "name": "validate",
      "outputs": [],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "enum Witnet.RadonFilterOpcodes",
              "name": "opcode",
              "type": "Witnet.RadonFilterOpcodes"
            },
            {
              "internalType": "bytes",
              "name": "cborArgs",
              "type": "bytes"
            }
          ],
          "internalType": "struct Witnet.RadonFilter",
          "name": "filter",
          "type": "tuple"
        }
      ],
      "name": "validate",
      "outputs": [],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "enum Witnet.RadonReduceOpcodes",
              "name": "opcode",
              "type": "Witnet.RadonReduceOpcodes"
            },
            {
              "components": [
                {
                  "internalType": "enum Witnet.RadonFilterOpcodes",
                  "name": "opcode",
                  "type": "Witnet.RadonFilterOpcodes"
                },
                {
                  "internalType": "bytes",
                  "name": "cborArgs",
                  "type": "bytes"
                }
              ],
              "internalType": "struct Witnet.RadonFilter[]",
              "name": "filters",
              "type": "tuple[]"
            }
          ],
          "internalType": "struct Witnet.RadonReducer",
          "name": "reducer",
          "type": "tuple"
        }
      ],
      "name": "validate",
      "outputs": [],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "script",
          "type": "bytes"
        }
      ],
      "name": "verifyRadonScriptResultDataType",
      "outputs": [
        {
          "internalType": "enum Witnet.RadonDataTypes",
          "name": "",
          "type": "Witnet.RadonDataTypes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    }
  ],
  "metadata": "{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"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\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"given\",\"type\":\"uint256\"}],\"name\":\"MissingArgs\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"read\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"}],\"name\":\"UnexpectedMajorType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"method\",\"type\":\"uint8\"},{\"internalType\":\"string\",\"name\":\"schema\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"body\",\"type\":\"string\"},{\"internalType\":\"string[2][]\",\"name\":\"headers\",\"type\":\"string[2][]\"}],\"name\":\"UnsupportedDataRequestMethod\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"unexpected\",\"type\":\"uint256\"}],\"name\":\"UnsupportedMajorType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"datatype\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"maxlength\",\"type\":\"uint256\"}],\"name\":\"UnsupportedRadonDataType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"opcode\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"args\",\"type\":\"bytes\"}],\"name\":\"UnsupportedRadonFilterArgs\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"opcode\",\"type\":\"uint8\"}],\"name\":\"UnsupportedRadonFilterOpcode\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"opcode\",\"type\":\"uint8\"}],\"name\":\"UnsupportedRadonReducerOpcode\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"opcode\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"script\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"offset\",\"type\":\"uint256\"}],\"name\":\"UnsupportedRadonReducerScript\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"script\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"offset\",\"type\":\"uint256\"}],\"name\":\"UnsupportedRadonScript\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"script\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"cursor\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"opcode\",\"type\":\"uint8\"}],\"name\":\"UnsupportedRadonScriptOpcode\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"}],\"name\":\"UnsupportedRadonTallyScript\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"buf\",\"type\":\"bytes\"}],\"name\":\"encode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"enum Witnet.RadonReduceOpcodes\",\"name\":\"opcode\",\"type\":\"Witnet.RadonReduceOpcodes\"},{\"components\":[{\"internalType\":\"enum Witnet.RadonFilterOpcodes\",\"name\":\"opcode\",\"type\":\"Witnet.RadonFilterOpcodes\"},{\"internalType\":\"bytes\",\"name\":\"cborArgs\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonFilter[]\",\"name\":\"filters\",\"type\":\"tuple[]\"}],\"internalType\":\"struct Witnet.RadonReducer\",\"name\":\"reducer\",\"type\":\"tuple\"}],\"name\":\"encode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"bytecode\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum Witnet.RadonReduceOpcodes\",\"name\":\"opcode\",\"type\":\"Witnet.RadonReduceOpcodes\"}],\"name\":\"encode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"str\",\"type\":\"string\"}],\"name\":\"encode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"buf\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"majorType\",\"type\":\"uint256\"}],\"name\":\"encode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"n\",\"type\":\"uint64\"},{\"internalType\":\"bytes1\",\"name\":\"t\",\"type\":\"bytes1\"}],\"name\":\"encode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"buf\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"argsCount\",\"type\":\"uint8\"},{\"internalType\":\"enum Witnet.RadonRetrievalMethods\",\"name\":\"method\",\"type\":\"Witnet.RadonRetrievalMethods\"},{\"internalType\":\"enum Witnet.RadonDataTypes\",\"name\":\"dataType\",\"type\":\"Witnet.RadonDataTypes\"},{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"body\",\"type\":\"string\"},{\"internalType\":\"string[2][]\",\"name\":\"headers\",\"type\":\"string[2][]\"},{\"internalType\":\"bytes\",\"name\":\"radonScript\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonRetrieval[]\",\"name\":\"sources\",\"type\":\"tuple[]\"},{\"internalType\":\"string[][]\",\"name\":\"args\",\"type\":\"string[][]\"},{\"internalType\":\"bytes\",\"name\":\"aggregatorInnerBytecode\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"tallyInnerBytecode\",\"type\":\"bytes\"},{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"name\":\"encode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"numWitnesses\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"minConsensusPercentage\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"witnessReward\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"witnessCollateral\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"minerCommitRevealFee\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.RadonSLAv1\",\"name\":\"sla\",\"type\":\"tuple\"}],\"name\":\"encode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"enum Witnet.RadonFilterOpcodes\",\"name\":\"opcode\",\"type\":\"Witnet.RadonFilterOpcodes\"},{\"internalType\":\"bytes\",\"name\":\"cborArgs\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonFilter\",\"name\":\"filter\",\"type\":\"tuple\"}],\"name\":\"encode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"bytecode\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"argsCount\",\"type\":\"uint8\"},{\"internalType\":\"enum Witnet.RadonRetrievalMethods\",\"name\":\"method\",\"type\":\"Witnet.RadonRetrievalMethods\"},{\"internalType\":\"enum Witnet.RadonDataTypes\",\"name\":\"dataType\",\"type\":\"Witnet.RadonDataTypes\"},{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"body\",\"type\":\"string\"},{\"internalType\":\"string[2][]\",\"name\":\"headers\",\"type\":\"string[2][]\"},{\"internalType\":\"bytes\",\"name\":\"radonScript\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonRetrieval[]\",\"name\":\"retrievals\",\"type\":\"tuple[]\"},{\"internalType\":\"string[]\",\"name\":\"args\",\"type\":\"string[]\"},{\"internalType\":\"bytes\",\"name\":\"aggregatorInnerBytecode\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"tallyInnerBytecode\",\"type\":\"bytes\"}],\"name\":\"encode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"argsCount\",\"type\":\"uint8\"},{\"internalType\":\"enum Witnet.RadonRetrievalMethods\",\"name\":\"method\",\"type\":\"Witnet.RadonRetrievalMethods\"},{\"internalType\":\"enum Witnet.RadonDataTypes\",\"name\":\"dataType\",\"type\":\"Witnet.RadonDataTypes\"},{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"body\",\"type\":\"string\"},{\"internalType\":\"string[2][]\",\"name\":\"headers\",\"type\":\"string[2][]\"},{\"internalType\":\"bytes\",\"name\":\"radonScript\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonRetrieval\",\"name\":\"source\",\"type\":\"tuple\"}],\"name\":\"encode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint8\",\"name\":\"argIndex\",\"type\":\"uint8\"},{\"internalType\":\"string\",\"name\":\"argValue\",\"type\":\"string\"}],\"name\":\"replaceCborStringsFromBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"string[]\",\"name\":\"args\",\"type\":\"string[]\"}],\"name\":\"replaceCborStringsFromBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"argsCount\",\"type\":\"uint8\"},{\"internalType\":\"enum Witnet.RadonRetrievalMethods\",\"name\":\"method\",\"type\":\"Witnet.RadonRetrievalMethods\"},{\"internalType\":\"enum Witnet.RadonDataTypes\",\"name\":\"dataType\",\"type\":\"Witnet.RadonDataTypes\"},{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"body\",\"type\":\"string\"},{\"internalType\":\"string[2][]\",\"name\":\"headers\",\"type\":\"string[2][]\"},{\"internalType\":\"bytes\",\"name\":\"radonScript\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonRetrieval\",\"name\":\"self\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"argIndex\",\"type\":\"uint8\"},{\"internalType\":\"string\",\"name\":\"argValue\",\"type\":\"string\"}],\"name\":\"replaceWildcards\",\"outputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"argsCount\",\"type\":\"uint8\"},{\"internalType\":\"enum Witnet.RadonRetrievalMethods\",\"name\":\"method\",\"type\":\"Witnet.RadonRetrievalMethods\"},{\"internalType\":\"enum Witnet.RadonDataTypes\",\"name\":\"dataType\",\"type\":\"Witnet.RadonDataTypes\"},{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"body\",\"type\":\"string\"},{\"internalType\":\"string[2][]\",\"name\":\"headers\",\"type\":\"string[2][]\"},{\"internalType\":\"bytes\",\"name\":\"radonScript\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonRetrieval\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"argsCount\",\"type\":\"uint8\"},{\"internalType\":\"enum Witnet.RadonRetrievalMethods\",\"name\":\"method\",\"type\":\"Witnet.RadonRetrievalMethods\"},{\"internalType\":\"enum Witnet.RadonDataTypes\",\"name\":\"dataType\",\"type\":\"Witnet.RadonDataTypes\"},{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"body\",\"type\":\"string\"},{\"internalType\":\"string[2][]\",\"name\":\"headers\",\"type\":\"string[2][]\"},{\"internalType\":\"bytes\",\"name\":\"radonScript\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonRetrieval\",\"name\":\"self\",\"type\":\"tuple\"},{\"internalType\":\"string[]\",\"name\":\"args\",\"type\":\"string[]\"}],\"name\":\"replaceWildcards\",\"outputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"argsCount\",\"type\":\"uint8\"},{\"internalType\":\"enum Witnet.RadonRetrievalMethods\",\"name\":\"method\",\"type\":\"Witnet.RadonRetrievalMethods\"},{\"internalType\":\"enum Witnet.RadonDataTypes\",\"name\":\"dataType\",\"type\":\"Witnet.RadonDataTypes\"},{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"body\",\"type\":\"string\"},{\"internalType\":\"string[2][]\",\"name\":\"headers\",\"type\":\"string[2][]\"},{\"internalType\":\"bytes\",\"name\":\"radonScript\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonRetrieval\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum Witnet.RadonDataTypes\",\"name\":\"dataType\",\"type\":\"Witnet.RadonDataTypes\"},{\"internalType\":\"uint16\",\"name\":\"maxDataSize\",\"type\":\"uint16\"}],\"name\":\"validate\",\"outputs\":[{\"internalType\":\"uint16\",\"name\":\"\",\"type\":\"uint16\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"enum Witnet.RadonRetrievalMethods\",\"name\":\"method\",\"type\":\"Witnet.RadonRetrievalMethods\"},{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"body\",\"type\":\"string\"},{\"internalType\":\"string[2][]\",\"name\":\"headers\",\"type\":\"string[2][]\"},{\"internalType\":\"bytes\",\"name\":\"script\",\"type\":\"bytes\"}],\"name\":\"validate\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"numWitnesses\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"minConsensusPercentage\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"witnessReward\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"witnessCollateral\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"minerCommitRevealFee\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.RadonSLAv1\",\"name\":\"sla\",\"type\":\"tuple\"}],\"name\":\"validate\",\"outputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"enum Witnet.RadonFilterOpcodes\",\"name\":\"opcode\",\"type\":\"Witnet.RadonFilterOpcodes\"},{\"internalType\":\"bytes\",\"name\":\"cborArgs\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonFilter\",\"name\":\"filter\",\"type\":\"tuple\"}],\"name\":\"validate\",\"outputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"enum Witnet.RadonReduceOpcodes\",\"name\":\"opcode\",\"type\":\"Witnet.RadonReduceOpcodes\"},{\"components\":[{\"internalType\":\"enum Witnet.RadonFilterOpcodes\",\"name\":\"opcode\",\"type\":\"Witnet.RadonFilterOpcodes\"},{\"internalType\":\"bytes\",\"name\":\"cborArgs\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.RadonFilter[]\",\"name\":\"filters\",\"type\":\"tuple[]\"}],\"internalType\":\"struct Witnet.RadonReducer\",\"name\":\"reducer\",\"type\":\"tuple\"}],\"name\":\"validate\",\"outputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"script\",\"type\":\"bytes\"}],\"name\":\"verifyRadonScriptResultDataType\",\"outputs\":[{\"internalType\":\"enum Witnet.RadonDataTypes\",\"name\":\"\",\"type\":\"Witnet.RadonDataTypes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"kind\":\"dev\",\"methods\":{\"encode(bytes)\":{\"params\":{\"buf\":\"Bytes array\"},\"returns\":{\"_0\":\"Mashaled bytes\"}},\"encode(bytes,uint256)\":{\"params\":{\"buf\":\"Bytes array\"},\"returns\":{\"_0\":\"Marshaled bytes\"}},\"encode(string)\":{\"params\":{\"str\":\"String bytes.\"},\"returns\":{\"_0\":\"Mashaled bytes\"}},\"encode(uint64,bytes1)\":{\"details\":\"Encode uint64 into tagged varint.See https://developers.google.com/protocol-buffers/docs/encoding#varints.\",\"params\":{\"n\":\"Number\",\"t\":\"Tag\"},\"returns\":{\"buf\":\"Marshaled bytes\"}}},\"title\":\"A library for encoding Witnet Data Requests.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"encode(bytes)\":{\"notice\":\"Encode bytes array.\"},\"encode(bytes,uint256)\":{\"notice\":\"Encode bytes array into given major type (UTF-8 not yet supported)\"},\"encode(string)\":{\"notice\":\"Encode string array (UTF-8 not yet supported).\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"project:/contracts/libs/WitOracleRadonEncodingLib.sol\":\"WitOracleRadonEncodingLib\"},\"evmVersion\":\"prague\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"project:/contracts/libs/Bech32.sol\":{\"keccak256\":\"0x14618323a0efe7586c20906a2e9cee7ad63baa976ff231c57f7f2d7d3707fb8b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a19f05fe84047a7a6d3d6fc39972b432e6e536aa70472386a9d7a6d9aab64a64\",\"dweb:/ipfs/QmcHwUY66yjiotRH4Q3kbRvSzcHyLQ1yHL3KbtQKiMhtZE\"]},\"project:/contracts/libs/Secp256k1.sol\":{\"keccak256\":\"0xbe686002da5004ff39dd70709f3820eba2afe9323ae9cb894009c161e4b1a666\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18fab91775216de0707cea9ad285b10be09127461a13432fea358bf9cb2a0c2e\",\"dweb:/ipfs/QmeRUGsgstnM4hxM9hpkBf3L6cE5btirEaowcMxmuw3utj\"]},\"project:/contracts/libs/WitOracleRadonEncodingLib.sol\":{\"keccak256\":\"0x05b635d0b5b2c3648053a15f198278cc91cc13d9e221812b4c37e3f2392cd973\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e83b05c2c67d73747451c4a10e62d02d6096ace6eab4302f49812a47f3d50e49\",\"dweb:/ipfs/QmXiGDAniCynXSanoEQfzjxSUwMM2KQLZg4fuww7Pqc5Pz\"]},\"project:/contracts/libs/Witnet.sol\":{\"keccak256\":\"0x1d446c3e534e40e676d1763bfb2897fadfac8afed904ab757843d7d6770b0a6c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://338fb1073f17d64e8d31bfe492d9475ce906788ee08e6489ce30413f91dc1328\",\"dweb:/ipfs/QmPe5QX2AGTnQFjse1Xttq4ZYWwYAiXoySb5VUui3PqPhk\"]},\"project:/contracts/libs/WitnetBuffer.sol\":{\"keccak256\":\"0x8e07aebe2954ab3e6f2d8eceedb12db7cf915c1f3e8630f4fa9999cecb1c78ec\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ed6c54cc901183d61546e8fd15bd5ea8ef238ebc915642946071d435dd7481ea\",\"dweb:/ipfs/Qmcaqta7YjUSBbBUGqoh44bsCS6UqqoyHjBuz4qnKBShXM\"]},\"project:/contracts/libs/WitnetCBOR.sol\":{\"keccak256\":\"0xd99308373575cc10fb7f2ceb0f6a8625f3911275c1fa27811fae498d98d03d97\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b4909a999d7b660a2dc54ca957b6eccfa523e2765fc4d6a2574dee7d5cd67b43\",\"dweb:/ipfs/QmWGQT4KDcfSFe1hcHVoWx6E4PhYMaod5iLpJCWBEeShzh\"]}},\"version\":1}",
  "bytecode": "0x6141ba610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061013d575f3560e01c8063a8c06a13116100bf578063c5f3674a11610084578063c5f3674a146102a0578063d7a7291e146102b3578063daf4b0ef146102c6578063dfaecd11146102d9578063f3106f78146102ec578063fa5dce121461030c575f5ffd5b8063a8c06a1314610241578063a97b1d3114610254578063acbade1f14610267578063b6349ebd1461027a578063b7aa578f1461028d575f5ffd5b806336c6c9a41161010557806336c6c9a4146101d25780633b1e539b146101f357806369c3a0b3146102065780636a11b2a81461021957806372d22a861461022c575f5ffd5b80630160730f1461014157806312496a1b1461016c5780631c02d22b1461018c57806326ee38271461019f57806331d5650c146101b2575b5f5ffd5b61015461014f36600461307f565b61031f565b60405161ffff90911681526020015b60405180910390f35b61017f61017a3660046131af565b6104a9565b6040516101639190613216565b61017f61019a3660046132b2565b6104b6565b61017f6101ad3660046133bc565b61054e565b6101c56101c036600461360c565b6105b6565b6040516101639190613700565b6101e56101e03660046137b1565b610730565b604051908152602001610163565b6101c5610201366004613901565b61084c565b61017f610214366004613964565b6109c1565b61017f6102273660046131af565b6109e2565b61023f61023a366004613993565b6109ef565b005b61017f61024f366004613a20565b610cb3565b61023f610262366004613a61565b610e03565b61017f610275366004613a92565b610ec6565b61017f610288366004613b51565b61102b565b61017f61029b366004613993565b611166565b61017f6102ae366004613a61565b6111dd565b61017f6102c1366004613c8c565b61129c565b61023f6102d43660046132b2565b61139d565b61017f6102e7366004613d5e565b61149e565b6102ff6102fa3660046131af565b6114ff565b6040516101639190613d90565b61017f61031a366004613d9e565b611512565b5f808360138111156103335761033361363f565b14806103505750600783601381111561034e5761034e61363f565b145b8061036c5750600383601381111561036a5761036a61363f565b145b80610388575060018360138111156103865761038661363f565b145b806103a4575060068360138111156103a2576103a261363f565b145b15610406578161ffff165f036103f4578260138111156103c6576103c661363f565b604051637aba172760e01b815260ff909116600482015261ffff831660248201526044015b60405180910390fd5b6103ff826003613de3565b90506104a3565b600483601381111561041a5761041a61363f565b1480610437575060058360138111156104355761043561363f565b145b80610453575060028360138111156104515761045161363f565b145b15610460575060096104a3565b8260138111156104725761047261363f565b61047b846117f8565b604051637aba172760e01b815260ff909216600483015261ffff1660248201526044016103eb565b92915050565b60606104a3826002610cb3565b60605f5b82602001515181101561051957816104ee846020015183815181106104e1576104e1613dfd565b60200260200101516111dd565b6040516020016104ff929190613e28565b60408051601f1981840301815291905291506001016104ba565b5080610527835f01516109c1565b604051602001610538929190613e28565b6040516020818303038152906040529050919050565b60605f61055a85611864565b90505b805180515160209091015110156105ac57600360ff16816040015160ff160361059b5761058b81858561188f565b61059481611923565b905061055d565b6105946105a78261194b565b611923565b5151949350505050565b6105f56040805160e081019091525f808252602082019081526020015f8152602001606081526020016060815260200160608152602001606081525090565b61060484606001518484611b0b565b60608501526080840151610619908484611b0b565b608085015260c084015161062e90848461054e565b60c08501525f5b8460a0015151811015610727576106808560a00151828151811061065b5761065b613dfd565b60200260200101515f6002811061067457610674613dfd565b60200201518585611b0b565b8560a00151828151811061069657610696613dfd565b60200260200101515f600281106106af576106af613dfd565b60200201819052506106ea8560a0015182815181106106d0576106d0613dfd565b602002602001015160016002811061067457610674613dfd565b8560a00151828151811061070057610700613dfd565b602002602001015160016002811061071a5761071a613dfd565b6020020152600101610635565b50929392505050565b5f60038660048111156107455761074561363f565b148061076c575060018660048111156107605761076061363f565b14801561076c57508351155b80610792575060048660048111156107865761078661363f565b14801561079257508351155b806107dc575060028660048111156107ac576107ac61363f565b1480156107b857508451155b80156107c357508351155b80156107ce57508251155b80156107dc57506001825110155b610812578560048111156107f2576107f261363f565b858585604051633a3cb62160e01b81526004016103eb9493929190613e3c565b858585858560405160200161082b959493929190613e88565b60405160208183030381529060405280519060200120905095945050505050565b61088b6040805160e081019091525f808252602082019081526020015f8152602001606081526020016060815260200160608152602001606081525090565b610899836060015183611b23565b606084015260808301516108ad9083611b23565b608084015260c08301516108c1908361149e565b60c08401525f5b8360a00151518110156109b9576109128460a0015182815181106108ee576108ee613dfd565b60200260200101515f6002811061090757610907613dfd565b602002015184611b23565b8460a00151828151811061092857610928613dfd565b60200260200101515f6002811061094157610941613dfd565b602002018190525061097c8460a00151828151811061096257610962613dfd565b602002602001015160016002811061090757610907613dfd565b8460a00151828151811061099257610992613dfd565b60200260200101516001600281106109ac576109ac613dfd565b60200201526001016108c8565b509192915050565b60606104a382600b8111156109d8576109d861363f565b600160fc1b610ec6565b60606104a3826003610cb3565b80604001516001600160401b03165f03610a525760405162461bcd60e51b815260206004820152603160248201525f5160206141655f395f51905f526044820152701a590814d3104e881b9bc81c995dd85c99607a1b60648201526084016103eb565b805160ff165f03610aaf5760405162461bcd60e51b815260206004820152603460248201525f5160206141655f395f51905f52604482015273696420534c413a206e6f207769746e657373657360601b60648201526084016103eb565b607f815f015160ff161115610b235760405162461bcd60e51b815260206004820152604160248201525f5160206141655f395f51905f5260448201527f696420534c413a20746f6f206d616e79207769746e657373657320283e3132376064820152602960f81b608482015260a4016103eb565b6033816020015160ff161080610b4057506063816020015160ff16115b15610bb25760405162461bcd60e51b815260206004820152604960248201525f5160206141655f395f51905f5260448201527f696420534c413a20636f6e73656e7375732070657263656e74616765206f7574606482015268206f662072616e676560b81b608482015260a4016103eb565b60608101516001600160401b031615610c185760405162461bcd60e51b815260206004820152603560248201525f5160206141655f395f51905f526044820152741a590814d3104e881b9bc818dbdb1b185d195c985b605a1b60648201526084016103eb565b607f81604001518260600151610c2e9190613f01565b6001600160401b03161115610cb05760405162461bcd60e51b815260206004820152604f60248201525f5160206141655f395f51905f5260448201527f696420534c413a20636f6c6c61746572616c2f72657761726420726174696f2060648201526e746f6f206869676820283e3132372960881b608482015260a4016103eb565b50565b81516060906017811015610cf4578060ff16600584901b1784604051602001610cdd929190613f2e565b6040516020818303038152906040529150506104a3565b600583901b606060ff8311610d3b576040516001600160f81b031960f885901b166020820152601892909217916021015b6040516020818303038152906040529050610dce565b61ffff8311610d6a576040516001600160f01b031960f085901b16602082015260199290921791602201610d25565b63ffffffff8311610d9b576040516001600160e01b031960e085901b166020820152601a9290921791602401610d25565b6040516001600160c01b031960c085901b166020820152601b929092179160280160405160208183030381529060405290505b818187604051602001610de393929190613f4d565b60405160208183030381529060405293505050506104a3565b5092915050565b600581516009811115610e1857610e1861363f565b03610e5c578060200151515f03610cb05780516009811115610e3c57610e3c61363f565b81602001516040516319037b1360e31b81526004016103eb929190613f6f565b600881516009811115610e7157610e7161363f565b03610e945760208101515115610cb05780516009811115610e3c57610e3c61363f565b80516009811115610ea757610ea761363f565b60405163ddb08eaf60e01b815260ff90911660048201526024016103eb565b60608260025b607f826001600160401b03161115610ef9576007826001600160401b0316901c9150600181019050610ecc565b806001600160401b03166001600160401b03811115610f1a57610f1a6130b0565b6040519080825280601f01601f191660200182016040528015610f44576020820181803683370190505b50925084915083835f81518110610f5d57610f5d613dfd565b60200101906001600160f81b03191690815f1a90535060015b816001600160401b0316816001600160401b03161015610fe45782607f1660801760f81b84826001600160401b031681518110610fb557610fb5613dfd565b60200101906001600160f81b03191690815f1a90535060079290921c6701ffffffffffffff1691600101610f76565b50607f60f81b83600183036001600160401b03168151811061100857611008613dfd565b0160200180519091166001600160f81b031916905f82901a905350505092915050565b60605f86516001600160401b03811115611047576110476130b0565b60405190808252806020026020018201604052801561107a57816020015b60608152602001906001900390816110655790505b5090505f5b875181101561110c576110c488828151811061109d5761109d613dfd565b60200260200101518883815181106110b7576110b7613dfd565b602002602001015161084c565b506110e78882815181106110da576110da613dfd565b6020026020010151611512565b8282815181106110f9576110f9613dfd565b602090810291909101015260010161107f565b5061111681611b39565b855161112690600d60f91b610ec6565b866111368751602260f81b610ec6565b8760405160200161114b959493929190613f8a565b60405160208183030381529060405291505095945050505050565b606061117a8260400151601060f81b610ec6565b825161118d9060ff16600360fb1b610ec6565b60808401516111a090600160fd1b610ec6565b60208501516111b69060ff16600560fb1b610ec6565b60608601516111c990600360fc1b610ec6565b604051602001610538959493929190613f8a565b6060611201825f015160098111156111f7576111f761363f565b600160fb1b610ec6565b5f836020015151116112215760405180602001604052805f815250611259565b60208301515161123590600960f91b610ec6565b602080850151604051611249939201613e28565b6040516020818303038152906040525b60405160200161126a929190613e28565b604051602081830303815290604052905061128a8151600a60f81b610ec6565b81604051602001610538929190613e28565b60605f86516001600160401b038111156112b8576112b86130b0565b6040519080825280602002602001820160405280156112eb57816020015b60608152602001906001900390816112d65790505b5090505f5b875181101561135e5761132388828151811061130e5761130e613dfd565b60200260200101518888906102019190613fb3565b506113398882815181106110da576110da613dfd565b82828151811061134b5761134b613dfd565b60209081029190910101526001016112f0565b5061136881611b39565b845161137890600d60f91b610ec6565b856113888651602260f81b610ec6565b8660405160200161114b959493929190613f8a565b60038151600b8111156113b2576113b261363f565b14806113d0575060078151600b8111156113ce576113ce61363f565b145b806113ed575060028151600b8111156113eb576113eb61363f565b145b8061140a5750600b8151600b8111156114085761140861363f565b145b80611427575060058151600b8111156114255761142561363f565b145b61145d578051600b81111561143e5761143e61363f565b60405163a1165d6360e01b815260ff90911660048201526024016103eb565b5f5b81602001515181101561149a576114928260200151828151811061148557611485613dfd565b6020026020010151610e03565b60010161145f565b5050565b60605f6114aa84611864565b90505b805180515160209091015110156114f657600360ff16816040015160ff16036114ea576114da8184611b8e565b6114e381611923565b90506114ad565b6114e36105a78261194b565b51519392505050565b5f6104a361150c83611864565b5f611c20565b60605f61152e836020015160048111156111f7576111f761363f565b905060605f846060015151111561157b5760608401515161155390600960f91b610ec6565b8460600151604051602001611569929190613e28565b60405160208183030381529060405290505b60c084015151606090156115c55760c08501515161159d90600d60f91b610ec6565b8560c001516040516020016115b3929190613e28565b60405160208183030381529060405290505b6080850151516060901561160f576080860151516115e790601160f91b610ec6565b86608001516040516020016115fd929190613e28565b60405160208183030381529060405290505b60a0860151516060901561177f575f5b8760a001515181101561177d575f61166f8960a00151838151811061164657611646613dfd565b60200260200101515f6002811061165f5761165f613dfd565b602002015151600560f91b610ec6565b8960a00151838151811061168557611685613dfd565b60200260200101515f6002811061169e5761169e613dfd565b60200201516116e68b60a0015185815181106116bc576116bc613dfd565b60200260200101516001600281106116d6576116d6613dfd565b602002015151600960f91b610ec6565b8b60a0015185815181106116fc576116fc613dfd565b602002602001015160016002811061171657611716613dfd565b602002015160405160200161172e9493929190613fbf565b60405160208183030381529060405290508261174f8251602a60f81b610ec6565b8260405160200161176293929190613fdd565b60408051601f1981840301815291905292505060010161161f565b505b5f815183518551875189516117949190613fee565b61179e9190613fee565b6117a89190613fee565b6117b29190613fee565b90506117c281600960f91b610ec6565b86868686866040516020016117dc96959493929190614001565b6040516020818303038152906040529650505050505050919050565b5f600482601381111561180d5761180d61363f565b148061182a575060058260138111156118285761182861363f565b145b1561183757506009919050565b600282601381111561184b5761184b61363f565b0361185857506001919050565b505f919050565b919050565b61186c61301b565b604080518082019091528281525f602082015261188881611db0565b9392505050565b60808301518351602001516001600160401b03909116905f6118b086611ecd565b90505f5f6118bf838888611fd2565b90925090508015611919575f6118d4836109e2565b90506118e08686614021565b8951602001528351611900906118f7908890613fee565b8a519083612229565b805189516020018051611914908390613fee565b905250505b5050505050505050565b61192b61301b565b815180515160209091015110156119475781516104a390611db0565b5090565b61195361301b565b604082015160ff16158061196e5750604082015160ff166001145b806119a75750604082015160ff16600714801561199357506019826060015160ff1610155b80156119a75750601b826060015160ff1611155b156119d9576119b582612352565b6001600160401b0316825f01516020018181516119d29190613fee565b9052505090565b604082015160ff16600314806119f65750604082015160ff166002145b15611a37575f611a0d835f015184606001516123bd565b9050806001600160401b0316835f0151602001818151611a2d9190613fee565b9052506119479050565b604082015160ff1660041480611a545750604082015160ff166005145b15611a7c57611a6a825f015183606001516123bd565b6001600160401b031660808301525090565b604082015160ff166007141580611aae5750816060015160ff16601414158015611aae5750816060015160ff16601514155b156119475760405162461bcd60e51b815260206004820152602760248201527f5769746e657443424f522e736b69703a20756e737570706f72746564206d616a6044820152666f72207479706560c81b60648201526084016103eb565b60605f611b19858585611fd2565b5095945050505050565b60605f611b30848461247d565b50949350505050565b604051602081015f60015b84518111611b78576020818102860151805190918201611b65868284612709565b5093840193929092019150600101611b44565b5080835260208101604051016040525050919050565b60808201518251602001516001600160401b03909116905f611baf85611ecd565b90505f5f611bbd838761247d565b90925090508015611c17575f611bd2836109e2565b9050611bde8686614021565b8851602001528351611bfe90611bf5908890613fee565b89519083612229565b805188516020018051611c12908390613fee565b905250505b50505050505050565b5f600460ff16836040015160ff1603611cb8575f611c3d8461274f565b9050600181511115611caf5782611c8457611c7f8160028351611c609190614021565b81518110611c7057611c70613dfd565b60200260200101516001611c20565b611ca7565b611ca7815f81518110611c9957611c99613dfd565b60200260200101515f611c20565b9150506104a3565b5f9150506104a3565b604083015160ff16611d88578251602001515f611cd4856128fa565b6001600160401b031690505f6040518060a00160405280608081526020016140e560809139518211611d37576040518060a00160405280608081526020016140e5608091398281518110611d2a57611d2a613dfd565b016020015160f81c611d3a565b60ff5b9050601360ff82161115611d6957855151604051631aef51bd60e31b81526103eb919085908590600401614034565b8060ff166013811115611d7e57611d7e61363f565b93505050506104a3565b604080840151905161800560e51b81525f600482015260ff90911660248201526044016103eb565b611db861301b565b81515182905f03611ddc576040516309036d4760e21b815260040160405180910390fd5b5f60ff816001600160401b038160015b8015611e5d57611dfb89612949565b955081611e078161405f565b6007600589901c169650601f881695509250506005198501611e56576020890151611e328a866123bd565b9350808a60200151611e449190614021565b611e4e9084613fee565b925050611dec565b505f611dec565b600760ff86161115611e875760405163bd2ac87960e01b815260ff861660048201526024016103eb565b506040805160c08101825298895260ff95861660208a015293851693880193909352921660608601526001600160401b0390811660808601521660a08401525090919050565b60608160038060ff16826040015160ff1614611f0d57604080830151905161800560e51b815260ff918216600482015290821660248201526044016103eb565b611f1e845f015185606001516123bd565b6001600160401b03166080850181905267fffffffffffffffe1901611fb8575f5b80611fb2575f611f56865f015187604001516129a9565b90506001600160401b038082161015611fa75784611f80611f78600484613f01565b885190612a4e565b604051602001611f91929190613e28565b6040516020818303038152906040529450611fac565b600191505b50611f3f565b50611fcb565b60808401518451611fc891612a4e565b92505b5050919050565b60605f5f5f90505f5f90505f5f5f5f5f5f60038d511015612000578c5f995099505050505050505050612221565b60208d019450604051995060208a01925060208b0190508a5191505f60028e510390505b808910156121b457601760fa1b6001600160f81b0319168e8a8151811061204d5761204d613dfd565b01602001516001600160f81b0319161480156120995750601760fa1b6001600160f81b0319168e8a6002018151811061208857612088613dfd565b01602001516001600160f81b031916145b80156120d65750600360fc1b6001600160f81b0319168e8a600101815181106120c4576120c4613dfd565b01602001516001600160f81b03191610155b80156121135750603960f81b6001600160f81b0319168e8a6001018151811061210157612101613dfd565b01602001516001600160f81b03191611155b801561214957508c60ff16600360fc1b60f81c8f8b6001018151811061213b5761213b613dfd565b016020015160f81c0360ff16145b156121a95787890396508789111561217657612166848789612709565b948601600301949286019261217d565b6003860195505b612188848385612709565b60019099019860039890980197889750868301949094019392820192612024565b600190980197612024565b508c519750831561220557868811156121f2576121db83866121d68a8c614021565b612709565b6121e58789614021565b6121ef9085613fee565b93505b838a526020840160405101604052612218565b8c5f995099505050505050505050612221565b50505050505050505b935093915050565b6020830151835151839161223c91614021565b612247906001613fee565b80821115612272576040516363a056dd60e01b815260048101839052602481018290526044016103eb565b604080516003808252608082019092525f91816020015b60608152602001906001900390816122895790505090506122af865f8860200151612bd2565b815f815181106122c1576122c1613dfd565b602002602001018190525083816001815181106122e0576122e0613dfd565b6020026020010181905250612321868688602001516122ff9190613fee565b6020890151895151899161231291614021565b61231c9190614021565b612bd2565b8160028151811061233457612334613dfd565b602002602001018190525061234881611b39565b9095525050505050565b5f6018826060015160ff16101561236a57505f919050565b601c826060015160ff161015612399576018826060015161238b9190614077565b60ff166001901b9050919050565b6060820151604051636d785b1360e01b815260ff90911660048201526024016103eb565b5f60188260ff1610156123d4575060ff81166104a3565b8160ff166018036123f2576123e883612949565b60ff1690506104a3565b8160ff166019036124115761240683612c77565b61ffff1690506104a3565b8160ff16601a036124325761242583612ce2565b63ffffffff1690506104a3565b8160ff16601b03612446576103ff83612d40565b8160ff16601f0361245f57506001600160401b036104a3565b604051636d785b1360e01b815260ff831660048201526024016103eb565b60605f5f5f90505f5f90505f5f5f5f5f5f5f60038d5110156124ad578c5f9a509a50505050505050505050612702565b6040518d51909b5060208e810197508c019450600119015b808a101561269857601760fa1b6001600160f81b0319168e8b815181106124ee576124ee613dfd565b01602001516001600160f81b03191614801561253a5750601760fa1b6001600160f81b0319168e8b6002018151811061252957612529613dfd565b01602001516001600160f81b031916145b80156125775750600360fc1b6001600160f81b0319168e8b6001018151811061256557612565613dfd565b01602001516001600160f81b03191610155b80156125b45750603960f81b6001600160f81b0319168e8b600101815181106125a2576125a2613dfd565b01602001516001600160f81b03191611155b1561268d57888a039750888a11156125e1576125d185888a612709565b95870160030195938701936125e8565b6003870196505b5f600360fc1b60f81c8f8c6001018151811061260657612606613dfd565b602001015160f81c60f81b60f81c0360ff1690508d51811061264a578d516040516306786e0760e21b815260018301600482015260248101919091526044016103eb565b600181016020028e015194508451935060208501925061266b868486612709565b506001909a0199600399909901988998508783019590950194938201936124c5565b6001909901986124c5565b508c51985084156126e457878911156126d1576126ba84876121d68b8d614021565b6126c4888a614021565b6126ce9086613fee565b94505b848b5260208501604051016040526126f8565b8c5f9a509a50505050505050505050612702565b5050505050505050505b9250929050565b5b60208110612729578151835260209283019290910190601f190161270a565b801561274a578151835160208390036101000a5f1901801990921691161783525b505050565b60608160048060ff16826040015160ff161461278f57604080830151905161800560e51b815260ff918216600482015290821660248201526044016103eb565b5f6127a1855f015186606001516123bd565b90506127ae816001614090565b6001600160401b03166001600160401b038111156127ce576127ce6130b0565b60405190808252806020026020018201604052801561280757816020015b6127f461301b565b8152602001906001900390816127ec5790505b5093505f5b816001600160401b03168110156128ca5761282686611923565b955061283186612d9e565b85828151811061284357612843613dfd565b6020026020010181905250600460ff16866040015160ff160361289b575f61286a8761274f565b9050806001825161287b9190614021565b8151811061288b5761288b613dfd565b60200260200101519650506128c2565b600560ff16866040015160ff16036128b7575f61286a87612e35565b6128c08661194b565b505b60010161280c565b508484826001600160401b0316815181106128e7576128e7613dfd565b6020026020010181905250505050919050565b5f815f8060ff16826040015160ff161461293857604080830151905161800560e51b815260ff918216600482015290821660248201526044016103eb565b611fc8845f015185606001516123bd565b5f8160200151825f0151518082111561297f576040516363a056dd60e01b815260048101839052602481018290526044016103eb565b835160208501805180830160010151955090819061299c8261405f565b8152505050505050919050565b5f5f6129b484612949565b90508060ff1660ff036129d1576001600160401b039150506104a3565b6129de8482601f166123bd565b91506001600160401b0380831610612a1457604051636d785b1360e01b81526001600160401b03831660048201526024016103eb565b60ff83166007600583901c1614610dfc5760405161800560e51b81526007600583901c16600482015260ff841660248201526044016103eb565b6060816001600160401b03166001600160401b03811115612a7157612a716130b0565b6040519080825280601f01601f191660200182016040528015612a9b576020820181803683370190505b5090505f5b826001600160401b0316816001600160401b03161015612bc9575f612ac485612949565b90506080811615612b8b5760e08160ff161015612b0057612ae485612949565b603f16600682601f1660ff16901b179050600184039350612b8b565b60f08160ff161015612b4557612b1585612949565b603f166006612b2387612949565b603f1660ff16901b600c83600f1660ff16901b17179050600284039350612b8b565b612b4e85612949565b603f166006612b5c87612949565b603f16901b600c612b6c88612949565b603f1660ff16901b601284600f1660ff16901b17171790506003840393505b8060f81b83836001600160401b031681518110612baa57612baa613dfd565b60200101906001600160f81b03191690815f1a90535050600101612aa0565b50908152919050565b6060612bde8284613fee565b84515180821115612c0c576040516363a056dd60e01b815260048101839052602481018290526044016103eb565b85515f856001600160401b03811115612c2757612c276130b0565b6040519080825280601f01601f191660200182016040528015612c51576020820181803683370190505b50905060208082019083890101612c6982828a612709565b509098975050505050505050565b5f81602001516002612c899190613fee565b82515180821115612cb7576040516363a056dd60e01b815260048101839052602481018290526044016103eb565b8351602085018051600281840181015196509091612cd58284613fee565b9052509395945050505050565b5f81602001516004612cf49190613fee565b82515180821115612d22576040516363a056dd60e01b815260048101839052602481018290526044016103eb565b8351602085018051600481840181015196509091612cd58284613fee565b5f81602001516008612d529190613fee565b82515180821115612d80576040516363a056dd60e01b815260048101839052602481018290526044016103eb565b8351602085018051600881840181015196509091612cd58284613fee565b612da661301b565b6040805160c0810180835284516101008301845260609091525f60e0830152825180840190935280518352602090810151908301529081908152602001836020015160ff168152602001836040015160ff168152602001836060015160ff16815260200183608001516001600160401b031681526020018360a001516001600160401b03168152509050919050565b60608160058060ff16826040015160ff1614612e7557604080830151905161800560e51b815260ff918216600482015290821660248201526044016103eb565b5f612e87855f015186606001516123bd565b612e929060026140af565b9050612e9f816001614090565b6001600160401b03166001600160401b03811115612ebf57612ebf6130b0565b604051908082528060200260200182016040528015612ef857816020015b612ee561301b565b815260200190600190039081612edd5790505b5093505f5b816001600160401b03168110156128ca57612f1786611923565b9550612f2286612d9e565b858281518110612f3457612f34613dfd565b6020908102919091010152612f4a6002826140d1565b158015612f5f5750604086015160ff16600314155b15612f8d57604080870151905161800560e51b815260ff9091166004820152600360248201526044016103eb565b604086015160ff1660041480612faa5750604086015160ff166005145b156130085760408601515f9060ff16600414612fce57612fc987612e35565b612fd7565b612fd78761274f565b90508060018251612fe89190614021565b81518110612ff857612ff8613dfd565b6020026020010151965050613013565b6130118661194b565b505b600101612efd565b604080516101008101909152606060c082019081525f60e0830152819081525f6020820181905260408201819052606082018190526080820181905260a09091015290565b80356014811061185f575f5ffd5b803561ffff8116811461185f575f5ffd5b5f5f60408385031215613090575f5ffd5b61309983613060565b91506130a76020840161306e565b90509250929050565b634e487b7160e01b5f52604160045260245ffd5b604080519081016001600160401b03811182821017156130e6576130e66130b0565b60405290565b60405160e081016001600160401b03811182821017156130e6576130e66130b0565b604051601f8201601f191681016001600160401b0381118282101715613136576131366130b0565b604052919050565b5f82601f83011261314d575f5ffd5b8135602083015f5f6001600160401b0384111561316c5761316c6130b0565b50601f8301601f19166020016131818161310e565b915050828152858383011115613195575f5ffd5b828260208301375f92810160200192909252509392505050565b5f602082840312156131bf575f5ffd5b81356001600160401b038111156131d4575f5ffd5b6131e08482850161313e565b949350505050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f61188860208301846131e8565b8035600c811061185f575f5ffd5b5f6001600160401b0382111561324e5761324e6130b0565b5060051b60200190565b5f60408284031215613268575f5ffd5b6132706130c4565b90508135600a8110613280575f5ffd5b815260208201356001600160401b0381111561329a575f5ffd5b6132a68482850161313e565b60208301525092915050565b5f602082840312156132c2575f5ffd5b81356001600160401b038111156132d7575f5ffd5b8201604081850312156132e8575f5ffd5b6132f06130c4565b6132f982613228565b815260208201356001600160401b03811115613313575f5ffd5b80830192505084601f830112613327575f5ffd5b813561333a61333582613236565b61310e565b8082825260208201915060208360051b86010192508783111561335b575f5ffd5b602085015b8381101561339b5780356001600160401b0381111561337d575f5ffd5b61338c8a6020838a0101613258565b84525060209283019201613360565b506020840152509095945050505050565b803560ff8116811461185f575f5ffd5b5f5f5f606084860312156133ce575f5ffd5b83356001600160401b038111156133e3575f5ffd5b6133ef8682870161313e565b9350506133fe602085016133ac565b915060408401356001600160401b03811115613418575f5ffd5b6134248682870161313e565b9150509250925092565b80356005811061185f575f5ffd5b5f82601f83011261344b575f5ffd5b813561345961333582613236565b8082825260208201915060208360051b86010192508583111561347a575f5ffd5b602085015b83811015611b195780356001600160401b0381111561349c575f5ffd5b8601603f810188136134ac575f5ffd5b6134b46130c4565b80606083018a8111156134c5575f5ffd5b602084015b818110156135055780356001600160401b038111156134e7575f5ffd5b6134f68d60208389010161313e565b855250602093840193016134ca565b5050855250506020928301920161347f565b5f60e08284031215613527575f5ffd5b61352f6130ec565b905061353a826133ac565b81526135486020830161342e565b602082015261355960408301613060565b604082015260608201356001600160401b03811115613576575f5ffd5b6135828482850161313e565b60608301525060808201356001600160401b038111156135a0575f5ffd5b6135ac8482850161313e565b60808301525060a08201356001600160401b038111156135ca575f5ffd5b6135d68482850161343c565b60a08301525060c08201356001600160401b038111156135f4575f5ffd5b6136008482850161313e565b60c08301525092915050565b5f5f5f6060848603121561361e575f5ffd5b83356001600160401b03811115613633575f5ffd5b6133ef86828701613517565b634e487b7160e01b5f52602160045260245ffd5b600581106136635761366361363f565b9052565b601481106136635761366361363f565b5f82825180855260208501945060208160051b830101602085015f5b838110156136f457848303601f19018852815183604081015f5b60028110156136db5786820383526136c68285516131e8565b602094850194939093019291506001016136ad565b5060209a8b019a90955093909301925050600101613693565b50909695505050505050565b6020815260ff82511660208201525f60208301516137216040840182613653565b5060408301516137346060840182613667565b50606083015160e0608084015261374f6101008401826131e8565b90506080840151601f198483030160a085015261376c82826131e8565b91505060a0840151601f198483030160c085015261378a8282613677565b91505060c0840151601f198483030160e08501526137a882826131e8565b95945050505050565b5f5f5f5f5f60a086880312156137c5575f5ffd5b6137ce8661342e565b945060208601356001600160401b038111156137e8575f5ffd5b6137f48882890161313e565b94505060408601356001600160401b0381111561380f575f5ffd5b61381b8882890161313e565b93505060608601356001600160401b03811115613836575f5ffd5b6138428882890161343c565b92505060808601356001600160401b0381111561385d575f5ffd5b6138698882890161313e565b9150509295509295909350565b5f61388361333584613236565b838152905060208101600584901b83018581111561389f575f5ffd5b835b818110156138d95780356001600160401b038111156138be575f5ffd5b6138ca8882880161313e565b845250602092830192016138a1565b5050509392505050565b5f82601f8301126138f2575f5ffd5b61188883833560208501613876565b5f5f60408385031215613912575f5ffd5b82356001600160401b03811115613927575f5ffd5b61393385828601613517565b92505060208301356001600160401b0381111561394e575f5ffd5b61395a858286016138e3565b9150509250929050565b5f60208284031215613974575f5ffd5b61188882613228565b80356001600160401b038116811461185f575f5ffd5b5f60a08284031280156139a4575f5ffd5b5060405160a081016001600160401b03811182821017156139c7576139c76130b0565b6040526139d3836133ac565b81526139e1602084016133ac565b60208201526139f26040840161397d565b6040820152613a036060840161397d565b6060820152613a146080840161397d565b60808201529392505050565b5f5f60408385031215613a31575f5ffd5b82356001600160401b03811115613a46575f5ffd5b613a528582860161313e565b95602094909401359450505050565b5f60208284031215613a71575f5ffd5b81356001600160401b03811115613a86575f5ffd5b6131e084828501613258565b5f5f60408385031215613aa3575f5ffd5b613aac8361397d565b915060208301356001600160f81b031981168114613ac8575f5ffd5b809150509250929050565b5f82601f830112613ae2575f5ffd5b8135613af061333582613236565b8082825260208201915060208360051b860101925085831115613b11575f5ffd5b602085015b83811015611b195780356001600160401b03811115613b33575f5ffd5b613b42886020838a0101613517565b84525060209283019201613b16565b5f5f5f5f5f60a08688031215613b65575f5ffd5b85356001600160401b03811115613b7a575f5ffd5b613b8688828901613ad3565b95505060208601356001600160401b03811115613ba1575f5ffd5b8601601f81018813613bb1575f5ffd5b8035613bbf61333582613236565b8082825260208201915060208360051b85010192508a831115613be0575f5ffd5b602084015b83811015613c205780356001600160401b03811115613c02575f5ffd5b613c118d6020838901016138e3565b84525060209283019201613be5565b50965050505060408601356001600160401b03811115613c3e575f5ffd5b613c4a8882890161313e565b93505060608601356001600160401b03811115613c65575f5ffd5b613c718882890161313e565b925050613c806080870161306e565b90509295509295909350565b5f5f5f5f5f60808688031215613ca0575f5ffd5b85356001600160401b03811115613cb5575f5ffd5b613cc188828901613ad3565b95505060208601356001600160401b03811115613cdc575f5ffd5b8601601f81018813613cec575f5ffd5b80356001600160401b03811115613d01575f5ffd5b8860208260051b8401011115613d15575f5ffd5b6020919091019450925060408601356001600160401b03811115613d37575f5ffd5b613d438882890161313e565b92505060608601356001600160401b0381111561385d575f5ffd5b5f5f60408385031215613d6f575f5ffd5b82356001600160401b03811115613d84575f5ffd5b6139338582860161313e565b602081016104a38284613667565b5f60208284031215613dae575f5ffd5b81356001600160401b03811115613dc3575f5ffd5b6131e084828501613517565b634e487b7160e01b5f52601160045260245ffd5b61ffff81811683821601908111156104a3576104a3613dcf565b634e487b7160e01b5f52603260045260245ffd5b5f81518060208401855e5f93019283525090919050565b5f6131e0613e368386613e11565b84613e11565b60ff85168152608060208201525f613e5760808301866131e8565b8281036040840152613e6981866131e8565b90508281036060840152613e7d8185613677565b979650505050505050565b613e928187613653565b60a060208201525f613ea760a08301876131e8565b8281036040840152613eb981876131e8565b90508281036060840152613ecd8186613677565b90508281036080840152613ee181856131e8565b98975050505050505050565b634e487b7160e01b5f52601260045260245ffd5b5f6001600160401b03831680613f1957613f19613eed565b806001600160401b0384160491505092915050565b60f883901b6001600160f81b03191681525f6131e06001830184613e11565b60f884901b6001600160f81b03191681525f6137a8613e366001840186613e11565b60ff83168152604060208201525f6131e060408301846131e8565b5f613e7d613e36613fad613fa7613fa1868c613e11565b8a613e11565b88613e11565b86613e11565b5f611888368484613876565b5f613fd3613e36613fad613fa7858a613e11565b9695505050505050565b5f6137a8613e36613fad8488613e11565b808201808211156104a3576104a3613dcf565b5f613ee1613e36613fad613fa7613fa161401b878e613e11565b8c613e11565b818103818111156104a3576104a3613dcf565b606081525f61404660608301866131e8565b905083602083015260ff83166040830152949350505050565b5f6001820161407057614070613dcf565b5060010190565b60ff82811682821603908111156104a3576104a3613dcf565b6001600160401b0381811683821601908111156104a3576104a3613dcf565b6001600160401b038181168382160290811690818114610dfc57610dfc613dcf565b5f826140df576140df613eed565b50069056fe10ffffffffffffffffffffffffffffff040100010203050406071311ff0101ff07ff02ffffffffffffffffffffffffff070304ff04ffffffffffffff03ffffff0405070202ff0404040403ffffffffff05070402040205050505ff04ff04ffff07010203050406070101ff06ffff06ff0203050404000106060707070701ffff5769744f7261636c655261646f6e456e636f64696e674c69623a20696e76616ca264697066735822122041a8873e64273f13aaf10ed23f07aba3ce838df0754d515e7ea767c9154b3f6264736f6c634300081e0033",
  "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061013d575f3560e01c8063a8c06a13116100bf578063c5f3674a11610084578063c5f3674a146102a0578063d7a7291e146102b3578063daf4b0ef146102c6578063dfaecd11146102d9578063f3106f78146102ec578063fa5dce121461030c575f5ffd5b8063a8c06a1314610241578063a97b1d3114610254578063acbade1f14610267578063b6349ebd1461027a578063b7aa578f1461028d575f5ffd5b806336c6c9a41161010557806336c6c9a4146101d25780633b1e539b146101f357806369c3a0b3146102065780636a11b2a81461021957806372d22a861461022c575f5ffd5b80630160730f1461014157806312496a1b1461016c5780631c02d22b1461018c57806326ee38271461019f57806331d5650c146101b2575b5f5ffd5b61015461014f36600461307f565b61031f565b60405161ffff90911681526020015b60405180910390f35b61017f61017a3660046131af565b6104a9565b6040516101639190613216565b61017f61019a3660046132b2565b6104b6565b61017f6101ad3660046133bc565b61054e565b6101c56101c036600461360c565b6105b6565b6040516101639190613700565b6101e56101e03660046137b1565b610730565b604051908152602001610163565b6101c5610201366004613901565b61084c565b61017f610214366004613964565b6109c1565b61017f6102273660046131af565b6109e2565b61023f61023a366004613993565b6109ef565b005b61017f61024f366004613a20565b610cb3565b61023f610262366004613a61565b610e03565b61017f610275366004613a92565b610ec6565b61017f610288366004613b51565b61102b565b61017f61029b366004613993565b611166565b61017f6102ae366004613a61565b6111dd565b61017f6102c1366004613c8c565b61129c565b61023f6102d43660046132b2565b61139d565b61017f6102e7366004613d5e565b61149e565b6102ff6102fa3660046131af565b6114ff565b6040516101639190613d90565b61017f61031a366004613d9e565b611512565b5f808360138111156103335761033361363f565b14806103505750600783601381111561034e5761034e61363f565b145b8061036c5750600383601381111561036a5761036a61363f565b145b80610388575060018360138111156103865761038661363f565b145b806103a4575060068360138111156103a2576103a261363f565b145b15610406578161ffff165f036103f4578260138111156103c6576103c661363f565b604051637aba172760e01b815260ff909116600482015261ffff831660248201526044015b60405180910390fd5b6103ff826003613de3565b90506104a3565b600483601381111561041a5761041a61363f565b1480610437575060058360138111156104355761043561363f565b145b80610453575060028360138111156104515761045161363f565b145b15610460575060096104a3565b8260138111156104725761047261363f565b61047b846117f8565b604051637aba172760e01b815260ff909216600483015261ffff1660248201526044016103eb565b92915050565b60606104a3826002610cb3565b60605f5b82602001515181101561051957816104ee846020015183815181106104e1576104e1613dfd565b60200260200101516111dd565b6040516020016104ff929190613e28565b60408051601f1981840301815291905291506001016104ba565b5080610527835f01516109c1565b604051602001610538929190613e28565b6040516020818303038152906040529050919050565b60605f61055a85611864565b90505b805180515160209091015110156105ac57600360ff16816040015160ff160361059b5761058b81858561188f565b61059481611923565b905061055d565b6105946105a78261194b565b611923565b5151949350505050565b6105f56040805160e081019091525f808252602082019081526020015f8152602001606081526020016060815260200160608152602001606081525090565b61060484606001518484611b0b565b60608501526080840151610619908484611b0b565b608085015260c084015161062e90848461054e565b60c08501525f5b8460a0015151811015610727576106808560a00151828151811061065b5761065b613dfd565b60200260200101515f6002811061067457610674613dfd565b60200201518585611b0b565b8560a00151828151811061069657610696613dfd565b60200260200101515f600281106106af576106af613dfd565b60200201819052506106ea8560a0015182815181106106d0576106d0613dfd565b602002602001015160016002811061067457610674613dfd565b8560a00151828151811061070057610700613dfd565b602002602001015160016002811061071a5761071a613dfd565b6020020152600101610635565b50929392505050565b5f60038660048111156107455761074561363f565b148061076c575060018660048111156107605761076061363f565b14801561076c57508351155b80610792575060048660048111156107865761078661363f565b14801561079257508351155b806107dc575060028660048111156107ac576107ac61363f565b1480156107b857508451155b80156107c357508351155b80156107ce57508251155b80156107dc57506001825110155b610812578560048111156107f2576107f261363f565b858585604051633a3cb62160e01b81526004016103eb9493929190613e3c565b858585858560405160200161082b959493929190613e88565b60405160208183030381529060405280519060200120905095945050505050565b61088b6040805160e081019091525f808252602082019081526020015f8152602001606081526020016060815260200160608152602001606081525090565b610899836060015183611b23565b606084015260808301516108ad9083611b23565b608084015260c08301516108c1908361149e565b60c08401525f5b8360a00151518110156109b9576109128460a0015182815181106108ee576108ee613dfd565b60200260200101515f6002811061090757610907613dfd565b602002015184611b23565b8460a00151828151811061092857610928613dfd565b60200260200101515f6002811061094157610941613dfd565b602002018190525061097c8460a00151828151811061096257610962613dfd565b602002602001015160016002811061090757610907613dfd565b8460a00151828151811061099257610992613dfd565b60200260200101516001600281106109ac576109ac613dfd565b60200201526001016108c8565b509192915050565b60606104a382600b8111156109d8576109d861363f565b600160fc1b610ec6565b60606104a3826003610cb3565b80604001516001600160401b03165f03610a525760405162461bcd60e51b815260206004820152603160248201525f5160206141655f395f51905f526044820152701a590814d3104e881b9bc81c995dd85c99607a1b60648201526084016103eb565b805160ff165f03610aaf5760405162461bcd60e51b815260206004820152603460248201525f5160206141655f395f51905f52604482015273696420534c413a206e6f207769746e657373657360601b60648201526084016103eb565b607f815f015160ff161115610b235760405162461bcd60e51b815260206004820152604160248201525f5160206141655f395f51905f5260448201527f696420534c413a20746f6f206d616e79207769746e657373657320283e3132376064820152602960f81b608482015260a4016103eb565b6033816020015160ff161080610b4057506063816020015160ff16115b15610bb25760405162461bcd60e51b815260206004820152604960248201525f5160206141655f395f51905f5260448201527f696420534c413a20636f6e73656e7375732070657263656e74616765206f7574606482015268206f662072616e676560b81b608482015260a4016103eb565b60608101516001600160401b031615610c185760405162461bcd60e51b815260206004820152603560248201525f5160206141655f395f51905f526044820152741a590814d3104e881b9bc818dbdb1b185d195c985b605a1b60648201526084016103eb565b607f81604001518260600151610c2e9190613f01565b6001600160401b03161115610cb05760405162461bcd60e51b815260206004820152604f60248201525f5160206141655f395f51905f5260448201527f696420534c413a20636f6c6c61746572616c2f72657761726420726174696f2060648201526e746f6f206869676820283e3132372960881b608482015260a4016103eb565b50565b81516060906017811015610cf4578060ff16600584901b1784604051602001610cdd929190613f2e565b6040516020818303038152906040529150506104a3565b600583901b606060ff8311610d3b576040516001600160f81b031960f885901b166020820152601892909217916021015b6040516020818303038152906040529050610dce565b61ffff8311610d6a576040516001600160f01b031960f085901b16602082015260199290921791602201610d25565b63ffffffff8311610d9b576040516001600160e01b031960e085901b166020820152601a9290921791602401610d25565b6040516001600160c01b031960c085901b166020820152601b929092179160280160405160208183030381529060405290505b818187604051602001610de393929190613f4d565b60405160208183030381529060405293505050506104a3565b5092915050565b600581516009811115610e1857610e1861363f565b03610e5c578060200151515f03610cb05780516009811115610e3c57610e3c61363f565b81602001516040516319037b1360e31b81526004016103eb929190613f6f565b600881516009811115610e7157610e7161363f565b03610e945760208101515115610cb05780516009811115610e3c57610e3c61363f565b80516009811115610ea757610ea761363f565b60405163ddb08eaf60e01b815260ff90911660048201526024016103eb565b60608260025b607f826001600160401b03161115610ef9576007826001600160401b0316901c9150600181019050610ecc565b806001600160401b03166001600160401b03811115610f1a57610f1a6130b0565b6040519080825280601f01601f191660200182016040528015610f44576020820181803683370190505b50925084915083835f81518110610f5d57610f5d613dfd565b60200101906001600160f81b03191690815f1a90535060015b816001600160401b0316816001600160401b03161015610fe45782607f1660801760f81b84826001600160401b031681518110610fb557610fb5613dfd565b60200101906001600160f81b03191690815f1a90535060079290921c6701ffffffffffffff1691600101610f76565b50607f60f81b83600183036001600160401b03168151811061100857611008613dfd565b0160200180519091166001600160f81b031916905f82901a905350505092915050565b60605f86516001600160401b03811115611047576110476130b0565b60405190808252806020026020018201604052801561107a57816020015b60608152602001906001900390816110655790505b5090505f5b875181101561110c576110c488828151811061109d5761109d613dfd565b60200260200101518883815181106110b7576110b7613dfd565b602002602001015161084c565b506110e78882815181106110da576110da613dfd565b6020026020010151611512565b8282815181106110f9576110f9613dfd565b602090810291909101015260010161107f565b5061111681611b39565b855161112690600d60f91b610ec6565b866111368751602260f81b610ec6565b8760405160200161114b959493929190613f8a565b60405160208183030381529060405291505095945050505050565b606061117a8260400151601060f81b610ec6565b825161118d9060ff16600360fb1b610ec6565b60808401516111a090600160fd1b610ec6565b60208501516111b69060ff16600560fb1b610ec6565b60608601516111c990600360fc1b610ec6565b604051602001610538959493929190613f8a565b6060611201825f015160098111156111f7576111f761363f565b600160fb1b610ec6565b5f836020015151116112215760405180602001604052805f815250611259565b60208301515161123590600960f91b610ec6565b602080850151604051611249939201613e28565b6040516020818303038152906040525b60405160200161126a929190613e28565b604051602081830303815290604052905061128a8151600a60f81b610ec6565b81604051602001610538929190613e28565b60605f86516001600160401b038111156112b8576112b86130b0565b6040519080825280602002602001820160405280156112eb57816020015b60608152602001906001900390816112d65790505b5090505f5b875181101561135e5761132388828151811061130e5761130e613dfd565b60200260200101518888906102019190613fb3565b506113398882815181106110da576110da613dfd565b82828151811061134b5761134b613dfd565b60209081029190910101526001016112f0565b5061136881611b39565b845161137890600d60f91b610ec6565b856113888651602260f81b610ec6565b8660405160200161114b959493929190613f8a565b60038151600b8111156113b2576113b261363f565b14806113d0575060078151600b8111156113ce576113ce61363f565b145b806113ed575060028151600b8111156113eb576113eb61363f565b145b8061140a5750600b8151600b8111156114085761140861363f565b145b80611427575060058151600b8111156114255761142561363f565b145b61145d578051600b81111561143e5761143e61363f565b60405163a1165d6360e01b815260ff90911660048201526024016103eb565b5f5b81602001515181101561149a576114928260200151828151811061148557611485613dfd565b6020026020010151610e03565b60010161145f565b5050565b60605f6114aa84611864565b90505b805180515160209091015110156114f657600360ff16816040015160ff16036114ea576114da8184611b8e565b6114e381611923565b90506114ad565b6114e36105a78261194b565b51519392505050565b5f6104a361150c83611864565b5f611c20565b60605f61152e836020015160048111156111f7576111f761363f565b905060605f846060015151111561157b5760608401515161155390600960f91b610ec6565b8460600151604051602001611569929190613e28565b60405160208183030381529060405290505b60c084015151606090156115c55760c08501515161159d90600d60f91b610ec6565b8560c001516040516020016115b3929190613e28565b60405160208183030381529060405290505b6080850151516060901561160f576080860151516115e790601160f91b610ec6565b86608001516040516020016115fd929190613e28565b60405160208183030381529060405290505b60a0860151516060901561177f575f5b8760a001515181101561177d575f61166f8960a00151838151811061164657611646613dfd565b60200260200101515f6002811061165f5761165f613dfd565b602002015151600560f91b610ec6565b8960a00151838151811061168557611685613dfd565b60200260200101515f6002811061169e5761169e613dfd565b60200201516116e68b60a0015185815181106116bc576116bc613dfd565b60200260200101516001600281106116d6576116d6613dfd565b602002015151600960f91b610ec6565b8b60a0015185815181106116fc576116fc613dfd565b602002602001015160016002811061171657611716613dfd565b602002015160405160200161172e9493929190613fbf565b60405160208183030381529060405290508261174f8251602a60f81b610ec6565b8260405160200161176293929190613fdd565b60408051601f1981840301815291905292505060010161161f565b505b5f815183518551875189516117949190613fee565b61179e9190613fee565b6117a89190613fee565b6117b29190613fee565b90506117c281600960f91b610ec6565b86868686866040516020016117dc96959493929190614001565b6040516020818303038152906040529650505050505050919050565b5f600482601381111561180d5761180d61363f565b148061182a575060058260138111156118285761182861363f565b145b1561183757506009919050565b600282601381111561184b5761184b61363f565b0361185857506001919050565b505f919050565b919050565b61186c61301b565b604080518082019091528281525f602082015261188881611db0565b9392505050565b60808301518351602001516001600160401b03909116905f6118b086611ecd565b90505f5f6118bf838888611fd2565b90925090508015611919575f6118d4836109e2565b90506118e08686614021565b8951602001528351611900906118f7908890613fee565b8a519083612229565b805189516020018051611914908390613fee565b905250505b5050505050505050565b61192b61301b565b815180515160209091015110156119475781516104a390611db0565b5090565b61195361301b565b604082015160ff16158061196e5750604082015160ff166001145b806119a75750604082015160ff16600714801561199357506019826060015160ff1610155b80156119a75750601b826060015160ff1611155b156119d9576119b582612352565b6001600160401b0316825f01516020018181516119d29190613fee565b9052505090565b604082015160ff16600314806119f65750604082015160ff166002145b15611a37575f611a0d835f015184606001516123bd565b9050806001600160401b0316835f0151602001818151611a2d9190613fee565b9052506119479050565b604082015160ff1660041480611a545750604082015160ff166005145b15611a7c57611a6a825f015183606001516123bd565b6001600160401b031660808301525090565b604082015160ff166007141580611aae5750816060015160ff16601414158015611aae5750816060015160ff16601514155b156119475760405162461bcd60e51b815260206004820152602760248201527f5769746e657443424f522e736b69703a20756e737570706f72746564206d616a6044820152666f72207479706560c81b60648201526084016103eb565b60605f611b19858585611fd2565b5095945050505050565b60605f611b30848461247d565b50949350505050565b604051602081015f60015b84518111611b78576020818102860151805190918201611b65868284612709565b5093840193929092019150600101611b44565b5080835260208101604051016040525050919050565b60808201518251602001516001600160401b03909116905f611baf85611ecd565b90505f5f611bbd838761247d565b90925090508015611c17575f611bd2836109e2565b9050611bde8686614021565b8851602001528351611bfe90611bf5908890613fee565b89519083612229565b805188516020018051611c12908390613fee565b905250505b50505050505050565b5f600460ff16836040015160ff1603611cb8575f611c3d8461274f565b9050600181511115611caf5782611c8457611c7f8160028351611c609190614021565b81518110611c7057611c70613dfd565b60200260200101516001611c20565b611ca7565b611ca7815f81518110611c9957611c99613dfd565b60200260200101515f611c20565b9150506104a3565b5f9150506104a3565b604083015160ff16611d88578251602001515f611cd4856128fa565b6001600160401b031690505f6040518060a00160405280608081526020016140e560809139518211611d37576040518060a00160405280608081526020016140e5608091398281518110611d2a57611d2a613dfd565b016020015160f81c611d3a565b60ff5b9050601360ff82161115611d6957855151604051631aef51bd60e31b81526103eb919085908590600401614034565b8060ff166013811115611d7e57611d7e61363f565b93505050506104a3565b604080840151905161800560e51b81525f600482015260ff90911660248201526044016103eb565b611db861301b565b81515182905f03611ddc576040516309036d4760e21b815260040160405180910390fd5b5f60ff816001600160401b038160015b8015611e5d57611dfb89612949565b955081611e078161405f565b6007600589901c169650601f881695509250506005198501611e56576020890151611e328a866123bd565b9350808a60200151611e449190614021565b611e4e9084613fee565b925050611dec565b505f611dec565b600760ff86161115611e875760405163bd2ac87960e01b815260ff861660048201526024016103eb565b506040805160c08101825298895260ff95861660208a015293851693880193909352921660608601526001600160401b0390811660808601521660a08401525090919050565b60608160038060ff16826040015160ff1614611f0d57604080830151905161800560e51b815260ff918216600482015290821660248201526044016103eb565b611f1e845f015185606001516123bd565b6001600160401b03166080850181905267fffffffffffffffe1901611fb8575f5b80611fb2575f611f56865f015187604001516129a9565b90506001600160401b038082161015611fa75784611f80611f78600484613f01565b885190612a4e565b604051602001611f91929190613e28565b6040516020818303038152906040529450611fac565b600191505b50611f3f565b50611fcb565b60808401518451611fc891612a4e565b92505b5050919050565b60605f5f5f90505f5f90505f5f5f5f5f5f60038d511015612000578c5f995099505050505050505050612221565b60208d019450604051995060208a01925060208b0190508a5191505f60028e510390505b808910156121b457601760fa1b6001600160f81b0319168e8a8151811061204d5761204d613dfd565b01602001516001600160f81b0319161480156120995750601760fa1b6001600160f81b0319168e8a6002018151811061208857612088613dfd565b01602001516001600160f81b031916145b80156120d65750600360fc1b6001600160f81b0319168e8a600101815181106120c4576120c4613dfd565b01602001516001600160f81b03191610155b80156121135750603960f81b6001600160f81b0319168e8a6001018151811061210157612101613dfd565b01602001516001600160f81b03191611155b801561214957508c60ff16600360fc1b60f81c8f8b6001018151811061213b5761213b613dfd565b016020015160f81c0360ff16145b156121a95787890396508789111561217657612166848789612709565b948601600301949286019261217d565b6003860195505b612188848385612709565b60019099019860039890980197889750868301949094019392820192612024565b600190980197612024565b508c519750831561220557868811156121f2576121db83866121d68a8c614021565b612709565b6121e58789614021565b6121ef9085613fee565b93505b838a526020840160405101604052612218565b8c5f995099505050505050505050612221565b50505050505050505b935093915050565b6020830151835151839161223c91614021565b612247906001613fee565b80821115612272576040516363a056dd60e01b815260048101839052602481018290526044016103eb565b604080516003808252608082019092525f91816020015b60608152602001906001900390816122895790505090506122af865f8860200151612bd2565b815f815181106122c1576122c1613dfd565b602002602001018190525083816001815181106122e0576122e0613dfd565b6020026020010181905250612321868688602001516122ff9190613fee565b6020890151895151899161231291614021565b61231c9190614021565b612bd2565b8160028151811061233457612334613dfd565b602002602001018190525061234881611b39565b9095525050505050565b5f6018826060015160ff16101561236a57505f919050565b601c826060015160ff161015612399576018826060015161238b9190614077565b60ff166001901b9050919050565b6060820151604051636d785b1360e01b815260ff90911660048201526024016103eb565b5f60188260ff1610156123d4575060ff81166104a3565b8160ff166018036123f2576123e883612949565b60ff1690506104a3565b8160ff166019036124115761240683612c77565b61ffff1690506104a3565b8160ff16601a036124325761242583612ce2565b63ffffffff1690506104a3565b8160ff16601b03612446576103ff83612d40565b8160ff16601f0361245f57506001600160401b036104a3565b604051636d785b1360e01b815260ff831660048201526024016103eb565b60605f5f5f90505f5f90505f5f5f5f5f5f5f60038d5110156124ad578c5f9a509a50505050505050505050612702565b6040518d51909b5060208e810197508c019450600119015b808a101561269857601760fa1b6001600160f81b0319168e8b815181106124ee576124ee613dfd565b01602001516001600160f81b03191614801561253a5750601760fa1b6001600160f81b0319168e8b6002018151811061252957612529613dfd565b01602001516001600160f81b031916145b80156125775750600360fc1b6001600160f81b0319168e8b6001018151811061256557612565613dfd565b01602001516001600160f81b03191610155b80156125b45750603960f81b6001600160f81b0319168e8b600101815181106125a2576125a2613dfd565b01602001516001600160f81b03191611155b1561268d57888a039750888a11156125e1576125d185888a612709565b95870160030195938701936125e8565b6003870196505b5f600360fc1b60f81c8f8c6001018151811061260657612606613dfd565b602001015160f81c60f81b60f81c0360ff1690508d51811061264a578d516040516306786e0760e21b815260018301600482015260248101919091526044016103eb565b600181016020028e015194508451935060208501925061266b868486612709565b506001909a0199600399909901988998508783019590950194938201936124c5565b6001909901986124c5565b508c51985084156126e457878911156126d1576126ba84876121d68b8d614021565b6126c4888a614021565b6126ce9086613fee565b94505b848b5260208501604051016040526126f8565b8c5f9a509a50505050505050505050612702565b5050505050505050505b9250929050565b5b60208110612729578151835260209283019290910190601f190161270a565b801561274a578151835160208390036101000a5f1901801990921691161783525b505050565b60608160048060ff16826040015160ff161461278f57604080830151905161800560e51b815260ff918216600482015290821660248201526044016103eb565b5f6127a1855f015186606001516123bd565b90506127ae816001614090565b6001600160401b03166001600160401b038111156127ce576127ce6130b0565b60405190808252806020026020018201604052801561280757816020015b6127f461301b565b8152602001906001900390816127ec5790505b5093505f5b816001600160401b03168110156128ca5761282686611923565b955061283186612d9e565b85828151811061284357612843613dfd565b6020026020010181905250600460ff16866040015160ff160361289b575f61286a8761274f565b9050806001825161287b9190614021565b8151811061288b5761288b613dfd565b60200260200101519650506128c2565b600560ff16866040015160ff16036128b7575f61286a87612e35565b6128c08661194b565b505b60010161280c565b508484826001600160401b0316815181106128e7576128e7613dfd565b6020026020010181905250505050919050565b5f815f8060ff16826040015160ff161461293857604080830151905161800560e51b815260ff918216600482015290821660248201526044016103eb565b611fc8845f015185606001516123bd565b5f8160200151825f0151518082111561297f576040516363a056dd60e01b815260048101839052602481018290526044016103eb565b835160208501805180830160010151955090819061299c8261405f565b8152505050505050919050565b5f5f6129b484612949565b90508060ff1660ff036129d1576001600160401b039150506104a3565b6129de8482601f166123bd565b91506001600160401b0380831610612a1457604051636d785b1360e01b81526001600160401b03831660048201526024016103eb565b60ff83166007600583901c1614610dfc5760405161800560e51b81526007600583901c16600482015260ff841660248201526044016103eb565b6060816001600160401b03166001600160401b03811115612a7157612a716130b0565b6040519080825280601f01601f191660200182016040528015612a9b576020820181803683370190505b5090505f5b826001600160401b0316816001600160401b03161015612bc9575f612ac485612949565b90506080811615612b8b5760e08160ff161015612b0057612ae485612949565b603f16600682601f1660ff16901b179050600184039350612b8b565b60f08160ff161015612b4557612b1585612949565b603f166006612b2387612949565b603f1660ff16901b600c83600f1660ff16901b17179050600284039350612b8b565b612b4e85612949565b603f166006612b5c87612949565b603f16901b600c612b6c88612949565b603f1660ff16901b601284600f1660ff16901b17171790506003840393505b8060f81b83836001600160401b031681518110612baa57612baa613dfd565b60200101906001600160f81b03191690815f1a90535050600101612aa0565b50908152919050565b6060612bde8284613fee565b84515180821115612c0c576040516363a056dd60e01b815260048101839052602481018290526044016103eb565b85515f856001600160401b03811115612c2757612c276130b0565b6040519080825280601f01601f191660200182016040528015612c51576020820181803683370190505b50905060208082019083890101612c6982828a612709565b509098975050505050505050565b5f81602001516002612c899190613fee565b82515180821115612cb7576040516363a056dd60e01b815260048101839052602481018290526044016103eb565b8351602085018051600281840181015196509091612cd58284613fee565b9052509395945050505050565b5f81602001516004612cf49190613fee565b82515180821115612d22576040516363a056dd60e01b815260048101839052602481018290526044016103eb565b8351602085018051600481840181015196509091612cd58284613fee565b5f81602001516008612d529190613fee565b82515180821115612d80576040516363a056dd60e01b815260048101839052602481018290526044016103eb565b8351602085018051600881840181015196509091612cd58284613fee565b612da661301b565b6040805160c0810180835284516101008301845260609091525f60e0830152825180840190935280518352602090810151908301529081908152602001836020015160ff168152602001836040015160ff168152602001836060015160ff16815260200183608001516001600160401b031681526020018360a001516001600160401b03168152509050919050565b60608160058060ff16826040015160ff1614612e7557604080830151905161800560e51b815260ff918216600482015290821660248201526044016103eb565b5f612e87855f015186606001516123bd565b612e929060026140af565b9050612e9f816001614090565b6001600160401b03166001600160401b03811115612ebf57612ebf6130b0565b604051908082528060200260200182016040528015612ef857816020015b612ee561301b565b815260200190600190039081612edd5790505b5093505f5b816001600160401b03168110156128ca57612f1786611923565b9550612f2286612d9e565b858281518110612f3457612f34613dfd565b6020908102919091010152612f4a6002826140d1565b158015612f5f5750604086015160ff16600314155b15612f8d57604080870151905161800560e51b815260ff9091166004820152600360248201526044016103eb565b604086015160ff1660041480612faa5750604086015160ff166005145b156130085760408601515f9060ff16600414612fce57612fc987612e35565b612fd7565b612fd78761274f565b90508060018251612fe89190614021565b81518110612ff857612ff8613dfd565b6020026020010151965050613013565b6130118661194b565b505b600101612efd565b604080516101008101909152606060c082019081525f60e0830152819081525f6020820181905260408201819052606082018190526080820181905260a09091015290565b80356014811061185f575f5ffd5b803561ffff8116811461185f575f5ffd5b5f5f60408385031215613090575f5ffd5b61309983613060565b91506130a76020840161306e565b90509250929050565b634e487b7160e01b5f52604160045260245ffd5b604080519081016001600160401b03811182821017156130e6576130e66130b0565b60405290565b60405160e081016001600160401b03811182821017156130e6576130e66130b0565b604051601f8201601f191681016001600160401b0381118282101715613136576131366130b0565b604052919050565b5f82601f83011261314d575f5ffd5b8135602083015f5f6001600160401b0384111561316c5761316c6130b0565b50601f8301601f19166020016131818161310e565b915050828152858383011115613195575f5ffd5b828260208301375f92810160200192909252509392505050565b5f602082840312156131bf575f5ffd5b81356001600160401b038111156131d4575f5ffd5b6131e08482850161313e565b949350505050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f61188860208301846131e8565b8035600c811061185f575f5ffd5b5f6001600160401b0382111561324e5761324e6130b0565b5060051b60200190565b5f60408284031215613268575f5ffd5b6132706130c4565b90508135600a8110613280575f5ffd5b815260208201356001600160401b0381111561329a575f5ffd5b6132a68482850161313e565b60208301525092915050565b5f602082840312156132c2575f5ffd5b81356001600160401b038111156132d7575f5ffd5b8201604081850312156132e8575f5ffd5b6132f06130c4565b6132f982613228565b815260208201356001600160401b03811115613313575f5ffd5b80830192505084601f830112613327575f5ffd5b813561333a61333582613236565b61310e565b8082825260208201915060208360051b86010192508783111561335b575f5ffd5b602085015b8381101561339b5780356001600160401b0381111561337d575f5ffd5b61338c8a6020838a0101613258565b84525060209283019201613360565b506020840152509095945050505050565b803560ff8116811461185f575f5ffd5b5f5f5f606084860312156133ce575f5ffd5b83356001600160401b038111156133e3575f5ffd5b6133ef8682870161313e565b9350506133fe602085016133ac565b915060408401356001600160401b03811115613418575f5ffd5b6134248682870161313e565b9150509250925092565b80356005811061185f575f5ffd5b5f82601f83011261344b575f5ffd5b813561345961333582613236565b8082825260208201915060208360051b86010192508583111561347a575f5ffd5b602085015b83811015611b195780356001600160401b0381111561349c575f5ffd5b8601603f810188136134ac575f5ffd5b6134b46130c4565b80606083018a8111156134c5575f5ffd5b602084015b818110156135055780356001600160401b038111156134e7575f5ffd5b6134f68d60208389010161313e565b855250602093840193016134ca565b5050855250506020928301920161347f565b5f60e08284031215613527575f5ffd5b61352f6130ec565b905061353a826133ac565b81526135486020830161342e565b602082015261355960408301613060565b604082015260608201356001600160401b03811115613576575f5ffd5b6135828482850161313e565b60608301525060808201356001600160401b038111156135a0575f5ffd5b6135ac8482850161313e565b60808301525060a08201356001600160401b038111156135ca575f5ffd5b6135d68482850161343c565b60a08301525060c08201356001600160401b038111156135f4575f5ffd5b6136008482850161313e565b60c08301525092915050565b5f5f5f6060848603121561361e575f5ffd5b83356001600160401b03811115613633575f5ffd5b6133ef86828701613517565b634e487b7160e01b5f52602160045260245ffd5b600581106136635761366361363f565b9052565b601481106136635761366361363f565b5f82825180855260208501945060208160051b830101602085015f5b838110156136f457848303601f19018852815183604081015f5b60028110156136db5786820383526136c68285516131e8565b602094850194939093019291506001016136ad565b5060209a8b019a90955093909301925050600101613693565b50909695505050505050565b6020815260ff82511660208201525f60208301516137216040840182613653565b5060408301516137346060840182613667565b50606083015160e0608084015261374f6101008401826131e8565b90506080840151601f198483030160a085015261376c82826131e8565b91505060a0840151601f198483030160c085015261378a8282613677565b91505060c0840151601f198483030160e08501526137a882826131e8565b95945050505050565b5f5f5f5f5f60a086880312156137c5575f5ffd5b6137ce8661342e565b945060208601356001600160401b038111156137e8575f5ffd5b6137f48882890161313e565b94505060408601356001600160401b0381111561380f575f5ffd5b61381b8882890161313e565b93505060608601356001600160401b03811115613836575f5ffd5b6138428882890161343c565b92505060808601356001600160401b0381111561385d575f5ffd5b6138698882890161313e565b9150509295509295909350565b5f61388361333584613236565b838152905060208101600584901b83018581111561389f575f5ffd5b835b818110156138d95780356001600160401b038111156138be575f5ffd5b6138ca8882880161313e565b845250602092830192016138a1565b5050509392505050565b5f82601f8301126138f2575f5ffd5b61188883833560208501613876565b5f5f60408385031215613912575f5ffd5b82356001600160401b03811115613927575f5ffd5b61393385828601613517565b92505060208301356001600160401b0381111561394e575f5ffd5b61395a858286016138e3565b9150509250929050565b5f60208284031215613974575f5ffd5b61188882613228565b80356001600160401b038116811461185f575f5ffd5b5f60a08284031280156139a4575f5ffd5b5060405160a081016001600160401b03811182821017156139c7576139c76130b0565b6040526139d3836133ac565b81526139e1602084016133ac565b60208201526139f26040840161397d565b6040820152613a036060840161397d565b6060820152613a146080840161397d565b60808201529392505050565b5f5f60408385031215613a31575f5ffd5b82356001600160401b03811115613a46575f5ffd5b613a528582860161313e565b95602094909401359450505050565b5f60208284031215613a71575f5ffd5b81356001600160401b03811115613a86575f5ffd5b6131e084828501613258565b5f5f60408385031215613aa3575f5ffd5b613aac8361397d565b915060208301356001600160f81b031981168114613ac8575f5ffd5b809150509250929050565b5f82601f830112613ae2575f5ffd5b8135613af061333582613236565b8082825260208201915060208360051b860101925085831115613b11575f5ffd5b602085015b83811015611b195780356001600160401b03811115613b33575f5ffd5b613b42886020838a0101613517565b84525060209283019201613b16565b5f5f5f5f5f60a08688031215613b65575f5ffd5b85356001600160401b03811115613b7a575f5ffd5b613b8688828901613ad3565b95505060208601356001600160401b03811115613ba1575f5ffd5b8601601f81018813613bb1575f5ffd5b8035613bbf61333582613236565b8082825260208201915060208360051b85010192508a831115613be0575f5ffd5b602084015b83811015613c205780356001600160401b03811115613c02575f5ffd5b613c118d6020838901016138e3565b84525060209283019201613be5565b50965050505060408601356001600160401b03811115613c3e575f5ffd5b613c4a8882890161313e565b93505060608601356001600160401b03811115613c65575f5ffd5b613c718882890161313e565b925050613c806080870161306e565b90509295509295909350565b5f5f5f5f5f60808688031215613ca0575f5ffd5b85356001600160401b03811115613cb5575f5ffd5b613cc188828901613ad3565b95505060208601356001600160401b03811115613cdc575f5ffd5b8601601f81018813613cec575f5ffd5b80356001600160401b03811115613d01575f5ffd5b8860208260051b8401011115613d15575f5ffd5b6020919091019450925060408601356001600160401b03811115613d37575f5ffd5b613d438882890161313e565b92505060608601356001600160401b0381111561385d575f5ffd5b5f5f60408385031215613d6f575f5ffd5b82356001600160401b03811115613d84575f5ffd5b6139338582860161313e565b602081016104a38284613667565b5f60208284031215613dae575f5ffd5b81356001600160401b03811115613dc3575f5ffd5b6131e084828501613517565b634e487b7160e01b5f52601160045260245ffd5b61ffff81811683821601908111156104a3576104a3613dcf565b634e487b7160e01b5f52603260045260245ffd5b5f81518060208401855e5f93019283525090919050565b5f6131e0613e368386613e11565b84613e11565b60ff85168152608060208201525f613e5760808301866131e8565b8281036040840152613e6981866131e8565b90508281036060840152613e7d8185613677565b979650505050505050565b613e928187613653565b60a060208201525f613ea760a08301876131e8565b8281036040840152613eb981876131e8565b90508281036060840152613ecd8186613677565b90508281036080840152613ee181856131e8565b98975050505050505050565b634e487b7160e01b5f52601260045260245ffd5b5f6001600160401b03831680613f1957613f19613eed565b806001600160401b0384160491505092915050565b60f883901b6001600160f81b03191681525f6131e06001830184613e11565b60f884901b6001600160f81b03191681525f6137a8613e366001840186613e11565b60ff83168152604060208201525f6131e060408301846131e8565b5f613e7d613e36613fad613fa7613fa1868c613e11565b8a613e11565b88613e11565b86613e11565b5f611888368484613876565b5f613fd3613e36613fad613fa7858a613e11565b9695505050505050565b5f6137a8613e36613fad8488613e11565b808201808211156104a3576104a3613dcf565b5f613ee1613e36613fad613fa7613fa161401b878e613e11565b8c613e11565b818103818111156104a3576104a3613dcf565b606081525f61404660608301866131e8565b905083602083015260ff83166040830152949350505050565b5f6001820161407057614070613dcf565b5060010190565b60ff82811682821603908111156104a3576104a3613dcf565b6001600160401b0381811683821601908111156104a3576104a3613dcf565b6001600160401b038181168382160290811690818114610dfc57610dfc613dcf565b5f826140df576140df613eed565b50069056fe10ffffffffffffffffffffffffffffff040100010203050406071311ff0101ff07ff02ffffffffffffffffffffffffff070304ff04ffffffffffffff03ffffff0405070202ff0404040403ffffffffff05070402040205050505ff04ff04ffff07010203050406070101ff06ffff06ff0203050404000106060707070701ffff5769744f7261636c655261646f6e456e636f64696e674c69623a20696e76616ca264697066735822122041a8873e64273f13aaf10ed23f07aba3ce838df0754d515e7ea767c9154b3f6264736f6c634300081e0033",
  "immutableReferences": {},
  "generatedSources": [],
  "deployedGeneratedSources": [
    {
      "ast": {
        "nativeSrc": "0:36775:136",
        "nodeType": "YulBlock",
        "src": "0:36775:136",
        "statements": [
          {
            "nativeSrc": "6:3:136",
            "nodeType": "YulBlock",
            "src": "6:3:136",
            "statements": []
          },
          {
            "body": {
              "nativeSrc": "75:95:136",
              "nodeType": "YulBlock",
              "src": "75:95:136",
              "statements": [
                {
                  "nativeSrc": "85:29:136",
                  "nodeType": "YulAssignment",
                  "src": "85:29:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "107:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "107:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "94:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "94:12:136"
                    },
                    "nativeSrc": "94:20:136",
                    "nodeType": "YulFunctionCall",
                    "src": "94:20:136"
                  },
                  "variableNames": [
                    {
                      "name": "value",
                      "nativeSrc": "85:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "85:5:136"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "148:16:136",
                    "nodeType": "YulBlock",
                    "src": "148:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "157:1:136",
                              "nodeType": "YulLiteral",
                              "src": "157:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "160:1:136",
                              "nodeType": "YulLiteral",
                              "src": "160:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "150:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "150:6:136"
                          },
                          "nativeSrc": "150:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "150:12:136"
                        },
                        "nativeSrc": "150:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "150:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "136:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "136:5:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "143:2:136",
                            "nodeType": "YulLiteral",
                            "src": "143:2:136",
                            "type": "",
                            "value": "20"
                          }
                        ],
                        "functionName": {
                          "name": "lt",
                          "nativeSrc": "133:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "133:2:136"
                        },
                        "nativeSrc": "133:13:136",
                        "nodeType": "YulFunctionCall",
                        "src": "133:13:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "126:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "126:6:136"
                    },
                    "nativeSrc": "126:21:136",
                    "nodeType": "YulFunctionCall",
                    "src": "126:21:136"
                  },
                  "nativeSrc": "123:41:136",
                  "nodeType": "YulIf",
                  "src": "123:41:136"
                }
              ]
            },
            "name": "abi_decode_enum_RadonDataTypes",
            "nativeSrc": "14:156:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "offset",
                "nativeSrc": "54:6:136",
                "nodeType": "YulTypedName",
                "src": "54:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value",
                "nativeSrc": "65:5:136",
                "nodeType": "YulTypedName",
                "src": "65:5:136",
                "type": ""
              }
            ],
            "src": "14:156:136"
          },
          {
            "body": {
              "nativeSrc": "223:111:136",
              "nodeType": "YulBlock",
              "src": "223:111:136",
              "statements": [
                {
                  "nativeSrc": "233:29:136",
                  "nodeType": "YulAssignment",
                  "src": "233:29:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "255:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "255:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "242:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "242:12:136"
                    },
                    "nativeSrc": "242:20:136",
                    "nodeType": "YulFunctionCall",
                    "src": "242:20:136"
                  },
                  "variableNames": [
                    {
                      "name": "value",
                      "nativeSrc": "233:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "233:5:136"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "312:16:136",
                    "nodeType": "YulBlock",
                    "src": "312:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "321:1:136",
                              "nodeType": "YulLiteral",
                              "src": "321:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "324:1:136",
                              "nodeType": "YulLiteral",
                              "src": "324:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "314:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "314:6:136"
                          },
                          "nativeSrc": "314:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "314:12:136"
                        },
                        "nativeSrc": "314:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "314:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "284:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "284:5:136"
                          },
                          {
                            "arguments": [
                              {
                                "name": "value",
                                "nativeSrc": "295:5:136",
                                "nodeType": "YulIdentifier",
                                "src": "295:5:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "302:6:136",
                                "nodeType": "YulLiteral",
                                "src": "302:6:136",
                                "type": "",
                                "value": "0xffff"
                              }
                            ],
                            "functionName": {
                              "name": "and",
                              "nativeSrc": "291:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "291:3:136"
                            },
                            "nativeSrc": "291:18:136",
                            "nodeType": "YulFunctionCall",
                            "src": "291:18:136"
                          }
                        ],
                        "functionName": {
                          "name": "eq",
                          "nativeSrc": "281:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "281:2:136"
                        },
                        "nativeSrc": "281:29:136",
                        "nodeType": "YulFunctionCall",
                        "src": "281:29:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "274:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "274:6:136"
                    },
                    "nativeSrc": "274:37:136",
                    "nodeType": "YulFunctionCall",
                    "src": "274:37:136"
                  },
                  "nativeSrc": "271:57:136",
                  "nodeType": "YulIf",
                  "src": "271:57:136"
                }
              ]
            },
            "name": "abi_decode_uint16",
            "nativeSrc": "175:159:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "offset",
                "nativeSrc": "202:6:136",
                "nodeType": "YulTypedName",
                "src": "202:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value",
                "nativeSrc": "213:5:136",
                "nodeType": "YulTypedName",
                "src": "213:5:136",
                "type": ""
              }
            ],
            "src": "175:159:136"
          },
          {
            "body": {
              "nativeSrc": "445:184:136",
              "nodeType": "YulBlock",
              "src": "445:184:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "491:16:136",
                    "nodeType": "YulBlock",
                    "src": "491:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "500:1:136",
                              "nodeType": "YulLiteral",
                              "src": "500:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "503:1:136",
                              "nodeType": "YulLiteral",
                              "src": "503:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "493:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "493:6:136"
                          },
                          "nativeSrc": "493:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "493:12:136"
                        },
                        "nativeSrc": "493:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "493:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "466:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "466:7:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "475:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "475:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "462:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "462:3:136"
                        },
                        "nativeSrc": "462:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "462:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "487:2:136",
                        "nodeType": "YulLiteral",
                        "src": "487:2:136",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "458:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "458:3:136"
                    },
                    "nativeSrc": "458:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "458:32:136"
                  },
                  "nativeSrc": "455:52:136",
                  "nodeType": "YulIf",
                  "src": "455:52:136"
                },
                {
                  "nativeSrc": "516:51:136",
                  "nodeType": "YulAssignment",
                  "src": "516:51:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "557:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "557:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_enum_RadonDataTypes",
                      "nativeSrc": "526:30:136",
                      "nodeType": "YulIdentifier",
                      "src": "526:30:136"
                    },
                    "nativeSrc": "526:41:136",
                    "nodeType": "YulFunctionCall",
                    "src": "526:41:136"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "516:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "516:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "576:47:136",
                  "nodeType": "YulAssignment",
                  "src": "576:47:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "608:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "608:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "619:2:136",
                            "nodeType": "YulLiteral",
                            "src": "619:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "604:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "604:3:136"
                        },
                        "nativeSrc": "604:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "604:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_uint16",
                      "nativeSrc": "586:17:136",
                      "nodeType": "YulIdentifier",
                      "src": "586:17:136"
                    },
                    "nativeSrc": "586:37:136",
                    "nodeType": "YulFunctionCall",
                    "src": "586:37:136"
                  },
                  "variableNames": [
                    {
                      "name": "value1",
                      "nativeSrc": "576:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "576:6:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_enum$_RadonDataTypes_$37720t_uint16",
            "nativeSrc": "339:290:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "403:9:136",
                "nodeType": "YulTypedName",
                "src": "403:9:136",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "414:7:136",
                "nodeType": "YulTypedName",
                "src": "414:7:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "426:6:136",
                "nodeType": "YulTypedName",
                "src": "426:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "434:6:136",
                "nodeType": "YulTypedName",
                "src": "434:6:136",
                "type": ""
              }
            ],
            "src": "339:290:136"
          },
          {
            "body": {
              "nativeSrc": "741:89:136",
              "nodeType": "YulBlock",
              "src": "741:89:136",
              "statements": [
                {
                  "nativeSrc": "751:26:136",
                  "nodeType": "YulAssignment",
                  "src": "751:26:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "763:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "763:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "774:2:136",
                        "nodeType": "YulLiteral",
                        "src": "774:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "759:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "759:3:136"
                    },
                    "nativeSrc": "759:18:136",
                    "nodeType": "YulFunctionCall",
                    "src": "759:18:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "751:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "751:4:136"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "793:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "793:9:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "808:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "808:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "816:6:136",
                            "nodeType": "YulLiteral",
                            "src": "816:6:136",
                            "type": "",
                            "value": "0xffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "804:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "804:3:136"
                        },
                        "nativeSrc": "804:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "804:19:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "786:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "786:6:136"
                    },
                    "nativeSrc": "786:38:136",
                    "nodeType": "YulFunctionCall",
                    "src": "786:38:136"
                  },
                  "nativeSrc": "786:38:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "786:38:136"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint16__to_t_uint16__fromStack_library_reversed",
            "nativeSrc": "634:196:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "710:9:136",
                "nodeType": "YulTypedName",
                "src": "710:9:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "721:6:136",
                "nodeType": "YulTypedName",
                "src": "721:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "732:4:136",
                "nodeType": "YulTypedName",
                "src": "732:4:136",
                "type": ""
              }
            ],
            "src": "634:196:136"
          },
          {
            "body": {
              "nativeSrc": "867:95:136",
              "nodeType": "YulBlock",
              "src": "867:95:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "884:1:136",
                        "nodeType": "YulLiteral",
                        "src": "884:1:136",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "891:3:136",
                            "nodeType": "YulLiteral",
                            "src": "891:3:136",
                            "type": "",
                            "value": "224"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "896:10:136",
                            "nodeType": "YulLiteral",
                            "src": "896:10:136",
                            "type": "",
                            "value": "0x4e487b71"
                          }
                        ],
                        "functionName": {
                          "name": "shl",
                          "nativeSrc": "887:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "887:3:136"
                        },
                        "nativeSrc": "887:20:136",
                        "nodeType": "YulFunctionCall",
                        "src": "887:20:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "877:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "877:6:136"
                    },
                    "nativeSrc": "877:31:136",
                    "nodeType": "YulFunctionCall",
                    "src": "877:31:136"
                  },
                  "nativeSrc": "877:31:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "877:31:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "924:1:136",
                        "nodeType": "YulLiteral",
                        "src": "924:1:136",
                        "type": "",
                        "value": "4"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "927:4:136",
                        "nodeType": "YulLiteral",
                        "src": "927:4:136",
                        "type": "",
                        "value": "0x41"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "917:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "917:6:136"
                    },
                    "nativeSrc": "917:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "917:15:136"
                  },
                  "nativeSrc": "917:15:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "917:15:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "948:1:136",
                        "nodeType": "YulLiteral",
                        "src": "948:1:136",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "951:4:136",
                        "nodeType": "YulLiteral",
                        "src": "951:4:136",
                        "type": "",
                        "value": "0x24"
                      }
                    ],
                    "functionName": {
                      "name": "revert",
                      "nativeSrc": "941:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "941:6:136"
                    },
                    "nativeSrc": "941:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "941:15:136"
                  },
                  "nativeSrc": "941:15:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "941:15:136"
                }
              ]
            },
            "name": "panic_error_0x41",
            "nativeSrc": "835:127:136",
            "nodeType": "YulFunctionDefinition",
            "src": "835:127:136"
          },
          {
            "body": {
              "nativeSrc": "1013:211:136",
              "nodeType": "YulBlock",
              "src": "1013:211:136",
              "statements": [
                {
                  "nativeSrc": "1023:21:136",
                  "nodeType": "YulAssignment",
                  "src": "1023:21:136",
                  "value": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "1039:4:136",
                        "nodeType": "YulLiteral",
                        "src": "1039:4:136",
                        "type": "",
                        "value": "0x40"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "1033:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "1033:5:136"
                    },
                    "nativeSrc": "1033:11:136",
                    "nodeType": "YulFunctionCall",
                    "src": "1033:11:136"
                  },
                  "variableNames": [
                    {
                      "name": "memPtr",
                      "nativeSrc": "1023:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "1023:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "1053:35:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "1053:35:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "memPtr",
                        "nativeSrc": "1075:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "1075:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "1083:4:136",
                        "nodeType": "YulLiteral",
                        "src": "1083:4:136",
                        "type": "",
                        "value": "0x40"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "1071:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "1071:3:136"
                    },
                    "nativeSrc": "1071:17:136",
                    "nodeType": "YulFunctionCall",
                    "src": "1071:17:136"
                  },
                  "variables": [
                    {
                      "name": "newFreePtr",
                      "nativeSrc": "1057:10:136",
                      "nodeType": "YulTypedName",
                      "src": "1057:10:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "1163:22:136",
                    "nodeType": "YulBlock",
                    "src": "1163:22:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x41",
                            "nativeSrc": "1165:16:136",
                            "nodeType": "YulIdentifier",
                            "src": "1165:16:136"
                          },
                          "nativeSrc": "1165:18:136",
                          "nodeType": "YulFunctionCall",
                          "src": "1165:18:136"
                        },
                        "nativeSrc": "1165:18:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "1165:18:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "newFreePtr",
                            "nativeSrc": "1106:10:136",
                            "nodeType": "YulIdentifier",
                            "src": "1106:10:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "1118:18:136",
                            "nodeType": "YulLiteral",
                            "src": "1118:18:136",
                            "type": "",
                            "value": "0xffffffffffffffff"
                          }
                        ],
                        "functionName": {
                          "name": "gt",
                          "nativeSrc": "1103:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "1103:2:136"
                        },
                        "nativeSrc": "1103:34:136",
                        "nodeType": "YulFunctionCall",
                        "src": "1103:34:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "newFreePtr",
                            "nativeSrc": "1142:10:136",
                            "nodeType": "YulIdentifier",
                            "src": "1142:10:136"
                          },
                          {
                            "name": "memPtr",
                            "nativeSrc": "1154:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "1154:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "lt",
                          "nativeSrc": "1139:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "1139:2:136"
                        },
                        "nativeSrc": "1139:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "1139:22:136"
                      }
                    ],
                    "functionName": {
                      "name": "or",
                      "nativeSrc": "1100:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "1100:2:136"
                    },
                    "nativeSrc": "1100:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "1100:62:136"
                  },
                  "nativeSrc": "1097:88:136",
                  "nodeType": "YulIf",
                  "src": "1097:88:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "1201:4:136",
                        "nodeType": "YulLiteral",
                        "src": "1201:4:136",
                        "type": "",
                        "value": "0x40"
                      },
                      {
                        "name": "newFreePtr",
                        "nativeSrc": "1207:10:136",
                        "nodeType": "YulIdentifier",
                        "src": "1207:10:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "1194:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "1194:6:136"
                    },
                    "nativeSrc": "1194:24:136",
                    "nodeType": "YulFunctionCall",
                    "src": "1194:24:136"
                  },
                  "nativeSrc": "1194:24:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "1194:24:136"
                }
              ]
            },
            "name": "allocate_memory_4557",
            "nativeSrc": "967:257:136",
            "nodeType": "YulFunctionDefinition",
            "returnVariables": [
              {
                "name": "memPtr",
                "nativeSrc": "1002:6:136",
                "nodeType": "YulTypedName",
                "src": "1002:6:136",
                "type": ""
              }
            ],
            "src": "967:257:136"
          },
          {
            "body": {
              "nativeSrc": "1275:207:136",
              "nodeType": "YulBlock",
              "src": "1275:207:136",
              "statements": [
                {
                  "nativeSrc": "1285:19:136",
                  "nodeType": "YulAssignment",
                  "src": "1285:19:136",
                  "value": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "1301:2:136",
                        "nodeType": "YulLiteral",
                        "src": "1301:2:136",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "1295:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "1295:5:136"
                    },
                    "nativeSrc": "1295:9:136",
                    "nodeType": "YulFunctionCall",
                    "src": "1295:9:136"
                  },
                  "variableNames": [
                    {
                      "name": "memPtr",
                      "nativeSrc": "1285:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "1285:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "1313:35:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "1313:35:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "memPtr",
                        "nativeSrc": "1335:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "1335:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "1343:4:136",
                        "nodeType": "YulLiteral",
                        "src": "1343:4:136",
                        "type": "",
                        "value": "0xe0"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "1331:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "1331:3:136"
                    },
                    "nativeSrc": "1331:17:136",
                    "nodeType": "YulFunctionCall",
                    "src": "1331:17:136"
                  },
                  "variables": [
                    {
                      "name": "newFreePtr",
                      "nativeSrc": "1317:10:136",
                      "nodeType": "YulTypedName",
                      "src": "1317:10:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "1423:22:136",
                    "nodeType": "YulBlock",
                    "src": "1423:22:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x41",
                            "nativeSrc": "1425:16:136",
                            "nodeType": "YulIdentifier",
                            "src": "1425:16:136"
                          },
                          "nativeSrc": "1425:18:136",
                          "nodeType": "YulFunctionCall",
                          "src": "1425:18:136"
                        },
                        "nativeSrc": "1425:18:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "1425:18:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "newFreePtr",
                            "nativeSrc": "1366:10:136",
                            "nodeType": "YulIdentifier",
                            "src": "1366:10:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "1378:18:136",
                            "nodeType": "YulLiteral",
                            "src": "1378:18:136",
                            "type": "",
                            "value": "0xffffffffffffffff"
                          }
                        ],
                        "functionName": {
                          "name": "gt",
                          "nativeSrc": "1363:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "1363:2:136"
                        },
                        "nativeSrc": "1363:34:136",
                        "nodeType": "YulFunctionCall",
                        "src": "1363:34:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "newFreePtr",
                            "nativeSrc": "1402:10:136",
                            "nodeType": "YulIdentifier",
                            "src": "1402:10:136"
                          },
                          {
                            "name": "memPtr",
                            "nativeSrc": "1414:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "1414:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "lt",
                          "nativeSrc": "1399:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "1399:2:136"
                        },
                        "nativeSrc": "1399:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "1399:22:136"
                      }
                    ],
                    "functionName": {
                      "name": "or",
                      "nativeSrc": "1360:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "1360:2:136"
                    },
                    "nativeSrc": "1360:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "1360:62:136"
                  },
                  "nativeSrc": "1357:88:136",
                  "nodeType": "YulIf",
                  "src": "1357:88:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "1461:2:136",
                        "nodeType": "YulLiteral",
                        "src": "1461:2:136",
                        "type": "",
                        "value": "64"
                      },
                      {
                        "name": "newFreePtr",
                        "nativeSrc": "1465:10:136",
                        "nodeType": "YulIdentifier",
                        "src": "1465:10:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "1454:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "1454:6:136"
                    },
                    "nativeSrc": "1454:22:136",
                    "nodeType": "YulFunctionCall",
                    "src": "1454:22:136"
                  },
                  "nativeSrc": "1454:22:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "1454:22:136"
                }
              ]
            },
            "name": "allocate_memory_4563",
            "nativeSrc": "1229:253:136",
            "nodeType": "YulFunctionDefinition",
            "returnVariables": [
              {
                "name": "memPtr",
                "nativeSrc": "1264:6:136",
                "nodeType": "YulTypedName",
                "src": "1264:6:136",
                "type": ""
              }
            ],
            "src": "1229:253:136"
          },
          {
            "body": {
              "nativeSrc": "1532:230:136",
              "nodeType": "YulBlock",
              "src": "1532:230:136",
              "statements": [
                {
                  "nativeSrc": "1542:19:136",
                  "nodeType": "YulAssignment",
                  "src": "1542:19:136",
                  "value": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "1558:2:136",
                        "nodeType": "YulLiteral",
                        "src": "1558:2:136",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "1552:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "1552:5:136"
                    },
                    "nativeSrc": "1552:9:136",
                    "nodeType": "YulFunctionCall",
                    "src": "1552:9:136"
                  },
                  "variableNames": [
                    {
                      "name": "memPtr",
                      "nativeSrc": "1542:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "1542:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "1570:58:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "1570:58:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "memPtr",
                        "nativeSrc": "1592:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "1592:6:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "size",
                                "nativeSrc": "1608:4:136",
                                "nodeType": "YulIdentifier",
                                "src": "1608:4:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "1614:2:136",
                                "nodeType": "YulLiteral",
                                "src": "1614:2:136",
                                "type": "",
                                "value": "31"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "1604:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "1604:3:136"
                            },
                            "nativeSrc": "1604:13:136",
                            "nodeType": "YulFunctionCall",
                            "src": "1604:13:136"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "1623:2:136",
                                "nodeType": "YulLiteral",
                                "src": "1623:2:136",
                                "type": "",
                                "value": "31"
                              }
                            ],
                            "functionName": {
                              "name": "not",
                              "nativeSrc": "1619:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "1619:3:136"
                            },
                            "nativeSrc": "1619:7:136",
                            "nodeType": "YulFunctionCall",
                            "src": "1619:7:136"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "1600:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "1600:3:136"
                        },
                        "nativeSrc": "1600:27:136",
                        "nodeType": "YulFunctionCall",
                        "src": "1600:27:136"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "1588:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "1588:3:136"
                    },
                    "nativeSrc": "1588:40:136",
                    "nodeType": "YulFunctionCall",
                    "src": "1588:40:136"
                  },
                  "variables": [
                    {
                      "name": "newFreePtr",
                      "nativeSrc": "1574:10:136",
                      "nodeType": "YulTypedName",
                      "src": "1574:10:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "1703:22:136",
                    "nodeType": "YulBlock",
                    "src": "1703:22:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x41",
                            "nativeSrc": "1705:16:136",
                            "nodeType": "YulIdentifier",
                            "src": "1705:16:136"
                          },
                          "nativeSrc": "1705:18:136",
                          "nodeType": "YulFunctionCall",
                          "src": "1705:18:136"
                        },
                        "nativeSrc": "1705:18:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "1705:18:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "newFreePtr",
                            "nativeSrc": "1646:10:136",
                            "nodeType": "YulIdentifier",
                            "src": "1646:10:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "1658:18:136",
                            "nodeType": "YulLiteral",
                            "src": "1658:18:136",
                            "type": "",
                            "value": "0xffffffffffffffff"
                          }
                        ],
                        "functionName": {
                          "name": "gt",
                          "nativeSrc": "1643:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "1643:2:136"
                        },
                        "nativeSrc": "1643:34:136",
                        "nodeType": "YulFunctionCall",
                        "src": "1643:34:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "newFreePtr",
                            "nativeSrc": "1682:10:136",
                            "nodeType": "YulIdentifier",
                            "src": "1682:10:136"
                          },
                          {
                            "name": "memPtr",
                            "nativeSrc": "1694:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "1694:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "lt",
                          "nativeSrc": "1679:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "1679:2:136"
                        },
                        "nativeSrc": "1679:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "1679:22:136"
                      }
                    ],
                    "functionName": {
                      "name": "or",
                      "nativeSrc": "1640:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "1640:2:136"
                    },
                    "nativeSrc": "1640:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "1640:62:136"
                  },
                  "nativeSrc": "1637:88:136",
                  "nodeType": "YulIf",
                  "src": "1637:88:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "1741:2:136",
                        "nodeType": "YulLiteral",
                        "src": "1741:2:136",
                        "type": "",
                        "value": "64"
                      },
                      {
                        "name": "newFreePtr",
                        "nativeSrc": "1745:10:136",
                        "nodeType": "YulIdentifier",
                        "src": "1745:10:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "1734:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "1734:6:136"
                    },
                    "nativeSrc": "1734:22:136",
                    "nodeType": "YulFunctionCall",
                    "src": "1734:22:136"
                  },
                  "nativeSrc": "1734:22:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "1734:22:136"
                }
              ]
            },
            "name": "allocate_memory",
            "nativeSrc": "1487:275:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "size",
                "nativeSrc": "1512:4:136",
                "nodeType": "YulTypedName",
                "src": "1512:4:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "memPtr",
                "nativeSrc": "1521:6:136",
                "nodeType": "YulTypedName",
                "src": "1521:6:136",
                "type": ""
              }
            ],
            "src": "1487:275:136"
          },
          {
            "body": {
              "nativeSrc": "1819:577:136",
              "nodeType": "YulBlock",
              "src": "1819:577:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "1868:16:136",
                    "nodeType": "YulBlock",
                    "src": "1868:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "1877:1:136",
                              "nodeType": "YulLiteral",
                              "src": "1877:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "1880:1:136",
                              "nodeType": "YulLiteral",
                              "src": "1880:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "1870:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "1870:6:136"
                          },
                          "nativeSrc": "1870:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "1870:12:136"
                        },
                        "nativeSrc": "1870:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "1870:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "offset",
                                "nativeSrc": "1847:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "1847:6:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "1855:4:136",
                                "nodeType": "YulLiteral",
                                "src": "1855:4:136",
                                "type": "",
                                "value": "0x1f"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "1843:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "1843:3:136"
                            },
                            "nativeSrc": "1843:17:136",
                            "nodeType": "YulFunctionCall",
                            "src": "1843:17:136"
                          },
                          {
                            "name": "end",
                            "nativeSrc": "1862:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "1862:3:136"
                          }
                        ],
                        "functionName": {
                          "name": "slt",
                          "nativeSrc": "1839:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "1839:3:136"
                        },
                        "nativeSrc": "1839:27:136",
                        "nodeType": "YulFunctionCall",
                        "src": "1839:27:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "1832:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "1832:6:136"
                    },
                    "nativeSrc": "1832:35:136",
                    "nodeType": "YulFunctionCall",
                    "src": "1832:35:136"
                  },
                  "nativeSrc": "1829:55:136",
                  "nodeType": "YulIf",
                  "src": "1829:55:136"
                },
                {
                  "nativeSrc": "1893:34:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "1893:34:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "1920:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "1920:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "1907:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "1907:12:136"
                    },
                    "nativeSrc": "1907:20:136",
                    "nodeType": "YulFunctionCall",
                    "src": "1907:20:136"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "1897:6:136",
                      "nodeType": "YulTypedName",
                      "src": "1897:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "1936:28:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "1936:28:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "1951:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "1951:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "1959:4:136",
                        "nodeType": "YulLiteral",
                        "src": "1959:4:136",
                        "type": "",
                        "value": "0x20"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "1947:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "1947:3:136"
                    },
                    "nativeSrc": "1947:17:136",
                    "nodeType": "YulFunctionCall",
                    "src": "1947:17:136"
                  },
                  "variables": [
                    {
                      "name": "src",
                      "nativeSrc": "1940:3:136",
                      "nodeType": "YulTypedName",
                      "src": "1940:3:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "1973:16:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "1973:16:136",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "1988:1:136",
                    "nodeType": "YulLiteral",
                    "src": "1988:1:136",
                    "type": "",
                    "value": "0"
                  },
                  "variables": [
                    {
                      "name": "array_1",
                      "nativeSrc": "1977:7:136",
                      "nodeType": "YulTypedName",
                      "src": "1977:7:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "1998:13:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "1998:13:136",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "2010:1:136",
                    "nodeType": "YulLiteral",
                    "src": "2010:1:136",
                    "type": "",
                    "value": "0"
                  },
                  "variables": [
                    {
                      "name": "size",
                      "nativeSrc": "2002:4:136",
                      "nodeType": "YulTypedName",
                      "src": "2002:4:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "2054:22:136",
                    "nodeType": "YulBlock",
                    "src": "2054:22:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x41",
                            "nativeSrc": "2056:16:136",
                            "nodeType": "YulIdentifier",
                            "src": "2056:16:136"
                          },
                          "nativeSrc": "2056:18:136",
                          "nodeType": "YulFunctionCall",
                          "src": "2056:18:136"
                        },
                        "nativeSrc": "2056:18:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "2056:18:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "length",
                        "nativeSrc": "2026:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "2026:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "2034:18:136",
                        "nodeType": "YulLiteral",
                        "src": "2034:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "2023:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "2023:2:136"
                    },
                    "nativeSrc": "2023:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "2023:30:136"
                  },
                  "nativeSrc": "2020:56:136",
                  "nodeType": "YulIf",
                  "src": "2020:56:136"
                },
                {
                  "nativeSrc": "2085:48:136",
                  "nodeType": "YulAssignment",
                  "src": "2085:48:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "length",
                                "nativeSrc": "2105:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "2105:6:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "2113:2:136",
                                "nodeType": "YulLiteral",
                                "src": "2113:2:136",
                                "type": "",
                                "value": "31"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "2101:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "2101:3:136"
                            },
                            "nativeSrc": "2101:15:136",
                            "nodeType": "YulFunctionCall",
                            "src": "2101:15:136"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "2122:2:136",
                                "nodeType": "YulLiteral",
                                "src": "2122:2:136",
                                "type": "",
                                "value": "31"
                              }
                            ],
                            "functionName": {
                              "name": "not",
                              "nativeSrc": "2118:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "2118:3:136"
                            },
                            "nativeSrc": "2118:7:136",
                            "nodeType": "YulFunctionCall",
                            "src": "2118:7:136"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "2097:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "2097:3:136"
                        },
                        "nativeSrc": "2097:29:136",
                        "nodeType": "YulFunctionCall",
                        "src": "2097:29:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "2128:4:136",
                        "nodeType": "YulLiteral",
                        "src": "2128:4:136",
                        "type": "",
                        "value": "0x20"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "2093:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "2093:3:136"
                    },
                    "nativeSrc": "2093:40:136",
                    "nodeType": "YulFunctionCall",
                    "src": "2093:40:136"
                  },
                  "variableNames": [
                    {
                      "name": "size",
                      "nativeSrc": "2085:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "2085:4:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "2142:32:136",
                  "nodeType": "YulAssignment",
                  "src": "2142:32:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "size",
                        "nativeSrc": "2169:4:136",
                        "nodeType": "YulIdentifier",
                        "src": "2169:4:136"
                      }
                    ],
                    "functionName": {
                      "name": "allocate_memory",
                      "nativeSrc": "2153:15:136",
                      "nodeType": "YulIdentifier",
                      "src": "2153:15:136"
                    },
                    "nativeSrc": "2153:21:136",
                    "nodeType": "YulFunctionCall",
                    "src": "2153:21:136"
                  },
                  "variableNames": [
                    {
                      "name": "array_1",
                      "nativeSrc": "2142:7:136",
                      "nodeType": "YulIdentifier",
                      "src": "2142:7:136"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "array_1",
                        "nativeSrc": "2190:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "2190:7:136"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "2199:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "2199:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "2183:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "2183:6:136"
                    },
                    "nativeSrc": "2183:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "2183:23:136"
                  },
                  "nativeSrc": "2183:23:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "2183:23:136"
                },
                {
                  "body": {
                    "nativeSrc": "2244:16:136",
                    "nodeType": "YulBlock",
                    "src": "2244:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "2253:1:136",
                              "nodeType": "YulLiteral",
                              "src": "2253:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "2256:1:136",
                              "nodeType": "YulLiteral",
                              "src": "2256:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "2246:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "2246:6:136"
                          },
                          "nativeSrc": "2246:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "2246:12:136"
                        },
                        "nativeSrc": "2246:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "2246:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "src",
                            "nativeSrc": "2225:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "2225:3:136"
                          },
                          {
                            "name": "length",
                            "nativeSrc": "2230:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "2230:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "2221:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "2221:3:136"
                        },
                        "nativeSrc": "2221:16:136",
                        "nodeType": "YulFunctionCall",
                        "src": "2221:16:136"
                      },
                      {
                        "name": "end",
                        "nativeSrc": "2239:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "2239:3:136"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "2218:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "2218:2:136"
                    },
                    "nativeSrc": "2218:25:136",
                    "nodeType": "YulFunctionCall",
                    "src": "2218:25:136"
                  },
                  "nativeSrc": "2215:45:136",
                  "nodeType": "YulIf",
                  "src": "2215:45:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "array_1",
                            "nativeSrc": "2286:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "2286:7:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "2295:4:136",
                            "nodeType": "YulLiteral",
                            "src": "2295:4:136",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "2282:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "2282:3:136"
                        },
                        "nativeSrc": "2282:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "2282:18:136"
                      },
                      {
                        "name": "src",
                        "nativeSrc": "2302:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "2302:3:136"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "2307:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "2307:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldatacopy",
                      "nativeSrc": "2269:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "2269:12:136"
                    },
                    "nativeSrc": "2269:45:136",
                    "nodeType": "YulFunctionCall",
                    "src": "2269:45:136"
                  },
                  "nativeSrc": "2269:45:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "2269:45:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "array_1",
                                "nativeSrc": "2338:7:136",
                                "nodeType": "YulIdentifier",
                                "src": "2338:7:136"
                              },
                              {
                                "name": "length",
                                "nativeSrc": "2347:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "2347:6:136"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "2334:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "2334:3:136"
                            },
                            "nativeSrc": "2334:20:136",
                            "nodeType": "YulFunctionCall",
                            "src": "2334:20:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "2356:4:136",
                            "nodeType": "YulLiteral",
                            "src": "2356:4:136",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "2330:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "2330:3:136"
                        },
                        "nativeSrc": "2330:31:136",
                        "nodeType": "YulFunctionCall",
                        "src": "2330:31:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "2363:1:136",
                        "nodeType": "YulLiteral",
                        "src": "2363:1:136",
                        "type": "",
                        "value": "0"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "2323:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "2323:6:136"
                    },
                    "nativeSrc": "2323:42:136",
                    "nodeType": "YulFunctionCall",
                    "src": "2323:42:136"
                  },
                  "nativeSrc": "2323:42:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "2323:42:136"
                },
                {
                  "nativeSrc": "2374:16:136",
                  "nodeType": "YulAssignment",
                  "src": "2374:16:136",
                  "value": {
                    "name": "array_1",
                    "nativeSrc": "2383:7:136",
                    "nodeType": "YulIdentifier",
                    "src": "2383:7:136"
                  },
                  "variableNames": [
                    {
                      "name": "array",
                      "nativeSrc": "2374:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "2374:5:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_bytes",
            "nativeSrc": "1767:629:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "offset",
                "nativeSrc": "1793:6:136",
                "nodeType": "YulTypedName",
                "src": "1793:6:136",
                "type": ""
              },
              {
                "name": "end",
                "nativeSrc": "1801:3:136",
                "nodeType": "YulTypedName",
                "src": "1801:3:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "array",
                "nativeSrc": "1809:5:136",
                "nodeType": "YulTypedName",
                "src": "1809:5:136",
                "type": ""
              }
            ],
            "src": "1767:629:136"
          },
          {
            "body": {
              "nativeSrc": "2480:241:136",
              "nodeType": "YulBlock",
              "src": "2480:241:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "2526:16:136",
                    "nodeType": "YulBlock",
                    "src": "2526:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "2535:1:136",
                              "nodeType": "YulLiteral",
                              "src": "2535:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "2538:1:136",
                              "nodeType": "YulLiteral",
                              "src": "2538:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "2528:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "2528:6:136"
                          },
                          "nativeSrc": "2528:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "2528:12:136"
                        },
                        "nativeSrc": "2528:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "2528:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "2501:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "2501:7:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "2510:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "2510:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "2497:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "2497:3:136"
                        },
                        "nativeSrc": "2497:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "2497:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "2522:2:136",
                        "nodeType": "YulLiteral",
                        "src": "2522:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "2493:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "2493:3:136"
                    },
                    "nativeSrc": "2493:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "2493:32:136"
                  },
                  "nativeSrc": "2490:52:136",
                  "nodeType": "YulIf",
                  "src": "2490:52:136"
                },
                {
                  "nativeSrc": "2551:37:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "2551:37:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "2578:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "2578:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "2565:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "2565:12:136"
                    },
                    "nativeSrc": "2565:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "2565:23:136"
                  },
                  "variables": [
                    {
                      "name": "offset",
                      "nativeSrc": "2555:6:136",
                      "nodeType": "YulTypedName",
                      "src": "2555:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "2631:16:136",
                    "nodeType": "YulBlock",
                    "src": "2631:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "2640:1:136",
                              "nodeType": "YulLiteral",
                              "src": "2640:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "2643:1:136",
                              "nodeType": "YulLiteral",
                              "src": "2643:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "2633:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "2633:6:136"
                          },
                          "nativeSrc": "2633:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "2633:12:136"
                        },
                        "nativeSrc": "2633:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "2633:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "2603:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "2603:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "2611:18:136",
                        "nodeType": "YulLiteral",
                        "src": "2611:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "2600:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "2600:2:136"
                    },
                    "nativeSrc": "2600:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "2600:30:136"
                  },
                  "nativeSrc": "2597:50:136",
                  "nodeType": "YulIf",
                  "src": "2597:50:136"
                },
                {
                  "nativeSrc": "2656:59:136",
                  "nodeType": "YulAssignment",
                  "src": "2656:59:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "2687:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "2687:9:136"
                          },
                          {
                            "name": "offset",
                            "nativeSrc": "2698:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "2698:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "2683:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "2683:3:136"
                        },
                        "nativeSrc": "2683:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "2683:22:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "2707:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "2707:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_bytes",
                      "nativeSrc": "2666:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "2666:16:136"
                    },
                    "nativeSrc": "2666:49:136",
                    "nodeType": "YulFunctionCall",
                    "src": "2666:49:136"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "2656:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "2656:6:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_bytes_memory_ptr",
            "nativeSrc": "2401:320:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "2446:9:136",
                "nodeType": "YulTypedName",
                "src": "2446:9:136",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "2457:7:136",
                "nodeType": "YulTypedName",
                "src": "2457:7:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "2469:6:136",
                "nodeType": "YulTypedName",
                "src": "2469:6:136",
                "type": ""
              }
            ],
            "src": "2401:320:136"
          },
          {
            "body": {
              "nativeSrc": "2775:239:136",
              "nodeType": "YulBlock",
              "src": "2775:239:136",
              "statements": [
                {
                  "nativeSrc": "2785:26:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "2785:26:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "2805:5:136",
                        "nodeType": "YulIdentifier",
                        "src": "2805:5:136"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "2799:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "2799:5:136"
                    },
                    "nativeSrc": "2799:12:136",
                    "nodeType": "YulFunctionCall",
                    "src": "2799:12:136"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "2789:6:136",
                      "nodeType": "YulTypedName",
                      "src": "2789:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "2827:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "2827:3:136"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "2832:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "2832:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "2820:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "2820:6:136"
                    },
                    "nativeSrc": "2820:19:136",
                    "nodeType": "YulFunctionCall",
                    "src": "2820:19:136"
                  },
                  "nativeSrc": "2820:19:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "2820:19:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "pos",
                            "nativeSrc": "2858:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "2858:3:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "2863:4:136",
                            "nodeType": "YulLiteral",
                            "src": "2863:4:136",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "2854:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "2854:3:136"
                        },
                        "nativeSrc": "2854:14:136",
                        "nodeType": "YulFunctionCall",
                        "src": "2854:14:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "2874:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "2874:5:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "2881:4:136",
                            "nodeType": "YulLiteral",
                            "src": "2881:4:136",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "2870:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "2870:3:136"
                        },
                        "nativeSrc": "2870:16:136",
                        "nodeType": "YulFunctionCall",
                        "src": "2870:16:136"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "2888:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "2888:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "mcopy",
                      "nativeSrc": "2848:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "2848:5:136"
                    },
                    "nativeSrc": "2848:47:136",
                    "nodeType": "YulFunctionCall",
                    "src": "2848:47:136"
                  },
                  "nativeSrc": "2848:47:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "2848:47:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "pos",
                                "nativeSrc": "2919:3:136",
                                "nodeType": "YulIdentifier",
                                "src": "2919:3:136"
                              },
                              {
                                "name": "length",
                                "nativeSrc": "2924:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "2924:6:136"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "2915:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "2915:3:136"
                            },
                            "nativeSrc": "2915:16:136",
                            "nodeType": "YulFunctionCall",
                            "src": "2915:16:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "2933:4:136",
                            "nodeType": "YulLiteral",
                            "src": "2933:4:136",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "2911:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "2911:3:136"
                        },
                        "nativeSrc": "2911:27:136",
                        "nodeType": "YulFunctionCall",
                        "src": "2911:27:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "2940:1:136",
                        "nodeType": "YulLiteral",
                        "src": "2940:1:136",
                        "type": "",
                        "value": "0"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "2904:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "2904:6:136"
                    },
                    "nativeSrc": "2904:38:136",
                    "nodeType": "YulFunctionCall",
                    "src": "2904:38:136"
                  },
                  "nativeSrc": "2904:38:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "2904:38:136"
                },
                {
                  "nativeSrc": "2951:57:136",
                  "nodeType": "YulAssignment",
                  "src": "2951:57:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "pos",
                            "nativeSrc": "2966:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "2966:3:136"
                          },
                          {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "name": "length",
                                    "nativeSrc": "2979:6:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "2979:6:136"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "2987:2:136",
                                    "nodeType": "YulLiteral",
                                    "src": "2987:2:136",
                                    "type": "",
                                    "value": "31"
                                  }
                                ],
                                "functionName": {
                                  "name": "add",
                                  "nativeSrc": "2975:3:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "2975:3:136"
                                },
                                "nativeSrc": "2975:15:136",
                                "nodeType": "YulFunctionCall",
                                "src": "2975:15:136"
                              },
                              {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "2996:2:136",
                                    "nodeType": "YulLiteral",
                                    "src": "2996:2:136",
                                    "type": "",
                                    "value": "31"
                                  }
                                ],
                                "functionName": {
                                  "name": "not",
                                  "nativeSrc": "2992:3:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "2992:3:136"
                                },
                                "nativeSrc": "2992:7:136",
                                "nodeType": "YulFunctionCall",
                                "src": "2992:7:136"
                              }
                            ],
                            "functionName": {
                              "name": "and",
                              "nativeSrc": "2971:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "2971:3:136"
                            },
                            "nativeSrc": "2971:29:136",
                            "nodeType": "YulFunctionCall",
                            "src": "2971:29:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "2962:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "2962:3:136"
                        },
                        "nativeSrc": "2962:39:136",
                        "nodeType": "YulFunctionCall",
                        "src": "2962:39:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3003:4:136",
                        "nodeType": "YulLiteral",
                        "src": "3003:4:136",
                        "type": "",
                        "value": "0x20"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "2958:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "2958:3:136"
                    },
                    "nativeSrc": "2958:50:136",
                    "nodeType": "YulFunctionCall",
                    "src": "2958:50:136"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "2951:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "2951:3:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_bytes",
            "nativeSrc": "2726:288:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "value",
                "nativeSrc": "2752:5:136",
                "nodeType": "YulTypedName",
                "src": "2752:5:136",
                "type": ""
              },
              {
                "name": "pos",
                "nativeSrc": "2759:3:136",
                "nodeType": "YulTypedName",
                "src": "2759:3:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "2767:3:136",
                "nodeType": "YulTypedName",
                "src": "2767:3:136",
                "type": ""
              }
            ],
            "src": "2726:288:136"
          },
          {
            "body": {
              "nativeSrc": "3146:98:136",
              "nodeType": "YulBlock",
              "src": "3146:98:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "3163:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "3163:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3174:2:136",
                        "nodeType": "YulLiteral",
                        "src": "3174:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "3156:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "3156:6:136"
                    },
                    "nativeSrc": "3156:21:136",
                    "nodeType": "YulFunctionCall",
                    "src": "3156:21:136"
                  },
                  "nativeSrc": "3156:21:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "3156:21:136"
                },
                {
                  "nativeSrc": "3186:52:136",
                  "nodeType": "YulAssignment",
                  "src": "3186:52:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value0",
                        "nativeSrc": "3211:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "3211:6:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "3223:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "3223:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "3234:2:136",
                            "nodeType": "YulLiteral",
                            "src": "3234:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "3219:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "3219:3:136"
                        },
                        "nativeSrc": "3219:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "3219:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes",
                      "nativeSrc": "3194:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "3194:16:136"
                    },
                    "nativeSrc": "3194:44:136",
                    "nodeType": "YulFunctionCall",
                    "src": "3194:44:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "3186:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "3186:4:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed",
            "nativeSrc": "3019:225:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "3115:9:136",
                "nodeType": "YulTypedName",
                "src": "3115:9:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "3126:6:136",
                "nodeType": "YulTypedName",
                "src": "3126:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "3137:4:136",
                "nodeType": "YulTypedName",
                "src": "3137:4:136",
                "type": ""
              }
            ],
            "src": "3019:225:136"
          },
          {
            "body": {
              "nativeSrc": "3314:95:136",
              "nodeType": "YulBlock",
              "src": "3314:95:136",
              "statements": [
                {
                  "nativeSrc": "3324:29:136",
                  "nodeType": "YulAssignment",
                  "src": "3324:29:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "3346:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "3346:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "3333:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "3333:12:136"
                    },
                    "nativeSrc": "3333:20:136",
                    "nodeType": "YulFunctionCall",
                    "src": "3333:20:136"
                  },
                  "variableNames": [
                    {
                      "name": "value",
                      "nativeSrc": "3324:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "3324:5:136"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "3387:16:136",
                    "nodeType": "YulBlock",
                    "src": "3387:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "3396:1:136",
                              "nodeType": "YulLiteral",
                              "src": "3396:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "3399:1:136",
                              "nodeType": "YulLiteral",
                              "src": "3399:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "3389:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "3389:6:136"
                          },
                          "nativeSrc": "3389:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "3389:12:136"
                        },
                        "nativeSrc": "3389:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "3389:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "3375:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "3375:5:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "3382:2:136",
                            "nodeType": "YulLiteral",
                            "src": "3382:2:136",
                            "type": "",
                            "value": "12"
                          }
                        ],
                        "functionName": {
                          "name": "lt",
                          "nativeSrc": "3372:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "3372:2:136"
                        },
                        "nativeSrc": "3372:13:136",
                        "nodeType": "YulFunctionCall",
                        "src": "3372:13:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "3365:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "3365:6:136"
                    },
                    "nativeSrc": "3365:21:136",
                    "nodeType": "YulFunctionCall",
                    "src": "3365:21:136"
                  },
                  "nativeSrc": "3362:41:136",
                  "nodeType": "YulIf",
                  "src": "3362:41:136"
                }
              ]
            },
            "name": "abi_decode_enum_RadonReduceOpcodes",
            "nativeSrc": "3249:160:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "offset",
                "nativeSrc": "3293:6:136",
                "nodeType": "YulTypedName",
                "src": "3293:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value",
                "nativeSrc": "3304:5:136",
                "nodeType": "YulTypedName",
                "src": "3304:5:136",
                "type": ""
              }
            ],
            "src": "3249:160:136"
          },
          {
            "body": {
              "nativeSrc": "3494:114:136",
              "nodeType": "YulBlock",
              "src": "3494:114:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "3538:22:136",
                    "nodeType": "YulBlock",
                    "src": "3538:22:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x41",
                            "nativeSrc": "3540:16:136",
                            "nodeType": "YulIdentifier",
                            "src": "3540:16:136"
                          },
                          "nativeSrc": "3540:18:136",
                          "nodeType": "YulFunctionCall",
                          "src": "3540:18:136"
                        },
                        "nativeSrc": "3540:18:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "3540:18:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "length",
                        "nativeSrc": "3510:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "3510:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3518:18:136",
                        "nodeType": "YulLiteral",
                        "src": "3518:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "3507:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "3507:2:136"
                    },
                    "nativeSrc": "3507:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "3507:30:136"
                  },
                  "nativeSrc": "3504:56:136",
                  "nodeType": "YulIf",
                  "src": "3504:56:136"
                },
                {
                  "nativeSrc": "3569:33:136",
                  "nodeType": "YulAssignment",
                  "src": "3569:33:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "3585:1:136",
                            "nodeType": "YulLiteral",
                            "src": "3585:1:136",
                            "type": "",
                            "value": "5"
                          },
                          {
                            "name": "length",
                            "nativeSrc": "3588:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "3588:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "shl",
                          "nativeSrc": "3581:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "3581:3:136"
                        },
                        "nativeSrc": "3581:14:136",
                        "nodeType": "YulFunctionCall",
                        "src": "3581:14:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3597:4:136",
                        "nodeType": "YulLiteral",
                        "src": "3597:4:136",
                        "type": "",
                        "value": "0x20"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "3577:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "3577:3:136"
                    },
                    "nativeSrc": "3577:25:136",
                    "nodeType": "YulFunctionCall",
                    "src": "3577:25:136"
                  },
                  "variableNames": [
                    {
                      "name": "size",
                      "nativeSrc": "3569:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "3569:4:136"
                    }
                  ]
                }
              ]
            },
            "name": "array_allocation_size_array_struct_RadonFilter_dyn",
            "nativeSrc": "3414:194:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "length",
                "nativeSrc": "3474:6:136",
                "nodeType": "YulTypedName",
                "src": "3474:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "size",
                "nativeSrc": "3485:4:136",
                "nodeType": "YulTypedName",
                "src": "3485:4:136",
                "type": ""
              }
            ],
            "src": "3414:194:136"
          },
          {
            "body": {
              "nativeSrc": "3681:428:136",
              "nodeType": "YulBlock",
              "src": "3681:428:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "3725:16:136",
                    "nodeType": "YulBlock",
                    "src": "3725:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "3734:1:136",
                              "nodeType": "YulLiteral",
                              "src": "3734:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "3737:1:136",
                              "nodeType": "YulLiteral",
                              "src": "3737:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "3727:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "3727:6:136"
                          },
                          "nativeSrc": "3727:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "3727:12:136"
                        },
                        "nativeSrc": "3727:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "3727:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "end",
                            "nativeSrc": "3702:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "3702:3:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "3707:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "3707:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "3698:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "3698:3:136"
                        },
                        "nativeSrc": "3698:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "3698:19:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3719:4:136",
                        "nodeType": "YulLiteral",
                        "src": "3719:4:136",
                        "type": "",
                        "value": "0x40"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "3694:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "3694:3:136"
                    },
                    "nativeSrc": "3694:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "3694:30:136"
                  },
                  "nativeSrc": "3691:50:136",
                  "nodeType": "YulIf",
                  "src": "3691:50:136"
                },
                {
                  "nativeSrc": "3750:31:136",
                  "nodeType": "YulAssignment",
                  "src": "3750:31:136",
                  "value": {
                    "arguments": [],
                    "functionName": {
                      "name": "allocate_memory_4557",
                      "nativeSrc": "3759:20:136",
                      "nodeType": "YulIdentifier",
                      "src": "3759:20:136"
                    },
                    "nativeSrc": "3759:22:136",
                    "nodeType": "YulFunctionCall",
                    "src": "3759:22:136"
                  },
                  "variableNames": [
                    {
                      "name": "value",
                      "nativeSrc": "3750:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "3750:5:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "3790:38:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "3790:38:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "3818:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "3818:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "3805:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "3805:12:136"
                    },
                    "nativeSrc": "3805:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "3805:23:136"
                  },
                  "variables": [
                    {
                      "name": "value_1",
                      "nativeSrc": "3794:7:136",
                      "nodeType": "YulTypedName",
                      "src": "3794:7:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "3864:16:136",
                    "nodeType": "YulBlock",
                    "src": "3864:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "3873:1:136",
                              "nodeType": "YulLiteral",
                              "src": "3873:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "3876:1:136",
                              "nodeType": "YulLiteral",
                              "src": "3876:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "3866:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "3866:6:136"
                          },
                          "nativeSrc": "3866:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "3866:12:136"
                        },
                        "nativeSrc": "3866:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "3866:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value_1",
                            "nativeSrc": "3850:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "3850:7:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "3859:2:136",
                            "nodeType": "YulLiteral",
                            "src": "3859:2:136",
                            "type": "",
                            "value": "10"
                          }
                        ],
                        "functionName": {
                          "name": "lt",
                          "nativeSrc": "3847:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "3847:2:136"
                        },
                        "nativeSrc": "3847:15:136",
                        "nodeType": "YulFunctionCall",
                        "src": "3847:15:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "3840:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "3840:6:136"
                    },
                    "nativeSrc": "3840:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "3840:23:136"
                  },
                  "nativeSrc": "3837:43:136",
                  "nodeType": "YulIf",
                  "src": "3837:43:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "3896:5:136",
                        "nodeType": "YulIdentifier",
                        "src": "3896:5:136"
                      },
                      {
                        "name": "value_1",
                        "nativeSrc": "3903:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "3903:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "3889:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "3889:6:136"
                    },
                    "nativeSrc": "3889:22:136",
                    "nodeType": "YulFunctionCall",
                    "src": "3889:22:136"
                  },
                  "nativeSrc": "3889:22:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "3889:22:136"
                },
                {
                  "nativeSrc": "3920:46:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "3920:46:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "3951:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "3951:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "3962:2:136",
                            "nodeType": "YulLiteral",
                            "src": "3962:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "3947:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "3947:3:136"
                        },
                        "nativeSrc": "3947:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "3947:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "3934:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "3934:12:136"
                    },
                    "nativeSrc": "3934:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "3934:32:136"
                  },
                  "variables": [
                    {
                      "name": "offset",
                      "nativeSrc": "3924:6:136",
                      "nodeType": "YulTypedName",
                      "src": "3924:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "4009:16:136",
                    "nodeType": "YulBlock",
                    "src": "4009:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "4018:1:136",
                              "nodeType": "YulLiteral",
                              "src": "4018:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "4021:1:136",
                              "nodeType": "YulLiteral",
                              "src": "4021:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "4011:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "4011:6:136"
                          },
                          "nativeSrc": "4011:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "4011:12:136"
                        },
                        "nativeSrc": "4011:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "4011:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "3981:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "3981:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "3989:18:136",
                        "nodeType": "YulLiteral",
                        "src": "3989:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "3978:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "3978:2:136"
                    },
                    "nativeSrc": "3978:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "3978:30:136"
                  },
                  "nativeSrc": "3975:50:136",
                  "nodeType": "YulIf",
                  "src": "3975:50:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "4045:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "4045:5:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "4052:2:136",
                            "nodeType": "YulLiteral",
                            "src": "4052:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "4041:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "4041:3:136"
                        },
                        "nativeSrc": "4041:14:136",
                        "nodeType": "YulFunctionCall",
                        "src": "4041:14:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "headStart",
                                "nativeSrc": "4078:9:136",
                                "nodeType": "YulIdentifier",
                                "src": "4078:9:136"
                              },
                              {
                                "name": "offset",
                                "nativeSrc": "4089:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "4089:6:136"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "4074:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "4074:3:136"
                            },
                            "nativeSrc": "4074:22:136",
                            "nodeType": "YulFunctionCall",
                            "src": "4074:22:136"
                          },
                          {
                            "name": "end",
                            "nativeSrc": "4098:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "4098:3:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_decode_bytes",
                          "nativeSrc": "4057:16:136",
                          "nodeType": "YulIdentifier",
                          "src": "4057:16:136"
                        },
                        "nativeSrc": "4057:45:136",
                        "nodeType": "YulFunctionCall",
                        "src": "4057:45:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "4034:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "4034:6:136"
                    },
                    "nativeSrc": "4034:69:136",
                    "nodeType": "YulFunctionCall",
                    "src": "4034:69:136"
                  },
                  "nativeSrc": "4034:69:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "4034:69:136"
                }
              ]
            },
            "name": "abi_decode_struct_RadonFilter",
            "nativeSrc": "3613:496:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "3652:9:136",
                "nodeType": "YulTypedName",
                "src": "3652:9:136",
                "type": ""
              },
              {
                "name": "end",
                "nativeSrc": "3663:3:136",
                "nodeType": "YulTypedName",
                "src": "3663:3:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value",
                "nativeSrc": "3671:5:136",
                "nodeType": "YulTypedName",
                "src": "3671:5:136",
                "type": ""
              }
            ],
            "src": "3613:496:136"
          },
          {
            "body": {
              "nativeSrc": "4215:1318:136",
              "nodeType": "YulBlock",
              "src": "4215:1318:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "4261:16:136",
                    "nodeType": "YulBlock",
                    "src": "4261:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "4270:1:136",
                              "nodeType": "YulLiteral",
                              "src": "4270:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "4273:1:136",
                              "nodeType": "YulLiteral",
                              "src": "4273:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "4263:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "4263:6:136"
                          },
                          "nativeSrc": "4263:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "4263:12:136"
                        },
                        "nativeSrc": "4263:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "4263:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "4236:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "4236:7:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "4245:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "4245:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "4232:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "4232:3:136"
                        },
                        "nativeSrc": "4232:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "4232:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "4257:2:136",
                        "nodeType": "YulLiteral",
                        "src": "4257:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "4228:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "4228:3:136"
                    },
                    "nativeSrc": "4228:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "4228:32:136"
                  },
                  "nativeSrc": "4225:52:136",
                  "nodeType": "YulIf",
                  "src": "4225:52:136"
                },
                {
                  "nativeSrc": "4286:37:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "4286:37:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "4313:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "4313:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "4300:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "4300:12:136"
                    },
                    "nativeSrc": "4300:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "4300:23:136"
                  },
                  "variables": [
                    {
                      "name": "offset",
                      "nativeSrc": "4290:6:136",
                      "nodeType": "YulTypedName",
                      "src": "4290:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "4366:16:136",
                    "nodeType": "YulBlock",
                    "src": "4366:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "4375:1:136",
                              "nodeType": "YulLiteral",
                              "src": "4375:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "4378:1:136",
                              "nodeType": "YulLiteral",
                              "src": "4378:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "4368:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "4368:6:136"
                          },
                          "nativeSrc": "4368:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "4368:12:136"
                        },
                        "nativeSrc": "4368:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "4368:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "4338:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "4338:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "4346:18:136",
                        "nodeType": "YulLiteral",
                        "src": "4346:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "4335:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "4335:2:136"
                    },
                    "nativeSrc": "4335:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "4335:30:136"
                  },
                  "nativeSrc": "4332:50:136",
                  "nodeType": "YulIf",
                  "src": "4332:50:136"
                },
                {
                  "nativeSrc": "4391:32:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "4391:32:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "4405:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "4405:9:136"
                      },
                      {
                        "name": "offset",
                        "nativeSrc": "4416:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "4416:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "4401:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "4401:3:136"
                    },
                    "nativeSrc": "4401:22:136",
                    "nodeType": "YulFunctionCall",
                    "src": "4401:22:136"
                  },
                  "variables": [
                    {
                      "name": "_1",
                      "nativeSrc": "4395:2:136",
                      "nodeType": "YulTypedName",
                      "src": "4395:2:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "4463:16:136",
                    "nodeType": "YulBlock",
                    "src": "4463:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "4472:1:136",
                              "nodeType": "YulLiteral",
                              "src": "4472:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "4475:1:136",
                              "nodeType": "YulLiteral",
                              "src": "4475:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "4465:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "4465:6:136"
                          },
                          "nativeSrc": "4465:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "4465:12:136"
                        },
                        "nativeSrc": "4465:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "4465:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "4443:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "4443:7:136"
                          },
                          {
                            "name": "_1",
                            "nativeSrc": "4452:2:136",
                            "nodeType": "YulIdentifier",
                            "src": "4452:2:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "4439:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "4439:3:136"
                        },
                        "nativeSrc": "4439:16:136",
                        "nodeType": "YulFunctionCall",
                        "src": "4439:16:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "4457:4:136",
                        "nodeType": "YulLiteral",
                        "src": "4457:4:136",
                        "type": "",
                        "value": "0x40"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "4435:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "4435:3:136"
                    },
                    "nativeSrc": "4435:27:136",
                    "nodeType": "YulFunctionCall",
                    "src": "4435:27:136"
                  },
                  "nativeSrc": "4432:47:136",
                  "nodeType": "YulIf",
                  "src": "4432:47:136"
                },
                {
                  "nativeSrc": "4488:35:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "4488:35:136",
                  "value": {
                    "arguments": [],
                    "functionName": {
                      "name": "allocate_memory_4557",
                      "nativeSrc": "4501:20:136",
                      "nodeType": "YulIdentifier",
                      "src": "4501:20:136"
                    },
                    "nativeSrc": "4501:22:136",
                    "nodeType": "YulFunctionCall",
                    "src": "4501:22:136"
                  },
                  "variables": [
                    {
                      "name": "value",
                      "nativeSrc": "4492:5:136",
                      "nodeType": "YulTypedName",
                      "src": "4492:5:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "4539:5:136",
                        "nodeType": "YulIdentifier",
                        "src": "4539:5:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "_1",
                            "nativeSrc": "4581:2:136",
                            "nodeType": "YulIdentifier",
                            "src": "4581:2:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_decode_enum_RadonReduceOpcodes",
                          "nativeSrc": "4546:34:136",
                          "nodeType": "YulIdentifier",
                          "src": "4546:34:136"
                        },
                        "nativeSrc": "4546:38:136",
                        "nodeType": "YulFunctionCall",
                        "src": "4546:38:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "4532:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "4532:6:136"
                    },
                    "nativeSrc": "4532:53:136",
                    "nodeType": "YulFunctionCall",
                    "src": "4532:53:136"
                  },
                  "nativeSrc": "4532:53:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "4532:53:136"
                },
                {
                  "nativeSrc": "4594:41:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "4594:41:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "_1",
                            "nativeSrc": "4627:2:136",
                            "nodeType": "YulIdentifier",
                            "src": "4627:2:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "4631:2:136",
                            "nodeType": "YulLiteral",
                            "src": "4631:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "4623:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "4623:3:136"
                        },
                        "nativeSrc": "4623:11:136",
                        "nodeType": "YulFunctionCall",
                        "src": "4623:11:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "4610:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "4610:12:136"
                    },
                    "nativeSrc": "4610:25:136",
                    "nodeType": "YulFunctionCall",
                    "src": "4610:25:136"
                  },
                  "variables": [
                    {
                      "name": "offset_1",
                      "nativeSrc": "4598:8:136",
                      "nodeType": "YulTypedName",
                      "src": "4598:8:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "4680:16:136",
                    "nodeType": "YulBlock",
                    "src": "4680:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "4689:1:136",
                              "nodeType": "YulLiteral",
                              "src": "4689:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "4692:1:136",
                              "nodeType": "YulLiteral",
                              "src": "4692:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "4682:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "4682:6:136"
                          },
                          "nativeSrc": "4682:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "4682:12:136"
                        },
                        "nativeSrc": "4682:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "4682:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_1",
                        "nativeSrc": "4650:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "4650:8:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "4660:18:136",
                        "nodeType": "YulLiteral",
                        "src": "4660:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "4647:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "4647:2:136"
                    },
                    "nativeSrc": "4647:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "4647:32:136"
                  },
                  "nativeSrc": "4644:52:136",
                  "nodeType": "YulIf",
                  "src": "4644:52:136"
                },
                {
                  "nativeSrc": "4705:27:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "4705:27:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "_1",
                        "nativeSrc": "4719:2:136",
                        "nodeType": "YulIdentifier",
                        "src": "4719:2:136"
                      },
                      {
                        "name": "offset_1",
                        "nativeSrc": "4723:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "4723:8:136"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "4715:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "4715:3:136"
                    },
                    "nativeSrc": "4715:17:136",
                    "nodeType": "YulFunctionCall",
                    "src": "4715:17:136"
                  },
                  "variables": [
                    {
                      "name": "_2",
                      "nativeSrc": "4709:2:136",
                      "nodeType": "YulTypedName",
                      "src": "4709:2:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "4780:16:136",
                    "nodeType": "YulBlock",
                    "src": "4780:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "4789:1:136",
                              "nodeType": "YulLiteral",
                              "src": "4789:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "4792:1:136",
                              "nodeType": "YulLiteral",
                              "src": "4792:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "4782:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "4782:6:136"
                          },
                          "nativeSrc": "4782:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "4782:12:136"
                        },
                        "nativeSrc": "4782:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "4782:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "_2",
                                "nativeSrc": "4759:2:136",
                                "nodeType": "YulIdentifier",
                                "src": "4759:2:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "4763:4:136",
                                "nodeType": "YulLiteral",
                                "src": "4763:4:136",
                                "type": "",
                                "value": "0x1f"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "4755:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "4755:3:136"
                            },
                            "nativeSrc": "4755:13:136",
                            "nodeType": "YulFunctionCall",
                            "src": "4755:13:136"
                          },
                          {
                            "name": "dataEnd",
                            "nativeSrc": "4770:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "4770:7:136"
                          }
                        ],
                        "functionName": {
                          "name": "slt",
                          "nativeSrc": "4751:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "4751:3:136"
                        },
                        "nativeSrc": "4751:27:136",
                        "nodeType": "YulFunctionCall",
                        "src": "4751:27:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "4744:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "4744:6:136"
                    },
                    "nativeSrc": "4744:35:136",
                    "nodeType": "YulFunctionCall",
                    "src": "4744:35:136"
                  },
                  "nativeSrc": "4741:55:136",
                  "nodeType": "YulIf",
                  "src": "4741:55:136"
                },
                {
                  "nativeSrc": "4805:30:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "4805:30:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "_2",
                        "nativeSrc": "4832:2:136",
                        "nodeType": "YulIdentifier",
                        "src": "4832:2:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "4819:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "4819:12:136"
                    },
                    "nativeSrc": "4819:16:136",
                    "nodeType": "YulFunctionCall",
                    "src": "4819:16:136"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "4809:6:136",
                      "nodeType": "YulTypedName",
                      "src": "4809:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "4844:86:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "4844:86:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "length",
                            "nativeSrc": "4922:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "4922:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "array_allocation_size_array_struct_RadonFilter_dyn",
                          "nativeSrc": "4871:50:136",
                          "nodeType": "YulIdentifier",
                          "src": "4871:50:136"
                        },
                        "nativeSrc": "4871:58:136",
                        "nodeType": "YulFunctionCall",
                        "src": "4871:58:136"
                      }
                    ],
                    "functionName": {
                      "name": "allocate_memory",
                      "nativeSrc": "4855:15:136",
                      "nodeType": "YulIdentifier",
                      "src": "4855:15:136"
                    },
                    "nativeSrc": "4855:75:136",
                    "nodeType": "YulFunctionCall",
                    "src": "4855:75:136"
                  },
                  "variables": [
                    {
                      "name": "dst",
                      "nativeSrc": "4848:3:136",
                      "nodeType": "YulTypedName",
                      "src": "4848:3:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "4939:16:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "4939:16:136",
                  "value": {
                    "name": "dst",
                    "nativeSrc": "4952:3:136",
                    "nodeType": "YulIdentifier",
                    "src": "4952:3:136"
                  },
                  "variables": [
                    {
                      "name": "array",
                      "nativeSrc": "4943:5:136",
                      "nodeType": "YulTypedName",
                      "src": "4943:5:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "dst",
                        "nativeSrc": "4971:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "4971:3:136"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "4976:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "4976:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "4964:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "4964:6:136"
                    },
                    "nativeSrc": "4964:19:136",
                    "nodeType": "YulFunctionCall",
                    "src": "4964:19:136"
                  },
                  "nativeSrc": "4964:19:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "4964:19:136"
                },
                {
                  "nativeSrc": "4992:19:136",
                  "nodeType": "YulAssignment",
                  "src": "4992:19:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "dst",
                        "nativeSrc": "5003:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "5003:3:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "5008:2:136",
                        "nodeType": "YulLiteral",
                        "src": "5008:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "4999:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "4999:3:136"
                    },
                    "nativeSrc": "4999:12:136",
                    "nodeType": "YulFunctionCall",
                    "src": "4999:12:136"
                  },
                  "variableNames": [
                    {
                      "name": "dst",
                      "nativeSrc": "4992:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "4992:3:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "5020:46:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "5020:46:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "_2",
                            "nativeSrc": "5042:2:136",
                            "nodeType": "YulIdentifier",
                            "src": "5042:2:136"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "5050:1:136",
                                "nodeType": "YulLiteral",
                                "src": "5050:1:136",
                                "type": "",
                                "value": "5"
                              },
                              {
                                "name": "length",
                                "nativeSrc": "5053:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "5053:6:136"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "5046:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "5046:3:136"
                            },
                            "nativeSrc": "5046:14:136",
                            "nodeType": "YulFunctionCall",
                            "src": "5046:14:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "5038:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "5038:3:136"
                        },
                        "nativeSrc": "5038:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "5038:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "5063:2:136",
                        "nodeType": "YulLiteral",
                        "src": "5063:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "5034:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "5034:3:136"
                    },
                    "nativeSrc": "5034:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "5034:32:136"
                  },
                  "variables": [
                    {
                      "name": "srcEnd",
                      "nativeSrc": "5024:6:136",
                      "nodeType": "YulTypedName",
                      "src": "5024:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "5098:16:136",
                    "nodeType": "YulBlock",
                    "src": "5098:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "5107:1:136",
                              "nodeType": "YulLiteral",
                              "src": "5107:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "5110:1:136",
                              "nodeType": "YulLiteral",
                              "src": "5110:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "5100:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "5100:6:136"
                          },
                          "nativeSrc": "5100:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "5100:12:136"
                        },
                        "nativeSrc": "5100:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "5100:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "srcEnd",
                        "nativeSrc": "5081:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "5081:6:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "5089:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "5089:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "5078:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "5078:2:136"
                    },
                    "nativeSrc": "5078:19:136",
                    "nodeType": "YulFunctionCall",
                    "src": "5078:19:136"
                  },
                  "nativeSrc": "5075:39:136",
                  "nodeType": "YulIf",
                  "src": "5075:39:136"
                },
                {
                  "nativeSrc": "5123:22:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "5123:22:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "_2",
                        "nativeSrc": "5138:2:136",
                        "nodeType": "YulIdentifier",
                        "src": "5138:2:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "5142:2:136",
                        "nodeType": "YulLiteral",
                        "src": "5142:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "5134:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "5134:3:136"
                    },
                    "nativeSrc": "5134:11:136",
                    "nodeType": "YulFunctionCall",
                    "src": "5134:11:136"
                  },
                  "variables": [
                    {
                      "name": "src",
                      "nativeSrc": "5127:3:136",
                      "nodeType": "YulTypedName",
                      "src": "5127:3:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "5210:255:136",
                    "nodeType": "YulBlock",
                    "src": "5210:255:136",
                    "statements": [
                      {
                        "nativeSrc": "5224:36:136",
                        "nodeType": "YulVariableDeclaration",
                        "src": "5224:36:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "src",
                              "nativeSrc": "5256:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "5256:3:136"
                            }
                          ],
                          "functionName": {
                            "name": "calldataload",
                            "nativeSrc": "5243:12:136",
                            "nodeType": "YulIdentifier",
                            "src": "5243:12:136"
                          },
                          "nativeSrc": "5243:17:136",
                          "nodeType": "YulFunctionCall",
                          "src": "5243:17:136"
                        },
                        "variables": [
                          {
                            "name": "innerOffset",
                            "nativeSrc": "5228:11:136",
                            "nodeType": "YulTypedName",
                            "src": "5228:11:136",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "body": {
                          "nativeSrc": "5312:16:136",
                          "nodeType": "YulBlock",
                          "src": "5312:16:136",
                          "statements": [
                            {
                              "expression": {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "5321:1:136",
                                    "nodeType": "YulLiteral",
                                    "src": "5321:1:136",
                                    "type": "",
                                    "value": "0"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "5324:1:136",
                                    "nodeType": "YulLiteral",
                                    "src": "5324:1:136",
                                    "type": "",
                                    "value": "0"
                                  }
                                ],
                                "functionName": {
                                  "name": "revert",
                                  "nativeSrc": "5314:6:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "5314:6:136"
                                },
                                "nativeSrc": "5314:12:136",
                                "nodeType": "YulFunctionCall",
                                "src": "5314:12:136"
                              },
                              "nativeSrc": "5314:12:136",
                              "nodeType": "YulExpressionStatement",
                              "src": "5314:12:136"
                            }
                          ]
                        },
                        "condition": {
                          "arguments": [
                            {
                              "name": "innerOffset",
                              "nativeSrc": "5279:11:136",
                              "nodeType": "YulIdentifier",
                              "src": "5279:11:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "5292:18:136",
                              "nodeType": "YulLiteral",
                              "src": "5292:18:136",
                              "type": "",
                              "value": "0xffffffffffffffff"
                            }
                          ],
                          "functionName": {
                            "name": "gt",
                            "nativeSrc": "5276:2:136",
                            "nodeType": "YulIdentifier",
                            "src": "5276:2:136"
                          },
                          "nativeSrc": "5276:35:136",
                          "nodeType": "YulFunctionCall",
                          "src": "5276:35:136"
                        },
                        "nativeSrc": "5273:55:136",
                        "nodeType": "YulIf",
                        "src": "5273:55:136"
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "name": "dst",
                              "nativeSrc": "5348:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "5348:3:136"
                            },
                            {
                              "arguments": [
                                {
                                  "arguments": [
                                    {
                                      "arguments": [
                                        {
                                          "name": "_2",
                                          "nativeSrc": "5391:2:136",
                                          "nodeType": "YulIdentifier",
                                          "src": "5391:2:136"
                                        },
                                        {
                                          "name": "innerOffset",
                                          "nativeSrc": "5395:11:136",
                                          "nodeType": "YulIdentifier",
                                          "src": "5395:11:136"
                                        }
                                      ],
                                      "functionName": {
                                        "name": "add",
                                        "nativeSrc": "5387:3:136",
                                        "nodeType": "YulIdentifier",
                                        "src": "5387:3:136"
                                      },
                                      "nativeSrc": "5387:20:136",
                                      "nodeType": "YulFunctionCall",
                                      "src": "5387:20:136"
                                    },
                                    {
                                      "kind": "number",
                                      "nativeSrc": "5409:2:136",
                                      "nodeType": "YulLiteral",
                                      "src": "5409:2:136",
                                      "type": "",
                                      "value": "32"
                                    }
                                  ],
                                  "functionName": {
                                    "name": "add",
                                    "nativeSrc": "5383:3:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "5383:3:136"
                                  },
                                  "nativeSrc": "5383:29:136",
                                  "nodeType": "YulFunctionCall",
                                  "src": "5383:29:136"
                                },
                                {
                                  "name": "dataEnd",
                                  "nativeSrc": "5414:7:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "5414:7:136"
                                }
                              ],
                              "functionName": {
                                "name": "abi_decode_struct_RadonFilter",
                                "nativeSrc": "5353:29:136",
                                "nodeType": "YulIdentifier",
                                "src": "5353:29:136"
                              },
                              "nativeSrc": "5353:69:136",
                              "nodeType": "YulFunctionCall",
                              "src": "5353:69:136"
                            }
                          ],
                          "functionName": {
                            "name": "mstore",
                            "nativeSrc": "5341:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "5341:6:136"
                          },
                          "nativeSrc": "5341:82:136",
                          "nodeType": "YulFunctionCall",
                          "src": "5341:82:136"
                        },
                        "nativeSrc": "5341:82:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "5341:82:136"
                      },
                      {
                        "nativeSrc": "5436:19:136",
                        "nodeType": "YulAssignment",
                        "src": "5436:19:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "dst",
                              "nativeSrc": "5447:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "5447:3:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "5452:2:136",
                              "nodeType": "YulLiteral",
                              "src": "5452:2:136",
                              "type": "",
                              "value": "32"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "5443:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "5443:3:136"
                          },
                          "nativeSrc": "5443:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "5443:12:136"
                        },
                        "variableNames": [
                          {
                            "name": "dst",
                            "nativeSrc": "5436:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "5436:3:136"
                          }
                        ]
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "src",
                        "nativeSrc": "5165:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "5165:3:136"
                      },
                      {
                        "name": "srcEnd",
                        "nativeSrc": "5170:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "5170:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "lt",
                      "nativeSrc": "5162:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "5162:2:136"
                    },
                    "nativeSrc": "5162:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "5162:15:136"
                  },
                  "nativeSrc": "5154:311:136",
                  "nodeType": "YulForLoop",
                  "post": {
                    "nativeSrc": "5178:23:136",
                    "nodeType": "YulBlock",
                    "src": "5178:23:136",
                    "statements": [
                      {
                        "nativeSrc": "5180:19:136",
                        "nodeType": "YulAssignment",
                        "src": "5180:19:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "src",
                              "nativeSrc": "5191:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "5191:3:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "5196:2:136",
                              "nodeType": "YulLiteral",
                              "src": "5196:2:136",
                              "type": "",
                              "value": "32"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "5187:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "5187:3:136"
                          },
                          "nativeSrc": "5187:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "5187:12:136"
                        },
                        "variableNames": [
                          {
                            "name": "src",
                            "nativeSrc": "5180:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "5180:3:136"
                          }
                        ]
                      }
                    ]
                  },
                  "pre": {
                    "nativeSrc": "5158:3:136",
                    "nodeType": "YulBlock",
                    "src": "5158:3:136",
                    "statements": []
                  },
                  "src": "5154:311:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "5485:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "5485:5:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "5492:2:136",
                            "nodeType": "YulLiteral",
                            "src": "5492:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "5481:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "5481:3:136"
                        },
                        "nativeSrc": "5481:14:136",
                        "nodeType": "YulFunctionCall",
                        "src": "5481:14:136"
                      },
                      {
                        "name": "array",
                        "nativeSrc": "5497:5:136",
                        "nodeType": "YulIdentifier",
                        "src": "5497:5:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "5474:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "5474:6:136"
                    },
                    "nativeSrc": "5474:29:136",
                    "nodeType": "YulFunctionCall",
                    "src": "5474:29:136"
                  },
                  "nativeSrc": "5474:29:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "5474:29:136"
                },
                {
                  "nativeSrc": "5512:15:136",
                  "nodeType": "YulAssignment",
                  "src": "5512:15:136",
                  "value": {
                    "name": "value",
                    "nativeSrc": "5522:5:136",
                    "nodeType": "YulIdentifier",
                    "src": "5522:5:136"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "5512:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "5512:6:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_struct$_RadonReducer_$37748_memory_ptr",
            "nativeSrc": "4114:1419:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "4181:9:136",
                "nodeType": "YulTypedName",
                "src": "4181:9:136",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "4192:7:136",
                "nodeType": "YulTypedName",
                "src": "4192:7:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "4204:6:136",
                "nodeType": "YulTypedName",
                "src": "4204:6:136",
                "type": ""
              }
            ],
            "src": "4114:1419:136"
          },
          {
            "body": {
              "nativeSrc": "5585:109:136",
              "nodeType": "YulBlock",
              "src": "5585:109:136",
              "statements": [
                {
                  "nativeSrc": "5595:29:136",
                  "nodeType": "YulAssignment",
                  "src": "5595:29:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "5617:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "5617:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "5604:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "5604:12:136"
                    },
                    "nativeSrc": "5604:20:136",
                    "nodeType": "YulFunctionCall",
                    "src": "5604:20:136"
                  },
                  "variableNames": [
                    {
                      "name": "value",
                      "nativeSrc": "5595:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "5595:5:136"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "5672:16:136",
                    "nodeType": "YulBlock",
                    "src": "5672:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "5681:1:136",
                              "nodeType": "YulLiteral",
                              "src": "5681:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "5684:1:136",
                              "nodeType": "YulLiteral",
                              "src": "5684:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "5674:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "5674:6:136"
                          },
                          "nativeSrc": "5674:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "5674:12:136"
                        },
                        "nativeSrc": "5674:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "5674:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "5646:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "5646:5:136"
                          },
                          {
                            "arguments": [
                              {
                                "name": "value",
                                "nativeSrc": "5657:5:136",
                                "nodeType": "YulIdentifier",
                                "src": "5657:5:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "5664:4:136",
                                "nodeType": "YulLiteral",
                                "src": "5664:4:136",
                                "type": "",
                                "value": "0xff"
                              }
                            ],
                            "functionName": {
                              "name": "and",
                              "nativeSrc": "5653:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "5653:3:136"
                            },
                            "nativeSrc": "5653:16:136",
                            "nodeType": "YulFunctionCall",
                            "src": "5653:16:136"
                          }
                        ],
                        "functionName": {
                          "name": "eq",
                          "nativeSrc": "5643:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "5643:2:136"
                        },
                        "nativeSrc": "5643:27:136",
                        "nodeType": "YulFunctionCall",
                        "src": "5643:27:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "5636:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "5636:6:136"
                    },
                    "nativeSrc": "5636:35:136",
                    "nodeType": "YulFunctionCall",
                    "src": "5636:35:136"
                  },
                  "nativeSrc": "5633:55:136",
                  "nodeType": "YulIf",
                  "src": "5633:55:136"
                }
              ]
            },
            "name": "abi_decode_uint8",
            "nativeSrc": "5538:156:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "offset",
                "nativeSrc": "5564:6:136",
                "nodeType": "YulTypedName",
                "src": "5564:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value",
                "nativeSrc": "5575:5:136",
                "nodeType": "YulTypedName",
                "src": "5575:5:136",
                "type": ""
              }
            ],
            "src": "5538:156:136"
          },
          {
            "body": {
              "nativeSrc": "5820:484:136",
              "nodeType": "YulBlock",
              "src": "5820:484:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "5866:16:136",
                    "nodeType": "YulBlock",
                    "src": "5866:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "5875:1:136",
                              "nodeType": "YulLiteral",
                              "src": "5875:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "5878:1:136",
                              "nodeType": "YulLiteral",
                              "src": "5878:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "5868:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "5868:6:136"
                          },
                          "nativeSrc": "5868:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "5868:12:136"
                        },
                        "nativeSrc": "5868:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "5868:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "5841:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "5841:7:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "5850:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "5850:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "5837:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "5837:3:136"
                        },
                        "nativeSrc": "5837:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "5837:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "5862:2:136",
                        "nodeType": "YulLiteral",
                        "src": "5862:2:136",
                        "type": "",
                        "value": "96"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "5833:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "5833:3:136"
                    },
                    "nativeSrc": "5833:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "5833:32:136"
                  },
                  "nativeSrc": "5830:52:136",
                  "nodeType": "YulIf",
                  "src": "5830:52:136"
                },
                {
                  "nativeSrc": "5891:37:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "5891:37:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "5918:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "5918:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "5905:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "5905:12:136"
                    },
                    "nativeSrc": "5905:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "5905:23:136"
                  },
                  "variables": [
                    {
                      "name": "offset",
                      "nativeSrc": "5895:6:136",
                      "nodeType": "YulTypedName",
                      "src": "5895:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "5971:16:136",
                    "nodeType": "YulBlock",
                    "src": "5971:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "5980:1:136",
                              "nodeType": "YulLiteral",
                              "src": "5980:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "5983:1:136",
                              "nodeType": "YulLiteral",
                              "src": "5983:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "5973:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "5973:6:136"
                          },
                          "nativeSrc": "5973:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "5973:12:136"
                        },
                        "nativeSrc": "5973:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "5973:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "5943:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "5943:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "5951:18:136",
                        "nodeType": "YulLiteral",
                        "src": "5951:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "5940:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "5940:2:136"
                    },
                    "nativeSrc": "5940:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "5940:30:136"
                  },
                  "nativeSrc": "5937:50:136",
                  "nodeType": "YulIf",
                  "src": "5937:50:136"
                },
                {
                  "nativeSrc": "5996:59:136",
                  "nodeType": "YulAssignment",
                  "src": "5996:59:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "6027:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "6027:9:136"
                          },
                          {
                            "name": "offset",
                            "nativeSrc": "6038:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "6038:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "6023:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "6023:3:136"
                        },
                        "nativeSrc": "6023:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "6023:22:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "6047:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "6047:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_bytes",
                      "nativeSrc": "6006:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "6006:16:136"
                    },
                    "nativeSrc": "6006:49:136",
                    "nodeType": "YulFunctionCall",
                    "src": "6006:49:136"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "5996:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "5996:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "6064:46:136",
                  "nodeType": "YulAssignment",
                  "src": "6064:46:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "6095:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "6095:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "6106:2:136",
                            "nodeType": "YulLiteral",
                            "src": "6106:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "6091:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "6091:3:136"
                        },
                        "nativeSrc": "6091:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "6091:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_uint8",
                      "nativeSrc": "6074:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "6074:16:136"
                    },
                    "nativeSrc": "6074:36:136",
                    "nodeType": "YulFunctionCall",
                    "src": "6074:36:136"
                  },
                  "variableNames": [
                    {
                      "name": "value1",
                      "nativeSrc": "6064:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "6064:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "6119:48:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "6119:48:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "6152:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "6152:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "6163:2:136",
                            "nodeType": "YulLiteral",
                            "src": "6163:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "6148:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "6148:3:136"
                        },
                        "nativeSrc": "6148:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "6148:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "6135:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "6135:12:136"
                    },
                    "nativeSrc": "6135:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "6135:32:136"
                  },
                  "variables": [
                    {
                      "name": "offset_1",
                      "nativeSrc": "6123:8:136",
                      "nodeType": "YulTypedName",
                      "src": "6123:8:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "6212:16:136",
                    "nodeType": "YulBlock",
                    "src": "6212:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "6221:1:136",
                              "nodeType": "YulLiteral",
                              "src": "6221:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "6224:1:136",
                              "nodeType": "YulLiteral",
                              "src": "6224:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "6214:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "6214:6:136"
                          },
                          "nativeSrc": "6214:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "6214:12:136"
                        },
                        "nativeSrc": "6214:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "6214:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_1",
                        "nativeSrc": "6182:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "6182:8:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "6192:18:136",
                        "nodeType": "YulLiteral",
                        "src": "6192:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "6179:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "6179:2:136"
                    },
                    "nativeSrc": "6179:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "6179:32:136"
                  },
                  "nativeSrc": "6176:52:136",
                  "nodeType": "YulIf",
                  "src": "6176:52:136"
                },
                {
                  "nativeSrc": "6237:61:136",
                  "nodeType": "YulAssignment",
                  "src": "6237:61:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "6268:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "6268:9:136"
                          },
                          {
                            "name": "offset_1",
                            "nativeSrc": "6279:8:136",
                            "nodeType": "YulIdentifier",
                            "src": "6279:8:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "6264:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "6264:3:136"
                        },
                        "nativeSrc": "6264:24:136",
                        "nodeType": "YulFunctionCall",
                        "src": "6264:24:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "6290:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "6290:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_bytes",
                      "nativeSrc": "6247:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "6247:16:136"
                    },
                    "nativeSrc": "6247:51:136",
                    "nodeType": "YulFunctionCall",
                    "src": "6247:51:136"
                  },
                  "variableNames": [
                    {
                      "name": "value2",
                      "nativeSrc": "6237:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "6237:6:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_bytes_memory_ptrt_uint8t_string_memory_ptr",
            "nativeSrc": "5699:605:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "5770:9:136",
                "nodeType": "YulTypedName",
                "src": "5770:9:136",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "5781:7:136",
                "nodeType": "YulTypedName",
                "src": "5781:7:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "5793:6:136",
                "nodeType": "YulTypedName",
                "src": "5793:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "5801:6:136",
                "nodeType": "YulTypedName",
                "src": "5801:6:136",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "5809:6:136",
                "nodeType": "YulTypedName",
                "src": "5809:6:136",
                "type": ""
              }
            ],
            "src": "5699:605:136"
          },
          {
            "body": {
              "nativeSrc": "6377:94:136",
              "nodeType": "YulBlock",
              "src": "6377:94:136",
              "statements": [
                {
                  "nativeSrc": "6387:29:136",
                  "nodeType": "YulAssignment",
                  "src": "6387:29:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "6409:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "6409:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "6396:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "6396:12:136"
                    },
                    "nativeSrc": "6396:20:136",
                    "nodeType": "YulFunctionCall",
                    "src": "6396:20:136"
                  },
                  "variableNames": [
                    {
                      "name": "value",
                      "nativeSrc": "6387:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "6387:5:136"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "6449:16:136",
                    "nodeType": "YulBlock",
                    "src": "6449:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "6458:1:136",
                              "nodeType": "YulLiteral",
                              "src": "6458:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "6461:1:136",
                              "nodeType": "YulLiteral",
                              "src": "6461:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "6451:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "6451:6:136"
                          },
                          "nativeSrc": "6451:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "6451:12:136"
                        },
                        "nativeSrc": "6451:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "6451:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "6438:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "6438:5:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "6445:1:136",
                            "nodeType": "YulLiteral",
                            "src": "6445:1:136",
                            "type": "",
                            "value": "5"
                          }
                        ],
                        "functionName": {
                          "name": "lt",
                          "nativeSrc": "6435:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "6435:2:136"
                        },
                        "nativeSrc": "6435:12:136",
                        "nodeType": "YulFunctionCall",
                        "src": "6435:12:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "6428:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "6428:6:136"
                    },
                    "nativeSrc": "6428:20:136",
                    "nodeType": "YulFunctionCall",
                    "src": "6428:20:136"
                  },
                  "nativeSrc": "6425:40:136",
                  "nodeType": "YulIf",
                  "src": "6425:40:136"
                }
              ]
            },
            "name": "abi_decode_enum_RadonRetrievalMethods",
            "nativeSrc": "6309:162:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "offset",
                "nativeSrc": "6356:6:136",
                "nodeType": "YulTypedName",
                "src": "6356:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value",
                "nativeSrc": "6367:5:136",
                "nodeType": "YulTypedName",
                "src": "6367:5:136",
                "type": ""
              }
            ],
            "src": "6309:162:136"
          },
          {
            "body": {
              "nativeSrc": "6545:1401:136",
              "nodeType": "YulBlock",
              "src": "6545:1401:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "6594:16:136",
                    "nodeType": "YulBlock",
                    "src": "6594:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "6603:1:136",
                              "nodeType": "YulLiteral",
                              "src": "6603:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "6606:1:136",
                              "nodeType": "YulLiteral",
                              "src": "6606:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "6596:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "6596:6:136"
                          },
                          "nativeSrc": "6596:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "6596:12:136"
                        },
                        "nativeSrc": "6596:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "6596:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "offset",
                                "nativeSrc": "6573:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "6573:6:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "6581:4:136",
                                "nodeType": "YulLiteral",
                                "src": "6581:4:136",
                                "type": "",
                                "value": "0x1f"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "6569:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "6569:3:136"
                            },
                            "nativeSrc": "6569:17:136",
                            "nodeType": "YulFunctionCall",
                            "src": "6569:17:136"
                          },
                          {
                            "name": "end",
                            "nativeSrc": "6588:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "6588:3:136"
                          }
                        ],
                        "functionName": {
                          "name": "slt",
                          "nativeSrc": "6565:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "6565:3:136"
                        },
                        "nativeSrc": "6565:27:136",
                        "nodeType": "YulFunctionCall",
                        "src": "6565:27:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "6558:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "6558:6:136"
                    },
                    "nativeSrc": "6558:35:136",
                    "nodeType": "YulFunctionCall",
                    "src": "6558:35:136"
                  },
                  "nativeSrc": "6555:55:136",
                  "nodeType": "YulIf",
                  "src": "6555:55:136"
                },
                {
                  "nativeSrc": "6619:34:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "6619:34:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "6646:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "6646:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "6633:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "6633:12:136"
                    },
                    "nativeSrc": "6633:20:136",
                    "nodeType": "YulFunctionCall",
                    "src": "6633:20:136"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "6623:6:136",
                      "nodeType": "YulTypedName",
                      "src": "6623:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "6662:86:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "6662:86:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "length",
                            "nativeSrc": "6740:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "6740:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "array_allocation_size_array_struct_RadonFilter_dyn",
                          "nativeSrc": "6689:50:136",
                          "nodeType": "YulIdentifier",
                          "src": "6689:50:136"
                        },
                        "nativeSrc": "6689:58:136",
                        "nodeType": "YulFunctionCall",
                        "src": "6689:58:136"
                      }
                    ],
                    "functionName": {
                      "name": "allocate_memory",
                      "nativeSrc": "6673:15:136",
                      "nodeType": "YulIdentifier",
                      "src": "6673:15:136"
                    },
                    "nativeSrc": "6673:75:136",
                    "nodeType": "YulFunctionCall",
                    "src": "6673:75:136"
                  },
                  "variables": [
                    {
                      "name": "dst",
                      "nativeSrc": "6666:3:136",
                      "nodeType": "YulTypedName",
                      "src": "6666:3:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "6757:18:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "6757:18:136",
                  "value": {
                    "name": "dst",
                    "nativeSrc": "6772:3:136",
                    "nodeType": "YulIdentifier",
                    "src": "6772:3:136"
                  },
                  "variables": [
                    {
                      "name": "array_1",
                      "nativeSrc": "6761:7:136",
                      "nodeType": "YulTypedName",
                      "src": "6761:7:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "dst",
                        "nativeSrc": "6791:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "6791:3:136"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "6796:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "6796:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "6784:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "6784:6:136"
                    },
                    "nativeSrc": "6784:19:136",
                    "nodeType": "YulFunctionCall",
                    "src": "6784:19:136"
                  },
                  "nativeSrc": "6784:19:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "6784:19:136"
                },
                {
                  "nativeSrc": "6812:21:136",
                  "nodeType": "YulAssignment",
                  "src": "6812:21:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "dst",
                        "nativeSrc": "6823:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "6823:3:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "6828:4:136",
                        "nodeType": "YulLiteral",
                        "src": "6828:4:136",
                        "type": "",
                        "value": "0x20"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "6819:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "6819:3:136"
                    },
                    "nativeSrc": "6819:14:136",
                    "nodeType": "YulFunctionCall",
                    "src": "6819:14:136"
                  },
                  "variableNames": [
                    {
                      "name": "dst",
                      "nativeSrc": "6812:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "6812:3:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "6842:52:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "6842:52:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "offset",
                            "nativeSrc": "6864:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "6864:6:136"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "6876:1:136",
                                "nodeType": "YulLiteral",
                                "src": "6876:1:136",
                                "type": "",
                                "value": "5"
                              },
                              {
                                "name": "length",
                                "nativeSrc": "6879:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "6879:6:136"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "6872:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "6872:3:136"
                            },
                            "nativeSrc": "6872:14:136",
                            "nodeType": "YulFunctionCall",
                            "src": "6872:14:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "6860:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "6860:3:136"
                        },
                        "nativeSrc": "6860:27:136",
                        "nodeType": "YulFunctionCall",
                        "src": "6860:27:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "6889:4:136",
                        "nodeType": "YulLiteral",
                        "src": "6889:4:136",
                        "type": "",
                        "value": "0x20"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "6856:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "6856:3:136"
                    },
                    "nativeSrc": "6856:38:136",
                    "nodeType": "YulFunctionCall",
                    "src": "6856:38:136"
                  },
                  "variables": [
                    {
                      "name": "srcEnd",
                      "nativeSrc": "6846:6:136",
                      "nodeType": "YulTypedName",
                      "src": "6846:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "6922:16:136",
                    "nodeType": "YulBlock",
                    "src": "6922:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "6931:1:136",
                              "nodeType": "YulLiteral",
                              "src": "6931:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "6934:1:136",
                              "nodeType": "YulLiteral",
                              "src": "6934:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "6924:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "6924:6:136"
                          },
                          "nativeSrc": "6924:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "6924:12:136"
                        },
                        "nativeSrc": "6924:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "6924:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "srcEnd",
                        "nativeSrc": "6909:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "6909:6:136"
                      },
                      {
                        "name": "end",
                        "nativeSrc": "6917:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "6917:3:136"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "6906:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "6906:2:136"
                    },
                    "nativeSrc": "6906:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "6906:15:136"
                  },
                  "nativeSrc": "6903:35:136",
                  "nodeType": "YulIf",
                  "src": "6903:35:136"
                },
                {
                  "nativeSrc": "6947:28:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "6947:28:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "6962:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "6962:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "6970:4:136",
                        "nodeType": "YulLiteral",
                        "src": "6970:4:136",
                        "type": "",
                        "value": "0x20"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "6958:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "6958:3:136"
                    },
                    "nativeSrc": "6958:17:136",
                    "nodeType": "YulFunctionCall",
                    "src": "6958:17:136"
                  },
                  "variables": [
                    {
                      "name": "src",
                      "nativeSrc": "6951:3:136",
                      "nodeType": "YulTypedName",
                      "src": "6951:3:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "7042:873:136",
                    "nodeType": "YulBlock",
                    "src": "7042:873:136",
                    "statements": [
                      {
                        "nativeSrc": "7056:36:136",
                        "nodeType": "YulVariableDeclaration",
                        "src": "7056:36:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "src",
                              "nativeSrc": "7088:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "7088:3:136"
                            }
                          ],
                          "functionName": {
                            "name": "calldataload",
                            "nativeSrc": "7075:12:136",
                            "nodeType": "YulIdentifier",
                            "src": "7075:12:136"
                          },
                          "nativeSrc": "7075:17:136",
                          "nodeType": "YulFunctionCall",
                          "src": "7075:17:136"
                        },
                        "variables": [
                          {
                            "name": "innerOffset",
                            "nativeSrc": "7060:11:136",
                            "nodeType": "YulTypedName",
                            "src": "7060:11:136",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "body": {
                          "nativeSrc": "7144:16:136",
                          "nodeType": "YulBlock",
                          "src": "7144:16:136",
                          "statements": [
                            {
                              "expression": {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "7153:1:136",
                                    "nodeType": "YulLiteral",
                                    "src": "7153:1:136",
                                    "type": "",
                                    "value": "0"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "7156:1:136",
                                    "nodeType": "YulLiteral",
                                    "src": "7156:1:136",
                                    "type": "",
                                    "value": "0"
                                  }
                                ],
                                "functionName": {
                                  "name": "revert",
                                  "nativeSrc": "7146:6:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "7146:6:136"
                                },
                                "nativeSrc": "7146:12:136",
                                "nodeType": "YulFunctionCall",
                                "src": "7146:12:136"
                              },
                              "nativeSrc": "7146:12:136",
                              "nodeType": "YulExpressionStatement",
                              "src": "7146:12:136"
                            }
                          ]
                        },
                        "condition": {
                          "arguments": [
                            {
                              "name": "innerOffset",
                              "nativeSrc": "7111:11:136",
                              "nodeType": "YulIdentifier",
                              "src": "7111:11:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "7124:18:136",
                              "nodeType": "YulLiteral",
                              "src": "7124:18:136",
                              "type": "",
                              "value": "0xffffffffffffffff"
                            }
                          ],
                          "functionName": {
                            "name": "gt",
                            "nativeSrc": "7108:2:136",
                            "nodeType": "YulIdentifier",
                            "src": "7108:2:136"
                          },
                          "nativeSrc": "7108:35:136",
                          "nodeType": "YulFunctionCall",
                          "src": "7108:35:136"
                        },
                        "nativeSrc": "7105:55:136",
                        "nodeType": "YulIf",
                        "src": "7105:55:136"
                      },
                      {
                        "nativeSrc": "7173:34:136",
                        "nodeType": "YulVariableDeclaration",
                        "src": "7173:34:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "offset",
                              "nativeSrc": "7187:6:136",
                              "nodeType": "YulIdentifier",
                              "src": "7187:6:136"
                            },
                            {
                              "name": "innerOffset",
                              "nativeSrc": "7195:11:136",
                              "nodeType": "YulIdentifier",
                              "src": "7195:11:136"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "7183:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "7183:3:136"
                          },
                          "nativeSrc": "7183:24:136",
                          "nodeType": "YulFunctionCall",
                          "src": "7183:24:136"
                        },
                        "variables": [
                          {
                            "name": "_1",
                            "nativeSrc": "7177:2:136",
                            "nodeType": "YulTypedName",
                            "src": "7177:2:136",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "body": {
                          "nativeSrc": "7253:16:136",
                          "nodeType": "YulBlock",
                          "src": "7253:16:136",
                          "statements": [
                            {
                              "expression": {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "7262:1:136",
                                    "nodeType": "YulLiteral",
                                    "src": "7262:1:136",
                                    "type": "",
                                    "value": "0"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "7265:1:136",
                                    "nodeType": "YulLiteral",
                                    "src": "7265:1:136",
                                    "type": "",
                                    "value": "0"
                                  }
                                ],
                                "functionName": {
                                  "name": "revert",
                                  "nativeSrc": "7255:6:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "7255:6:136"
                                },
                                "nativeSrc": "7255:12:136",
                                "nodeType": "YulFunctionCall",
                                "src": "7255:12:136"
                              },
                              "nativeSrc": "7255:12:136",
                              "nodeType": "YulExpressionStatement",
                              "src": "7255:12:136"
                            }
                          ]
                        },
                        "condition": {
                          "arguments": [
                            {
                              "arguments": [
                                {
                                  "arguments": [
                                    {
                                      "name": "_1",
                                      "nativeSrc": "7238:2:136",
                                      "nodeType": "YulIdentifier",
                                      "src": "7238:2:136"
                                    },
                                    {
                                      "kind": "number",
                                      "nativeSrc": "7242:2:136",
                                      "nodeType": "YulLiteral",
                                      "src": "7242:2:136",
                                      "type": "",
                                      "value": "63"
                                    }
                                  ],
                                  "functionName": {
                                    "name": "add",
                                    "nativeSrc": "7234:3:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "7234:3:136"
                                  },
                                  "nativeSrc": "7234:11:136",
                                  "nodeType": "YulFunctionCall",
                                  "src": "7234:11:136"
                                },
                                {
                                  "name": "end",
                                  "nativeSrc": "7247:3:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "7247:3:136"
                                }
                              ],
                              "functionName": {
                                "name": "slt",
                                "nativeSrc": "7230:3:136",
                                "nodeType": "YulIdentifier",
                                "src": "7230:3:136"
                              },
                              "nativeSrc": "7230:21:136",
                              "nodeType": "YulFunctionCall",
                              "src": "7230:21:136"
                            }
                          ],
                          "functionName": {
                            "name": "iszero",
                            "nativeSrc": "7223:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "7223:6:136"
                          },
                          "nativeSrc": "7223:29:136",
                          "nodeType": "YulFunctionCall",
                          "src": "7223:29:136"
                        },
                        "nativeSrc": "7220:49:136",
                        "nodeType": "YulIf",
                        "src": "7220:49:136"
                      },
                      {
                        "nativeSrc": "7282:35:136",
                        "nodeType": "YulVariableDeclaration",
                        "src": "7282:35:136",
                        "value": {
                          "arguments": [],
                          "functionName": {
                            "name": "allocate_memory_4557",
                            "nativeSrc": "7295:20:136",
                            "nodeType": "YulIdentifier",
                            "src": "7295:20:136"
                          },
                          "nativeSrc": "7295:22:136",
                          "nodeType": "YulFunctionCall",
                          "src": "7295:22:136"
                        },
                        "variables": [
                          {
                            "name": "dst_1",
                            "nativeSrc": "7286:5:136",
                            "nodeType": "YulTypedName",
                            "src": "7286:5:136",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "nativeSrc": "7330:20:136",
                        "nodeType": "YulVariableDeclaration",
                        "src": "7330:20:136",
                        "value": {
                          "name": "dst_1",
                          "nativeSrc": "7345:5:136",
                          "nodeType": "YulIdentifier",
                          "src": "7345:5:136"
                        },
                        "variables": [
                          {
                            "name": "array_2",
                            "nativeSrc": "7334:7:136",
                            "nodeType": "YulTypedName",
                            "src": "7334:7:136",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "nativeSrc": "7363:27:136",
                        "nodeType": "YulVariableDeclaration",
                        "src": "7363:27:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "_1",
                              "nativeSrc": "7383:2:136",
                              "nodeType": "YulIdentifier",
                              "src": "7383:2:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "7387:2:136",
                              "nodeType": "YulLiteral",
                              "src": "7387:2:136",
                              "type": "",
                              "value": "96"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "7379:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "7379:3:136"
                          },
                          "nativeSrc": "7379:11:136",
                          "nodeType": "YulFunctionCall",
                          "src": "7379:11:136"
                        },
                        "variables": [
                          {
                            "name": "srcEnd_1",
                            "nativeSrc": "7367:8:136",
                            "nodeType": "YulTypedName",
                            "src": "7367:8:136",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "body": {
                          "nativeSrc": "7424:16:136",
                          "nodeType": "YulBlock",
                          "src": "7424:16:136",
                          "statements": [
                            {
                              "expression": {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "7433:1:136",
                                    "nodeType": "YulLiteral",
                                    "src": "7433:1:136",
                                    "type": "",
                                    "value": "0"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "7436:1:136",
                                    "nodeType": "YulLiteral",
                                    "src": "7436:1:136",
                                    "type": "",
                                    "value": "0"
                                  }
                                ],
                                "functionName": {
                                  "name": "revert",
                                  "nativeSrc": "7426:6:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "7426:6:136"
                                },
                                "nativeSrc": "7426:12:136",
                                "nodeType": "YulFunctionCall",
                                "src": "7426:12:136"
                              },
                              "nativeSrc": "7426:12:136",
                              "nodeType": "YulExpressionStatement",
                              "src": "7426:12:136"
                            }
                          ]
                        },
                        "condition": {
                          "arguments": [
                            {
                              "name": "srcEnd_1",
                              "nativeSrc": "7409:8:136",
                              "nodeType": "YulIdentifier",
                              "src": "7409:8:136"
                            },
                            {
                              "name": "end",
                              "nativeSrc": "7419:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "7419:3:136"
                            }
                          ],
                          "functionName": {
                            "name": "gt",
                            "nativeSrc": "7406:2:136",
                            "nodeType": "YulIdentifier",
                            "src": "7406:2:136"
                          },
                          "nativeSrc": "7406:17:136",
                          "nodeType": "YulFunctionCall",
                          "src": "7406:17:136"
                        },
                        "nativeSrc": "7403:37:136",
                        "nodeType": "YulIf",
                        "src": "7403:37:136"
                      },
                      {
                        "nativeSrc": "7453:26:136",
                        "nodeType": "YulVariableDeclaration",
                        "src": "7453:26:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "_1",
                              "nativeSrc": "7470:2:136",
                              "nodeType": "YulIdentifier",
                              "src": "7470:2:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "7474:4:136",
                              "nodeType": "YulLiteral",
                              "src": "7474:4:136",
                              "type": "",
                              "value": "0x20"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "7466:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "7466:3:136"
                          },
                          "nativeSrc": "7466:13:136",
                          "nodeType": "YulFunctionCall",
                          "src": "7466:13:136"
                        },
                        "variables": [
                          {
                            "name": "src_1",
                            "nativeSrc": "7457:5:136",
                            "nodeType": "YulTypedName",
                            "src": "7457:5:136",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "body": {
                          "nativeSrc": "7562:276:136",
                          "nodeType": "YulBlock",
                          "src": "7562:276:136",
                          "statements": [
                            {
                              "nativeSrc": "7580:40:136",
                              "nodeType": "YulVariableDeclaration",
                              "src": "7580:40:136",
                              "value": {
                                "arguments": [
                                  {
                                    "name": "src_1",
                                    "nativeSrc": "7614:5:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "7614:5:136"
                                  }
                                ],
                                "functionName": {
                                  "name": "calldataload",
                                  "nativeSrc": "7601:12:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "7601:12:136"
                                },
                                "nativeSrc": "7601:19:136",
                                "nodeType": "YulFunctionCall",
                                "src": "7601:19:136"
                              },
                              "variables": [
                                {
                                  "name": "innerOffset_1",
                                  "nativeSrc": "7584:13:136",
                                  "nodeType": "YulTypedName",
                                  "src": "7584:13:136",
                                  "type": ""
                                }
                              ]
                            },
                            {
                              "body": {
                                "nativeSrc": "7678:16:136",
                                "nodeType": "YulBlock",
                                "src": "7678:16:136",
                                "statements": [
                                  {
                                    "expression": {
                                      "arguments": [
                                        {
                                          "kind": "number",
                                          "nativeSrc": "7687:1:136",
                                          "nodeType": "YulLiteral",
                                          "src": "7687:1:136",
                                          "type": "",
                                          "value": "0"
                                        },
                                        {
                                          "kind": "number",
                                          "nativeSrc": "7690:1:136",
                                          "nodeType": "YulLiteral",
                                          "src": "7690:1:136",
                                          "type": "",
                                          "value": "0"
                                        }
                                      ],
                                      "functionName": {
                                        "name": "revert",
                                        "nativeSrc": "7680:6:136",
                                        "nodeType": "YulIdentifier",
                                        "src": "7680:6:136"
                                      },
                                      "nativeSrc": "7680:12:136",
                                      "nodeType": "YulFunctionCall",
                                      "src": "7680:12:136"
                                    },
                                    "nativeSrc": "7680:12:136",
                                    "nodeType": "YulExpressionStatement",
                                    "src": "7680:12:136"
                                  }
                                ]
                              },
                              "condition": {
                                "arguments": [
                                  {
                                    "name": "innerOffset_1",
                                    "nativeSrc": "7643:13:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "7643:13:136"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "7658:18:136",
                                    "nodeType": "YulLiteral",
                                    "src": "7658:18:136",
                                    "type": "",
                                    "value": "0xffffffffffffffff"
                                  }
                                ],
                                "functionName": {
                                  "name": "gt",
                                  "nativeSrc": "7640:2:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "7640:2:136"
                                },
                                "nativeSrc": "7640:37:136",
                                "nodeType": "YulFunctionCall",
                                "src": "7640:37:136"
                              },
                              "nativeSrc": "7637:57:136",
                              "nodeType": "YulIf",
                              "src": "7637:57:136"
                            },
                            {
                              "expression": {
                                "arguments": [
                                  {
                                    "name": "dst_1",
                                    "nativeSrc": "7718:5:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "7718:5:136"
                                  },
                                  {
                                    "arguments": [
                                      {
                                        "arguments": [
                                          {
                                            "arguments": [
                                              {
                                                "name": "_1",
                                                "nativeSrc": "7750:2:136",
                                                "nodeType": "YulIdentifier",
                                                "src": "7750:2:136"
                                              },
                                              {
                                                "name": "innerOffset_1",
                                                "nativeSrc": "7754:13:136",
                                                "nodeType": "YulIdentifier",
                                                "src": "7754:13:136"
                                              }
                                            ],
                                            "functionName": {
                                              "name": "add",
                                              "nativeSrc": "7746:3:136",
                                              "nodeType": "YulIdentifier",
                                              "src": "7746:3:136"
                                            },
                                            "nativeSrc": "7746:22:136",
                                            "nodeType": "YulFunctionCall",
                                            "src": "7746:22:136"
                                          },
                                          {
                                            "kind": "number",
                                            "nativeSrc": "7770:4:136",
                                            "nodeType": "YulLiteral",
                                            "src": "7770:4:136",
                                            "type": "",
                                            "value": "0x20"
                                          }
                                        ],
                                        "functionName": {
                                          "name": "add",
                                          "nativeSrc": "7742:3:136",
                                          "nodeType": "YulIdentifier",
                                          "src": "7742:3:136"
                                        },
                                        "nativeSrc": "7742:33:136",
                                        "nodeType": "YulFunctionCall",
                                        "src": "7742:33:136"
                                      },
                                      {
                                        "name": "end",
                                        "nativeSrc": "7777:3:136",
                                        "nodeType": "YulIdentifier",
                                        "src": "7777:3:136"
                                      }
                                    ],
                                    "functionName": {
                                      "name": "abi_decode_bytes",
                                      "nativeSrc": "7725:16:136",
                                      "nodeType": "YulIdentifier",
                                      "src": "7725:16:136"
                                    },
                                    "nativeSrc": "7725:56:136",
                                    "nodeType": "YulFunctionCall",
                                    "src": "7725:56:136"
                                  }
                                ],
                                "functionName": {
                                  "name": "mstore",
                                  "nativeSrc": "7711:6:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "7711:6:136"
                                },
                                "nativeSrc": "7711:71:136",
                                "nodeType": "YulFunctionCall",
                                "src": "7711:71:136"
                              },
                              "nativeSrc": "7711:71:136",
                              "nodeType": "YulExpressionStatement",
                              "src": "7711:71:136"
                            },
                            {
                              "nativeSrc": "7799:25:136",
                              "nodeType": "YulAssignment",
                              "src": "7799:25:136",
                              "value": {
                                "arguments": [
                                  {
                                    "name": "dst_1",
                                    "nativeSrc": "7812:5:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "7812:5:136"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "7819:4:136",
                                    "nodeType": "YulLiteral",
                                    "src": "7819:4:136",
                                    "type": "",
                                    "value": "0x20"
                                  }
                                ],
                                "functionName": {
                                  "name": "add",
                                  "nativeSrc": "7808:3:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "7808:3:136"
                                },
                                "nativeSrc": "7808:16:136",
                                "nodeType": "YulFunctionCall",
                                "src": "7808:16:136"
                              },
                              "variableNames": [
                                {
                                  "name": "dst_1",
                                  "nativeSrc": "7799:5:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "7799:5:136"
                                }
                              ]
                            }
                          ]
                        },
                        "condition": {
                          "arguments": [
                            {
                              "name": "src_1",
                              "nativeSrc": "7503:5:136",
                              "nodeType": "YulIdentifier",
                              "src": "7503:5:136"
                            },
                            {
                              "name": "srcEnd_1",
                              "nativeSrc": "7510:8:136",
                              "nodeType": "YulIdentifier",
                              "src": "7510:8:136"
                            }
                          ],
                          "functionName": {
                            "name": "lt",
                            "nativeSrc": "7500:2:136",
                            "nodeType": "YulIdentifier",
                            "src": "7500:2:136"
                          },
                          "nativeSrc": "7500:19:136",
                          "nodeType": "YulFunctionCall",
                          "src": "7500:19:136"
                        },
                        "nativeSrc": "7492:346:136",
                        "nodeType": "YulForLoop",
                        "post": {
                          "nativeSrc": "7520:29:136",
                          "nodeType": "YulBlock",
                          "src": "7520:29:136",
                          "statements": [
                            {
                              "nativeSrc": "7522:25:136",
                              "nodeType": "YulAssignment",
                              "src": "7522:25:136",
                              "value": {
                                "arguments": [
                                  {
                                    "name": "src_1",
                                    "nativeSrc": "7535:5:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "7535:5:136"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "7542:4:136",
                                    "nodeType": "YulLiteral",
                                    "src": "7542:4:136",
                                    "type": "",
                                    "value": "0x20"
                                  }
                                ],
                                "functionName": {
                                  "name": "add",
                                  "nativeSrc": "7531:3:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "7531:3:136"
                                },
                                "nativeSrc": "7531:16:136",
                                "nodeType": "YulFunctionCall",
                                "src": "7531:16:136"
                              },
                              "variableNames": [
                                {
                                  "name": "src_1",
                                  "nativeSrc": "7522:5:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "7522:5:136"
                                }
                              ]
                            }
                          ]
                        },
                        "pre": {
                          "nativeSrc": "7496:3:136",
                          "nodeType": "YulBlock",
                          "src": "7496:3:136",
                          "statements": []
                        },
                        "src": "7492:346:136"
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "name": "dst",
                              "nativeSrc": "7858:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "7858:3:136"
                            },
                            {
                              "name": "array_2",
                              "nativeSrc": "7863:7:136",
                              "nodeType": "YulIdentifier",
                              "src": "7863:7:136"
                            }
                          ],
                          "functionName": {
                            "name": "mstore",
                            "nativeSrc": "7851:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "7851:6:136"
                          },
                          "nativeSrc": "7851:20:136",
                          "nodeType": "YulFunctionCall",
                          "src": "7851:20:136"
                        },
                        "nativeSrc": "7851:20:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "7851:20:136"
                      },
                      {
                        "nativeSrc": "7884:21:136",
                        "nodeType": "YulAssignment",
                        "src": "7884:21:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "dst",
                              "nativeSrc": "7895:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "7895:3:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "7900:4:136",
                              "nodeType": "YulLiteral",
                              "src": "7900:4:136",
                              "type": "",
                              "value": "0x20"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "7891:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "7891:3:136"
                          },
                          "nativeSrc": "7891:14:136",
                          "nodeType": "YulFunctionCall",
                          "src": "7891:14:136"
                        },
                        "variableNames": [
                          {
                            "name": "dst",
                            "nativeSrc": "7884:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "7884:3:136"
                          }
                        ]
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "src",
                        "nativeSrc": "6995:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "6995:3:136"
                      },
                      {
                        "name": "srcEnd",
                        "nativeSrc": "7000:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "7000:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "lt",
                      "nativeSrc": "6992:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "6992:2:136"
                    },
                    "nativeSrc": "6992:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "6992:15:136"
                  },
                  "nativeSrc": "6984:931:136",
                  "nodeType": "YulForLoop",
                  "post": {
                    "nativeSrc": "7008:25:136",
                    "nodeType": "YulBlock",
                    "src": "7008:25:136",
                    "statements": [
                      {
                        "nativeSrc": "7010:21:136",
                        "nodeType": "YulAssignment",
                        "src": "7010:21:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "src",
                              "nativeSrc": "7021:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "7021:3:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "7026:4:136",
                              "nodeType": "YulLiteral",
                              "src": "7026:4:136",
                              "type": "",
                              "value": "0x20"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "7017:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "7017:3:136"
                          },
                          "nativeSrc": "7017:14:136",
                          "nodeType": "YulFunctionCall",
                          "src": "7017:14:136"
                        },
                        "variableNames": [
                          {
                            "name": "src",
                            "nativeSrc": "7010:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "7010:3:136"
                          }
                        ]
                      }
                    ]
                  },
                  "pre": {
                    "nativeSrc": "6988:3:136",
                    "nodeType": "YulBlock",
                    "src": "6988:3:136",
                    "statements": []
                  },
                  "src": "6984:931:136"
                },
                {
                  "nativeSrc": "7924:16:136",
                  "nodeType": "YulAssignment",
                  "src": "7924:16:136",
                  "value": {
                    "name": "array_1",
                    "nativeSrc": "7933:7:136",
                    "nodeType": "YulIdentifier",
                    "src": "7933:7:136"
                  },
                  "variableNames": [
                    {
                      "name": "array",
                      "nativeSrc": "7924:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "7924:5:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_array_array_string_dyn",
            "nativeSrc": "6476:1470:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "offset",
                "nativeSrc": "6519:6:136",
                "nodeType": "YulTypedName",
                "src": "6519:6:136",
                "type": ""
              },
              {
                "name": "end",
                "nativeSrc": "6527:3:136",
                "nodeType": "YulTypedName",
                "src": "6527:3:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "array",
                "nativeSrc": "6535:5:136",
                "nodeType": "YulTypedName",
                "src": "6535:5:136",
                "type": ""
              }
            ],
            "src": "6476:1470:136"
          },
          {
            "body": {
              "nativeSrc": "8022:1139:136",
              "nodeType": "YulBlock",
              "src": "8022:1139:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "8066:16:136",
                    "nodeType": "YulBlock",
                    "src": "8066:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "8075:1:136",
                              "nodeType": "YulLiteral",
                              "src": "8075:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "8078:1:136",
                              "nodeType": "YulLiteral",
                              "src": "8078:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "8068:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "8068:6:136"
                          },
                          "nativeSrc": "8068:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "8068:12:136"
                        },
                        "nativeSrc": "8068:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "8068:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "end",
                            "nativeSrc": "8043:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "8043:3:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "8048:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "8048:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "8039:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "8039:3:136"
                        },
                        "nativeSrc": "8039:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "8039:19:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "8060:4:136",
                        "nodeType": "YulLiteral",
                        "src": "8060:4:136",
                        "type": "",
                        "value": "0xe0"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "8035:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "8035:3:136"
                    },
                    "nativeSrc": "8035:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "8035:30:136"
                  },
                  "nativeSrc": "8032:50:136",
                  "nodeType": "YulIf",
                  "src": "8032:50:136"
                },
                {
                  "nativeSrc": "8091:31:136",
                  "nodeType": "YulAssignment",
                  "src": "8091:31:136",
                  "value": {
                    "arguments": [],
                    "functionName": {
                      "name": "allocate_memory_4563",
                      "nativeSrc": "8100:20:136",
                      "nodeType": "YulIdentifier",
                      "src": "8100:20:136"
                    },
                    "nativeSrc": "8100:22:136",
                    "nodeType": "YulFunctionCall",
                    "src": "8100:22:136"
                  },
                  "variableNames": [
                    {
                      "name": "value",
                      "nativeSrc": "8091:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "8091:5:136"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "8138:5:136",
                        "nodeType": "YulIdentifier",
                        "src": "8138:5:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "8162:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "8162:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_decode_uint8",
                          "nativeSrc": "8145:16:136",
                          "nodeType": "YulIdentifier",
                          "src": "8145:16:136"
                        },
                        "nativeSrc": "8145:27:136",
                        "nodeType": "YulFunctionCall",
                        "src": "8145:27:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "8131:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "8131:6:136"
                    },
                    "nativeSrc": "8131:42:136",
                    "nodeType": "YulFunctionCall",
                    "src": "8131:42:136"
                  },
                  "nativeSrc": "8131:42:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "8131:42:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "8193:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "8193:5:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "8200:2:136",
                            "nodeType": "YulLiteral",
                            "src": "8200:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "8189:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "8189:3:136"
                        },
                        "nativeSrc": "8189:14:136",
                        "nodeType": "YulFunctionCall",
                        "src": "8189:14:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "headStart",
                                "nativeSrc": "8247:9:136",
                                "nodeType": "YulIdentifier",
                                "src": "8247:9:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "8258:2:136",
                                "nodeType": "YulLiteral",
                                "src": "8258:2:136",
                                "type": "",
                                "value": "32"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "8243:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "8243:3:136"
                            },
                            "nativeSrc": "8243:18:136",
                            "nodeType": "YulFunctionCall",
                            "src": "8243:18:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_decode_enum_RadonRetrievalMethods",
                          "nativeSrc": "8205:37:136",
                          "nodeType": "YulIdentifier",
                          "src": "8205:37:136"
                        },
                        "nativeSrc": "8205:57:136",
                        "nodeType": "YulFunctionCall",
                        "src": "8205:57:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "8182:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "8182:6:136"
                    },
                    "nativeSrc": "8182:81:136",
                    "nodeType": "YulFunctionCall",
                    "src": "8182:81:136"
                  },
                  "nativeSrc": "8182:81:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "8182:81:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "8283:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "8283:5:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "8290:2:136",
                            "nodeType": "YulLiteral",
                            "src": "8290:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "8279:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "8279:3:136"
                        },
                        "nativeSrc": "8279:14:136",
                        "nodeType": "YulFunctionCall",
                        "src": "8279:14:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "headStart",
                                "nativeSrc": "8330:9:136",
                                "nodeType": "YulIdentifier",
                                "src": "8330:9:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "8341:2:136",
                                "nodeType": "YulLiteral",
                                "src": "8341:2:136",
                                "type": "",
                                "value": "64"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "8326:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "8326:3:136"
                            },
                            "nativeSrc": "8326:18:136",
                            "nodeType": "YulFunctionCall",
                            "src": "8326:18:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_decode_enum_RadonDataTypes",
                          "nativeSrc": "8295:30:136",
                          "nodeType": "YulIdentifier",
                          "src": "8295:30:136"
                        },
                        "nativeSrc": "8295:50:136",
                        "nodeType": "YulFunctionCall",
                        "src": "8295:50:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "8272:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "8272:6:136"
                    },
                    "nativeSrc": "8272:74:136",
                    "nodeType": "YulFunctionCall",
                    "src": "8272:74:136"
                  },
                  "nativeSrc": "8272:74:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "8272:74:136"
                },
                {
                  "nativeSrc": "8355:46:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "8355:46:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "8386:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "8386:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "8397:2:136",
                            "nodeType": "YulLiteral",
                            "src": "8397:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "8382:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "8382:3:136"
                        },
                        "nativeSrc": "8382:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "8382:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "8369:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "8369:12:136"
                    },
                    "nativeSrc": "8369:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "8369:32:136"
                  },
                  "variables": [
                    {
                      "name": "offset",
                      "nativeSrc": "8359:6:136",
                      "nodeType": "YulTypedName",
                      "src": "8359:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "8444:16:136",
                    "nodeType": "YulBlock",
                    "src": "8444:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "8453:1:136",
                              "nodeType": "YulLiteral",
                              "src": "8453:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "8456:1:136",
                              "nodeType": "YulLiteral",
                              "src": "8456:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "8446:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "8446:6:136"
                          },
                          "nativeSrc": "8446:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "8446:12:136"
                        },
                        "nativeSrc": "8446:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "8446:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "8416:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "8416:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "8424:18:136",
                        "nodeType": "YulLiteral",
                        "src": "8424:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "8413:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "8413:2:136"
                    },
                    "nativeSrc": "8413:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "8413:30:136"
                  },
                  "nativeSrc": "8410:50:136",
                  "nodeType": "YulIf",
                  "src": "8410:50:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "8480:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "8480:5:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "8487:2:136",
                            "nodeType": "YulLiteral",
                            "src": "8487:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "8476:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "8476:3:136"
                        },
                        "nativeSrc": "8476:14:136",
                        "nodeType": "YulFunctionCall",
                        "src": "8476:14:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "headStart",
                                "nativeSrc": "8513:9:136",
                                "nodeType": "YulIdentifier",
                                "src": "8513:9:136"
                              },
                              {
                                "name": "offset",
                                "nativeSrc": "8524:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "8524:6:136"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "8509:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "8509:3:136"
                            },
                            "nativeSrc": "8509:22:136",
                            "nodeType": "YulFunctionCall",
                            "src": "8509:22:136"
                          },
                          {
                            "name": "end",
                            "nativeSrc": "8533:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "8533:3:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_decode_bytes",
                          "nativeSrc": "8492:16:136",
                          "nodeType": "YulIdentifier",
                          "src": "8492:16:136"
                        },
                        "nativeSrc": "8492:45:136",
                        "nodeType": "YulFunctionCall",
                        "src": "8492:45:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "8469:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "8469:6:136"
                    },
                    "nativeSrc": "8469:69:136",
                    "nodeType": "YulFunctionCall",
                    "src": "8469:69:136"
                  },
                  "nativeSrc": "8469:69:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "8469:69:136"
                },
                {
                  "nativeSrc": "8547:49:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "8547:49:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "8580:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "8580:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "8591:3:136",
                            "nodeType": "YulLiteral",
                            "src": "8591:3:136",
                            "type": "",
                            "value": "128"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "8576:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "8576:3:136"
                        },
                        "nativeSrc": "8576:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "8576:19:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "8563:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "8563:12:136"
                    },
                    "nativeSrc": "8563:33:136",
                    "nodeType": "YulFunctionCall",
                    "src": "8563:33:136"
                  },
                  "variables": [
                    {
                      "name": "offset_1",
                      "nativeSrc": "8551:8:136",
                      "nodeType": "YulTypedName",
                      "src": "8551:8:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "8641:16:136",
                    "nodeType": "YulBlock",
                    "src": "8641:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "8650:1:136",
                              "nodeType": "YulLiteral",
                              "src": "8650:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "8653:1:136",
                              "nodeType": "YulLiteral",
                              "src": "8653:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "8643:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "8643:6:136"
                          },
                          "nativeSrc": "8643:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "8643:12:136"
                        },
                        "nativeSrc": "8643:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "8643:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_1",
                        "nativeSrc": "8611:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "8611:8:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "8621:18:136",
                        "nodeType": "YulLiteral",
                        "src": "8621:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "8608:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "8608:2:136"
                    },
                    "nativeSrc": "8608:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "8608:32:136"
                  },
                  "nativeSrc": "8605:52:136",
                  "nodeType": "YulIf",
                  "src": "8605:52:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "8677:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "8677:5:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "8684:3:136",
                            "nodeType": "YulLiteral",
                            "src": "8684:3:136",
                            "type": "",
                            "value": "128"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "8673:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "8673:3:136"
                        },
                        "nativeSrc": "8673:15:136",
                        "nodeType": "YulFunctionCall",
                        "src": "8673:15:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "headStart",
                                "nativeSrc": "8711:9:136",
                                "nodeType": "YulIdentifier",
                                "src": "8711:9:136"
                              },
                              {
                                "name": "offset_1",
                                "nativeSrc": "8722:8:136",
                                "nodeType": "YulIdentifier",
                                "src": "8722:8:136"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "8707:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "8707:3:136"
                            },
                            "nativeSrc": "8707:24:136",
                            "nodeType": "YulFunctionCall",
                            "src": "8707:24:136"
                          },
                          {
                            "name": "end",
                            "nativeSrc": "8733:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "8733:3:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_decode_bytes",
                          "nativeSrc": "8690:16:136",
                          "nodeType": "YulIdentifier",
                          "src": "8690:16:136"
                        },
                        "nativeSrc": "8690:47:136",
                        "nodeType": "YulFunctionCall",
                        "src": "8690:47:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "8666:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "8666:6:136"
                    },
                    "nativeSrc": "8666:72:136",
                    "nodeType": "YulFunctionCall",
                    "src": "8666:72:136"
                  },
                  "nativeSrc": "8666:72:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "8666:72:136"
                },
                {
                  "nativeSrc": "8747:49:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "8747:49:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "8780:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "8780:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "8791:3:136",
                            "nodeType": "YulLiteral",
                            "src": "8791:3:136",
                            "type": "",
                            "value": "160"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "8776:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "8776:3:136"
                        },
                        "nativeSrc": "8776:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "8776:19:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "8763:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "8763:12:136"
                    },
                    "nativeSrc": "8763:33:136",
                    "nodeType": "YulFunctionCall",
                    "src": "8763:33:136"
                  },
                  "variables": [
                    {
                      "name": "offset_2",
                      "nativeSrc": "8751:8:136",
                      "nodeType": "YulTypedName",
                      "src": "8751:8:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "8841:16:136",
                    "nodeType": "YulBlock",
                    "src": "8841:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "8850:1:136",
                              "nodeType": "YulLiteral",
                              "src": "8850:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "8853:1:136",
                              "nodeType": "YulLiteral",
                              "src": "8853:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "8843:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "8843:6:136"
                          },
                          "nativeSrc": "8843:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "8843:12:136"
                        },
                        "nativeSrc": "8843:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "8843:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_2",
                        "nativeSrc": "8811:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "8811:8:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "8821:18:136",
                        "nodeType": "YulLiteral",
                        "src": "8821:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "8808:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "8808:2:136"
                    },
                    "nativeSrc": "8808:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "8808:32:136"
                  },
                  "nativeSrc": "8805:52:136",
                  "nodeType": "YulIf",
                  "src": "8805:52:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "8877:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "8877:5:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "8884:3:136",
                            "nodeType": "YulLiteral",
                            "src": "8884:3:136",
                            "type": "",
                            "value": "160"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "8873:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "8873:3:136"
                        },
                        "nativeSrc": "8873:15:136",
                        "nodeType": "YulFunctionCall",
                        "src": "8873:15:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "headStart",
                                "nativeSrc": "8928:9:136",
                                "nodeType": "YulIdentifier",
                                "src": "8928:9:136"
                              },
                              {
                                "name": "offset_2",
                                "nativeSrc": "8939:8:136",
                                "nodeType": "YulIdentifier",
                                "src": "8939:8:136"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "8924:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "8924:3:136"
                            },
                            "nativeSrc": "8924:24:136",
                            "nodeType": "YulFunctionCall",
                            "src": "8924:24:136"
                          },
                          {
                            "name": "end",
                            "nativeSrc": "8950:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "8950:3:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_decode_array_array_string_dyn",
                          "nativeSrc": "8890:33:136",
                          "nodeType": "YulIdentifier",
                          "src": "8890:33:136"
                        },
                        "nativeSrc": "8890:64:136",
                        "nodeType": "YulFunctionCall",
                        "src": "8890:64:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "8866:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "8866:6:136"
                    },
                    "nativeSrc": "8866:89:136",
                    "nodeType": "YulFunctionCall",
                    "src": "8866:89:136"
                  },
                  "nativeSrc": "8866:89:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "8866:89:136"
                },
                {
                  "nativeSrc": "8964:49:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "8964:49:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "8997:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "8997:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "9008:3:136",
                            "nodeType": "YulLiteral",
                            "src": "9008:3:136",
                            "type": "",
                            "value": "192"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "8993:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "8993:3:136"
                        },
                        "nativeSrc": "8993:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "8993:19:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "8980:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "8980:12:136"
                    },
                    "nativeSrc": "8980:33:136",
                    "nodeType": "YulFunctionCall",
                    "src": "8980:33:136"
                  },
                  "variables": [
                    {
                      "name": "offset_3",
                      "nativeSrc": "8968:8:136",
                      "nodeType": "YulTypedName",
                      "src": "8968:8:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "9058:16:136",
                    "nodeType": "YulBlock",
                    "src": "9058:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "9067:1:136",
                              "nodeType": "YulLiteral",
                              "src": "9067:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "9070:1:136",
                              "nodeType": "YulLiteral",
                              "src": "9070:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "9060:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "9060:6:136"
                          },
                          "nativeSrc": "9060:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "9060:12:136"
                        },
                        "nativeSrc": "9060:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "9060:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_3",
                        "nativeSrc": "9028:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "9028:8:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "9038:18:136",
                        "nodeType": "YulLiteral",
                        "src": "9038:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "9025:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "9025:2:136"
                    },
                    "nativeSrc": "9025:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "9025:32:136"
                  },
                  "nativeSrc": "9022:52:136",
                  "nodeType": "YulIf",
                  "src": "9022:52:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "9094:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "9094:5:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "9101:3:136",
                            "nodeType": "YulLiteral",
                            "src": "9101:3:136",
                            "type": "",
                            "value": "192"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "9090:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "9090:3:136"
                        },
                        "nativeSrc": "9090:15:136",
                        "nodeType": "YulFunctionCall",
                        "src": "9090:15:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "headStart",
                                "nativeSrc": "9128:9:136",
                                "nodeType": "YulIdentifier",
                                "src": "9128:9:136"
                              },
                              {
                                "name": "offset_3",
                                "nativeSrc": "9139:8:136",
                                "nodeType": "YulIdentifier",
                                "src": "9139:8:136"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "9124:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "9124:3:136"
                            },
                            "nativeSrc": "9124:24:136",
                            "nodeType": "YulFunctionCall",
                            "src": "9124:24:136"
                          },
                          {
                            "name": "end",
                            "nativeSrc": "9150:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "9150:3:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_decode_bytes",
                          "nativeSrc": "9107:16:136",
                          "nodeType": "YulIdentifier",
                          "src": "9107:16:136"
                        },
                        "nativeSrc": "9107:47:136",
                        "nodeType": "YulFunctionCall",
                        "src": "9107:47:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "9083:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "9083:6:136"
                    },
                    "nativeSrc": "9083:72:136",
                    "nodeType": "YulFunctionCall",
                    "src": "9083:72:136"
                  },
                  "nativeSrc": "9083:72:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "9083:72:136"
                }
              ]
            },
            "name": "abi_decode_struct_RadonRetrieval",
            "nativeSrc": "7951:1210:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "7993:9:136",
                "nodeType": "YulTypedName",
                "src": "7993:9:136",
                "type": ""
              },
              {
                "name": "end",
                "nativeSrc": "8004:3:136",
                "nodeType": "YulTypedName",
                "src": "8004:3:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value",
                "nativeSrc": "8012:5:136",
                "nodeType": "YulTypedName",
                "src": "8012:5:136",
                "type": ""
              }
            ],
            "src": "7951:1210:136"
          },
          {
            "body": {
              "nativeSrc": "9311:500:136",
              "nodeType": "YulBlock",
              "src": "9311:500:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "9357:16:136",
                    "nodeType": "YulBlock",
                    "src": "9357:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "9366:1:136",
                              "nodeType": "YulLiteral",
                              "src": "9366:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "9369:1:136",
                              "nodeType": "YulLiteral",
                              "src": "9369:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "9359:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "9359:6:136"
                          },
                          "nativeSrc": "9359:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "9359:12:136"
                        },
                        "nativeSrc": "9359:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "9359:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "9332:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "9332:7:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "9341:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "9341:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "9328:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "9328:3:136"
                        },
                        "nativeSrc": "9328:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "9328:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "9353:2:136",
                        "nodeType": "YulLiteral",
                        "src": "9353:2:136",
                        "type": "",
                        "value": "96"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "9324:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "9324:3:136"
                    },
                    "nativeSrc": "9324:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "9324:32:136"
                  },
                  "nativeSrc": "9321:52:136",
                  "nodeType": "YulIf",
                  "src": "9321:52:136"
                },
                {
                  "nativeSrc": "9382:37:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "9382:37:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "9409:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "9409:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "9396:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "9396:12:136"
                    },
                    "nativeSrc": "9396:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "9396:23:136"
                  },
                  "variables": [
                    {
                      "name": "offset",
                      "nativeSrc": "9386:6:136",
                      "nodeType": "YulTypedName",
                      "src": "9386:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "9462:16:136",
                    "nodeType": "YulBlock",
                    "src": "9462:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "9471:1:136",
                              "nodeType": "YulLiteral",
                              "src": "9471:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "9474:1:136",
                              "nodeType": "YulLiteral",
                              "src": "9474:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "9464:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "9464:6:136"
                          },
                          "nativeSrc": "9464:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "9464:12:136"
                        },
                        "nativeSrc": "9464:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "9464:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "9434:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "9434:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "9442:18:136",
                        "nodeType": "YulLiteral",
                        "src": "9442:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "9431:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "9431:2:136"
                    },
                    "nativeSrc": "9431:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "9431:30:136"
                  },
                  "nativeSrc": "9428:50:136",
                  "nodeType": "YulIf",
                  "src": "9428:50:136"
                },
                {
                  "nativeSrc": "9487:75:136",
                  "nodeType": "YulAssignment",
                  "src": "9487:75:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "9534:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "9534:9:136"
                          },
                          {
                            "name": "offset",
                            "nativeSrc": "9545:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "9545:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "9530:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "9530:3:136"
                        },
                        "nativeSrc": "9530:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "9530:22:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "9554:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "9554:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_struct_RadonRetrieval",
                      "nativeSrc": "9497:32:136",
                      "nodeType": "YulIdentifier",
                      "src": "9497:32:136"
                    },
                    "nativeSrc": "9497:65:136",
                    "nodeType": "YulFunctionCall",
                    "src": "9497:65:136"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "9487:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "9487:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "9571:46:136",
                  "nodeType": "YulAssignment",
                  "src": "9571:46:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "9602:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "9602:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "9613:2:136",
                            "nodeType": "YulLiteral",
                            "src": "9613:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "9598:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "9598:3:136"
                        },
                        "nativeSrc": "9598:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "9598:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_uint8",
                      "nativeSrc": "9581:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "9581:16:136"
                    },
                    "nativeSrc": "9581:36:136",
                    "nodeType": "YulFunctionCall",
                    "src": "9581:36:136"
                  },
                  "variableNames": [
                    {
                      "name": "value1",
                      "nativeSrc": "9571:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "9571:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "9626:48:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "9626:48:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "9659:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "9659:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "9670:2:136",
                            "nodeType": "YulLiteral",
                            "src": "9670:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "9655:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "9655:3:136"
                        },
                        "nativeSrc": "9655:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "9655:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "9642:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "9642:12:136"
                    },
                    "nativeSrc": "9642:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "9642:32:136"
                  },
                  "variables": [
                    {
                      "name": "offset_1",
                      "nativeSrc": "9630:8:136",
                      "nodeType": "YulTypedName",
                      "src": "9630:8:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "9719:16:136",
                    "nodeType": "YulBlock",
                    "src": "9719:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "9728:1:136",
                              "nodeType": "YulLiteral",
                              "src": "9728:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "9731:1:136",
                              "nodeType": "YulLiteral",
                              "src": "9731:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "9721:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "9721:6:136"
                          },
                          "nativeSrc": "9721:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "9721:12:136"
                        },
                        "nativeSrc": "9721:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "9721:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_1",
                        "nativeSrc": "9689:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "9689:8:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "9699:18:136",
                        "nodeType": "YulLiteral",
                        "src": "9699:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "9686:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "9686:2:136"
                    },
                    "nativeSrc": "9686:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "9686:32:136"
                  },
                  "nativeSrc": "9683:52:136",
                  "nodeType": "YulIf",
                  "src": "9683:52:136"
                },
                {
                  "nativeSrc": "9744:61:136",
                  "nodeType": "YulAssignment",
                  "src": "9744:61:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "9775:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "9775:9:136"
                          },
                          {
                            "name": "offset_1",
                            "nativeSrc": "9786:8:136",
                            "nodeType": "YulIdentifier",
                            "src": "9786:8:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "9771:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "9771:3:136"
                        },
                        "nativeSrc": "9771:24:136",
                        "nodeType": "YulFunctionCall",
                        "src": "9771:24:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "9797:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "9797:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_bytes",
                      "nativeSrc": "9754:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "9754:16:136"
                    },
                    "nativeSrc": "9754:51:136",
                    "nodeType": "YulFunctionCall",
                    "src": "9754:51:136"
                  },
                  "variableNames": [
                    {
                      "name": "value2",
                      "nativeSrc": "9744:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "9744:6:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_struct$_RadonRetrieval_$37795_memory_ptrt_uint8t_string_memory_ptr",
            "nativeSrc": "9166:645:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "9261:9:136",
                "nodeType": "YulTypedName",
                "src": "9261:9:136",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "9272:7:136",
                "nodeType": "YulTypedName",
                "src": "9272:7:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "9284:6:136",
                "nodeType": "YulTypedName",
                "src": "9284:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "9292:6:136",
                "nodeType": "YulTypedName",
                "src": "9292:6:136",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "9300:6:136",
                "nodeType": "YulTypedName",
                "src": "9300:6:136",
                "type": ""
              }
            ],
            "src": "9166:645:136"
          },
          {
            "body": {
              "nativeSrc": "9848:95:136",
              "nodeType": "YulBlock",
              "src": "9848:95:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "9865:1:136",
                        "nodeType": "YulLiteral",
                        "src": "9865:1:136",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "9872:3:136",
                            "nodeType": "YulLiteral",
                            "src": "9872:3:136",
                            "type": "",
                            "value": "224"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "9877:10:136",
                            "nodeType": "YulLiteral",
                            "src": "9877:10:136",
                            "type": "",
                            "value": "0x4e487b71"
                          }
                        ],
                        "functionName": {
                          "name": "shl",
                          "nativeSrc": "9868:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "9868:3:136"
                        },
                        "nativeSrc": "9868:20:136",
                        "nodeType": "YulFunctionCall",
                        "src": "9868:20:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "9858:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "9858:6:136"
                    },
                    "nativeSrc": "9858:31:136",
                    "nodeType": "YulFunctionCall",
                    "src": "9858:31:136"
                  },
                  "nativeSrc": "9858:31:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "9858:31:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "9905:1:136",
                        "nodeType": "YulLiteral",
                        "src": "9905:1:136",
                        "type": "",
                        "value": "4"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "9908:4:136",
                        "nodeType": "YulLiteral",
                        "src": "9908:4:136",
                        "type": "",
                        "value": "0x21"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "9898:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "9898:6:136"
                    },
                    "nativeSrc": "9898:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "9898:15:136"
                  },
                  "nativeSrc": "9898:15:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "9898:15:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "9929:1:136",
                        "nodeType": "YulLiteral",
                        "src": "9929:1:136",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "9932:4:136",
                        "nodeType": "YulLiteral",
                        "src": "9932:4:136",
                        "type": "",
                        "value": "0x24"
                      }
                    ],
                    "functionName": {
                      "name": "revert",
                      "nativeSrc": "9922:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "9922:6:136"
                    },
                    "nativeSrc": "9922:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "9922:15:136"
                  },
                  "nativeSrc": "9922:15:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "9922:15:136"
                }
              ]
            },
            "name": "panic_error_0x21",
            "nativeSrc": "9816:127:136",
            "nodeType": "YulFunctionDefinition",
            "src": "9816:127:136"
          },
          {
            "body": {
              "nativeSrc": "10011:89:136",
              "nodeType": "YulBlock",
              "src": "10011:89:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "10045:22:136",
                    "nodeType": "YulBlock",
                    "src": "10045:22:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x21",
                            "nativeSrc": "10047:16:136",
                            "nodeType": "YulIdentifier",
                            "src": "10047:16:136"
                          },
                          "nativeSrc": "10047:18:136",
                          "nodeType": "YulFunctionCall",
                          "src": "10047:18:136"
                        },
                        "nativeSrc": "10047:18:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "10047:18:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "10034:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "10034:5:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "10041:1:136",
                            "nodeType": "YulLiteral",
                            "src": "10041:1:136",
                            "type": "",
                            "value": "5"
                          }
                        ],
                        "functionName": {
                          "name": "lt",
                          "nativeSrc": "10031:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "10031:2:136"
                        },
                        "nativeSrc": "10031:12:136",
                        "nodeType": "YulFunctionCall",
                        "src": "10031:12:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "10024:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "10024:6:136"
                    },
                    "nativeSrc": "10024:20:136",
                    "nodeType": "YulFunctionCall",
                    "src": "10024:20:136"
                  },
                  "nativeSrc": "10021:46:136",
                  "nodeType": "YulIf",
                  "src": "10021:46:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "10083:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "10083:3:136"
                      },
                      {
                        "name": "value",
                        "nativeSrc": "10088:5:136",
                        "nodeType": "YulIdentifier",
                        "src": "10088:5:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "10076:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "10076:6:136"
                    },
                    "nativeSrc": "10076:18:136",
                    "nodeType": "YulFunctionCall",
                    "src": "10076:18:136"
                  },
                  "nativeSrc": "10076:18:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "10076:18:136"
                }
              ]
            },
            "name": "abi_encode_enum_RadonRetrievalMethods",
            "nativeSrc": "9948:152:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "value",
                "nativeSrc": "9995:5:136",
                "nodeType": "YulTypedName",
                "src": "9995:5:136",
                "type": ""
              },
              {
                "name": "pos",
                "nativeSrc": "10002:3:136",
                "nodeType": "YulTypedName",
                "src": "10002:3:136",
                "type": ""
              }
            ],
            "src": "9948:152:136"
          },
          {
            "body": {
              "nativeSrc": "10161:90:136",
              "nodeType": "YulBlock",
              "src": "10161:90:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "10196:22:136",
                    "nodeType": "YulBlock",
                    "src": "10196:22:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x21",
                            "nativeSrc": "10198:16:136",
                            "nodeType": "YulIdentifier",
                            "src": "10198:16:136"
                          },
                          "nativeSrc": "10198:18:136",
                          "nodeType": "YulFunctionCall",
                          "src": "10198:18:136"
                        },
                        "nativeSrc": "10198:18:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "10198:18:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "10184:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "10184:5:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "10191:2:136",
                            "nodeType": "YulLiteral",
                            "src": "10191:2:136",
                            "type": "",
                            "value": "20"
                          }
                        ],
                        "functionName": {
                          "name": "lt",
                          "nativeSrc": "10181:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "10181:2:136"
                        },
                        "nativeSrc": "10181:13:136",
                        "nodeType": "YulFunctionCall",
                        "src": "10181:13:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "10174:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "10174:6:136"
                    },
                    "nativeSrc": "10174:21:136",
                    "nodeType": "YulFunctionCall",
                    "src": "10174:21:136"
                  },
                  "nativeSrc": "10171:47:136",
                  "nodeType": "YulIf",
                  "src": "10171:47:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "10234:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "10234:3:136"
                      },
                      {
                        "name": "value",
                        "nativeSrc": "10239:5:136",
                        "nodeType": "YulIdentifier",
                        "src": "10239:5:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "10227:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "10227:6:136"
                    },
                    "nativeSrc": "10227:18:136",
                    "nodeType": "YulFunctionCall",
                    "src": "10227:18:136"
                  },
                  "nativeSrc": "10227:18:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "10227:18:136"
                }
              ]
            },
            "name": "abi_encode_enum_RadonDataTypes",
            "nativeSrc": "10105:146:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "value",
                "nativeSrc": "10145:5:136",
                "nodeType": "YulTypedName",
                "src": "10145:5:136",
                "type": ""
              },
              {
                "name": "pos",
                "nativeSrc": "10152:3:136",
                "nodeType": "YulTypedName",
                "src": "10152:3:136",
                "type": ""
              }
            ],
            "src": "10105:146:136"
          },
          {
            "body": {
              "nativeSrc": "10322:967:136",
              "nodeType": "YulBlock",
              "src": "10322:967:136",
              "statements": [
                {
                  "nativeSrc": "10332:16:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "10332:16:136",
                  "value": {
                    "name": "pos",
                    "nativeSrc": "10345:3:136",
                    "nodeType": "YulIdentifier",
                    "src": "10345:3:136"
                  },
                  "variables": [
                    {
                      "name": "pos_1",
                      "nativeSrc": "10336:5:136",
                      "nodeType": "YulTypedName",
                      "src": "10336:5:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "10357:26:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "10357:26:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "10377:5:136",
                        "nodeType": "YulIdentifier",
                        "src": "10377:5:136"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "10371:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "10371:5:136"
                    },
                    "nativeSrc": "10371:12:136",
                    "nodeType": "YulFunctionCall",
                    "src": "10371:12:136"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "10361:6:136",
                      "nodeType": "YulTypedName",
                      "src": "10361:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "10399:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "10399:3:136"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "10404:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "10404:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "10392:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "10392:6:136"
                    },
                    "nativeSrc": "10392:19:136",
                    "nodeType": "YulFunctionCall",
                    "src": "10392:19:136"
                  },
                  "nativeSrc": "10392:19:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "10392:19:136"
                },
                {
                  "nativeSrc": "10420:21:136",
                  "nodeType": "YulAssignment",
                  "src": "10420:21:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "10431:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "10431:3:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "10436:4:136",
                        "nodeType": "YulLiteral",
                        "src": "10436:4:136",
                        "type": "",
                        "value": "0x20"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "10427:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "10427:3:136"
                    },
                    "nativeSrc": "10427:14:136",
                    "nodeType": "YulFunctionCall",
                    "src": "10427:14:136"
                  },
                  "variableNames": [
                    {
                      "name": "pos",
                      "nativeSrc": "10420:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "10420:3:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "10450:49:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "10450:49:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "pos_1",
                            "nativeSrc": "10470:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "10470:5:136"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "10481:1:136",
                                "nodeType": "YulLiteral",
                                "src": "10481:1:136",
                                "type": "",
                                "value": "5"
                              },
                              {
                                "name": "length",
                                "nativeSrc": "10484:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "10484:6:136"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "10477:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "10477:3:136"
                            },
                            "nativeSrc": "10477:14:136",
                            "nodeType": "YulFunctionCall",
                            "src": "10477:14:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "10466:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "10466:3:136"
                        },
                        "nativeSrc": "10466:26:136",
                        "nodeType": "YulFunctionCall",
                        "src": "10466:26:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "10494:4:136",
                        "nodeType": "YulLiteral",
                        "src": "10494:4:136",
                        "type": "",
                        "value": "0x20"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "10462:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "10462:3:136"
                    },
                    "nativeSrc": "10462:37:136",
                    "nodeType": "YulFunctionCall",
                    "src": "10462:37:136"
                  },
                  "variables": [
                    {
                      "name": "tail",
                      "nativeSrc": "10454:4:136",
                      "nodeType": "YulTypedName",
                      "src": "10454:4:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "10508:30:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "10508:30:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "10526:5:136",
                        "nodeType": "YulIdentifier",
                        "src": "10526:5:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "10533:4:136",
                        "nodeType": "YulLiteral",
                        "src": "10533:4:136",
                        "type": "",
                        "value": "0x20"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "10522:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "10522:3:136"
                    },
                    "nativeSrc": "10522:16:136",
                    "nodeType": "YulFunctionCall",
                    "src": "10522:16:136"
                  },
                  "variables": [
                    {
                      "name": "srcPtr",
                      "nativeSrc": "10512:6:136",
                      "nodeType": "YulTypedName",
                      "src": "10512:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "10547:10:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "10547:10:136",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "10556:1:136",
                    "nodeType": "YulLiteral",
                    "src": "10556:1:136",
                    "type": "",
                    "value": "0"
                  },
                  "variables": [
                    {
                      "name": "i",
                      "nativeSrc": "10551:1:136",
                      "nodeType": "YulTypedName",
                      "src": "10551:1:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "10615:648:136",
                    "nodeType": "YulBlock",
                    "src": "10615:648:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "name": "pos",
                              "nativeSrc": "10636:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "10636:3:136"
                            },
                            {
                              "arguments": [
                                {
                                  "arguments": [
                                    {
                                      "name": "tail",
                                      "nativeSrc": "10649:4:136",
                                      "nodeType": "YulIdentifier",
                                      "src": "10649:4:136"
                                    },
                                    {
                                      "name": "pos_1",
                                      "nativeSrc": "10655:5:136",
                                      "nodeType": "YulIdentifier",
                                      "src": "10655:5:136"
                                    }
                                  ],
                                  "functionName": {
                                    "name": "sub",
                                    "nativeSrc": "10645:3:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "10645:3:136"
                                  },
                                  "nativeSrc": "10645:16:136",
                                  "nodeType": "YulFunctionCall",
                                  "src": "10645:16:136"
                                },
                                {
                                  "arguments": [
                                    {
                                      "kind": "number",
                                      "nativeSrc": "10667:2:136",
                                      "nodeType": "YulLiteral",
                                      "src": "10667:2:136",
                                      "type": "",
                                      "value": "31"
                                    }
                                  ],
                                  "functionName": {
                                    "name": "not",
                                    "nativeSrc": "10663:3:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "10663:3:136"
                                  },
                                  "nativeSrc": "10663:7:136",
                                  "nodeType": "YulFunctionCall",
                                  "src": "10663:7:136"
                                }
                              ],
                              "functionName": {
                                "name": "add",
                                "nativeSrc": "10641:3:136",
                                "nodeType": "YulIdentifier",
                                "src": "10641:3:136"
                              },
                              "nativeSrc": "10641:30:136",
                              "nodeType": "YulFunctionCall",
                              "src": "10641:30:136"
                            }
                          ],
                          "functionName": {
                            "name": "mstore",
                            "nativeSrc": "10629:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "10629:6:136"
                          },
                          "nativeSrc": "10629:43:136",
                          "nodeType": "YulFunctionCall",
                          "src": "10629:43:136"
                        },
                        "nativeSrc": "10629:43:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "10629:43:136"
                      },
                      {
                        "nativeSrc": "10685:23:136",
                        "nodeType": "YulVariableDeclaration",
                        "src": "10685:23:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "srcPtr",
                              "nativeSrc": "10701:6:136",
                              "nodeType": "YulIdentifier",
                              "src": "10701:6:136"
                            }
                          ],
                          "functionName": {
                            "name": "mload",
                            "nativeSrc": "10695:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "10695:5:136"
                          },
                          "nativeSrc": "10695:13:136",
                          "nodeType": "YulFunctionCall",
                          "src": "10695:13:136"
                        },
                        "variables": [
                          {
                            "name": "_1",
                            "nativeSrc": "10689:2:136",
                            "nodeType": "YulTypedName",
                            "src": "10689:2:136",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "nativeSrc": "10721:17:136",
                        "nodeType": "YulVariableDeclaration",
                        "src": "10721:17:136",
                        "value": {
                          "name": "tail",
                          "nativeSrc": "10734:4:136",
                          "nodeType": "YulIdentifier",
                          "src": "10734:4:136"
                        },
                        "variables": [
                          {
                            "name": "pos_2",
                            "nativeSrc": "10725:5:136",
                            "nodeType": "YulTypedName",
                            "src": "10725:5:136",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "nativeSrc": "10751:13:136",
                        "nodeType": "YulAssignment",
                        "src": "10751:13:136",
                        "value": {
                          "name": "tail",
                          "nativeSrc": "10760:4:136",
                          "nodeType": "YulIdentifier",
                          "src": "10760:4:136"
                        },
                        "variableNames": [
                          {
                            "name": "pos_2",
                            "nativeSrc": "10751:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "10751:5:136"
                          }
                        ]
                      },
                      {
                        "nativeSrc": "10777:27:136",
                        "nodeType": "YulVariableDeclaration",
                        "src": "10777:27:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "tail",
                              "nativeSrc": "10795:4:136",
                              "nodeType": "YulIdentifier",
                              "src": "10795:4:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "10801:2:136",
                              "nodeType": "YulLiteral",
                              "src": "10801:2:136",
                              "type": "",
                              "value": "64"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "10791:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "10791:3:136"
                          },
                          "nativeSrc": "10791:13:136",
                          "nodeType": "YulFunctionCall",
                          "src": "10791:13:136"
                        },
                        "variables": [
                          {
                            "name": "tail_1",
                            "nativeSrc": "10781:6:136",
                            "nodeType": "YulTypedName",
                            "src": "10781:6:136",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "nativeSrc": "10817:18:136",
                        "nodeType": "YulVariableDeclaration",
                        "src": "10817:18:136",
                        "value": {
                          "name": "_1",
                          "nativeSrc": "10833:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "10833:2:136"
                        },
                        "variables": [
                          {
                            "name": "srcPtr_1",
                            "nativeSrc": "10821:8:136",
                            "nodeType": "YulTypedName",
                            "src": "10821:8:136",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "nativeSrc": "10848:12:136",
                        "nodeType": "YulVariableDeclaration",
                        "src": "10848:12:136",
                        "value": {
                          "kind": "number",
                          "nativeSrc": "10859:1:136",
                          "nodeType": "YulLiteral",
                          "src": "10859:1:136",
                          "type": "",
                          "value": "0"
                        },
                        "variables": [
                          {
                            "name": "i_1",
                            "nativeSrc": "10852:3:136",
                            "nodeType": "YulTypedName",
                            "src": "10852:3:136",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "body": {
                          "nativeSrc": "10930:222:136",
                          "nodeType": "YulBlock",
                          "src": "10930:222:136",
                          "statements": [
                            {
                              "expression": {
                                "arguments": [
                                  {
                                    "name": "pos_2",
                                    "nativeSrc": "10955:5:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "10955:5:136"
                                  },
                                  {
                                    "arguments": [
                                      {
                                        "name": "tail_1",
                                        "nativeSrc": "10966:6:136",
                                        "nodeType": "YulIdentifier",
                                        "src": "10966:6:136"
                                      },
                                      {
                                        "name": "tail",
                                        "nativeSrc": "10974:4:136",
                                        "nodeType": "YulIdentifier",
                                        "src": "10974:4:136"
                                      }
                                    ],
                                    "functionName": {
                                      "name": "sub",
                                      "nativeSrc": "10962:3:136",
                                      "nodeType": "YulIdentifier",
                                      "src": "10962:3:136"
                                    },
                                    "nativeSrc": "10962:17:136",
                                    "nodeType": "YulFunctionCall",
                                    "src": "10962:17:136"
                                  }
                                ],
                                "functionName": {
                                  "name": "mstore",
                                  "nativeSrc": "10948:6:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "10948:6:136"
                                },
                                "nativeSrc": "10948:32:136",
                                "nodeType": "YulFunctionCall",
                                "src": "10948:32:136"
                              },
                              "nativeSrc": "10948:32:136",
                              "nodeType": "YulExpressionStatement",
                              "src": "10948:32:136"
                            },
                            {
                              "nativeSrc": "10997:51:136",
                              "nodeType": "YulAssignment",
                              "src": "10997:51:136",
                              "value": {
                                "arguments": [
                                  {
                                    "arguments": [
                                      {
                                        "name": "srcPtr_1",
                                        "nativeSrc": "11030:8:136",
                                        "nodeType": "YulIdentifier",
                                        "src": "11030:8:136"
                                      }
                                    ],
                                    "functionName": {
                                      "name": "mload",
                                      "nativeSrc": "11024:5:136",
                                      "nodeType": "YulIdentifier",
                                      "src": "11024:5:136"
                                    },
                                    "nativeSrc": "11024:15:136",
                                    "nodeType": "YulFunctionCall",
                                    "src": "11024:15:136"
                                  },
                                  {
                                    "name": "tail_1",
                                    "nativeSrc": "11041:6:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "11041:6:136"
                                  }
                                ],
                                "functionName": {
                                  "name": "abi_encode_bytes",
                                  "nativeSrc": "11007:16:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "11007:16:136"
                                },
                                "nativeSrc": "11007:41:136",
                                "nodeType": "YulFunctionCall",
                                "src": "11007:41:136"
                              },
                              "variableNames": [
                                {
                                  "name": "tail_1",
                                  "nativeSrc": "10997:6:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "10997:6:136"
                                }
                              ]
                            },
                            {
                              "nativeSrc": "11065:31:136",
                              "nodeType": "YulAssignment",
                              "src": "11065:31:136",
                              "value": {
                                "arguments": [
                                  {
                                    "name": "srcPtr_1",
                                    "nativeSrc": "11081:8:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "11081:8:136"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "11091:4:136",
                                    "nodeType": "YulLiteral",
                                    "src": "11091:4:136",
                                    "type": "",
                                    "value": "0x20"
                                  }
                                ],
                                "functionName": {
                                  "name": "add",
                                  "nativeSrc": "11077:3:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "11077:3:136"
                                },
                                "nativeSrc": "11077:19:136",
                                "nodeType": "YulFunctionCall",
                                "src": "11077:19:136"
                              },
                              "variableNames": [
                                {
                                  "name": "srcPtr_1",
                                  "nativeSrc": "11065:8:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "11065:8:136"
                                }
                              ]
                            },
                            {
                              "nativeSrc": "11113:25:136",
                              "nodeType": "YulAssignment",
                              "src": "11113:25:136",
                              "value": {
                                "arguments": [
                                  {
                                    "name": "pos_2",
                                    "nativeSrc": "11126:5:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "11126:5:136"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "11133:4:136",
                                    "nodeType": "YulLiteral",
                                    "src": "11133:4:136",
                                    "type": "",
                                    "value": "0x20"
                                  }
                                ],
                                "functionName": {
                                  "name": "add",
                                  "nativeSrc": "11122:3:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "11122:3:136"
                                },
                                "nativeSrc": "11122:16:136",
                                "nodeType": "YulFunctionCall",
                                "src": "11122:16:136"
                              },
                              "variableNames": [
                                {
                                  "name": "pos_2",
                                  "nativeSrc": "11113:5:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "11113:5:136"
                                }
                              ]
                            }
                          ]
                        },
                        "condition": {
                          "arguments": [
                            {
                              "name": "i_1",
                              "nativeSrc": "10884:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "10884:3:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "10889:4:136",
                              "nodeType": "YulLiteral",
                              "src": "10889:4:136",
                              "type": "",
                              "value": "0x02"
                            }
                          ],
                          "functionName": {
                            "name": "lt",
                            "nativeSrc": "10881:2:136",
                            "nodeType": "YulIdentifier",
                            "src": "10881:2:136"
                          },
                          "nativeSrc": "10881:13:136",
                          "nodeType": "YulFunctionCall",
                          "src": "10881:13:136"
                        },
                        "nativeSrc": "10873:279:136",
                        "nodeType": "YulForLoop",
                        "post": {
                          "nativeSrc": "10895:22:136",
                          "nodeType": "YulBlock",
                          "src": "10895:22:136",
                          "statements": [
                            {
                              "nativeSrc": "10897:18:136",
                              "nodeType": "YulAssignment",
                              "src": "10897:18:136",
                              "value": {
                                "arguments": [
                                  {
                                    "name": "i_1",
                                    "nativeSrc": "10908:3:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "10908:3:136"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "10913:1:136",
                                    "nodeType": "YulLiteral",
                                    "src": "10913:1:136",
                                    "type": "",
                                    "value": "1"
                                  }
                                ],
                                "functionName": {
                                  "name": "add",
                                  "nativeSrc": "10904:3:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "10904:3:136"
                                },
                                "nativeSrc": "10904:11:136",
                                "nodeType": "YulFunctionCall",
                                "src": "10904:11:136"
                              },
                              "variableNames": [
                                {
                                  "name": "i_1",
                                  "nativeSrc": "10897:3:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "10897:3:136"
                                }
                              ]
                            }
                          ]
                        },
                        "pre": {
                          "nativeSrc": "10877:3:136",
                          "nodeType": "YulBlock",
                          "src": "10877:3:136",
                          "statements": []
                        },
                        "src": "10873:279:136"
                      },
                      {
                        "nativeSrc": "11165:14:136",
                        "nodeType": "YulAssignment",
                        "src": "11165:14:136",
                        "value": {
                          "name": "tail_1",
                          "nativeSrc": "11173:6:136",
                          "nodeType": "YulIdentifier",
                          "src": "11173:6:136"
                        },
                        "variableNames": [
                          {
                            "name": "tail",
                            "nativeSrc": "11165:4:136",
                            "nodeType": "YulIdentifier",
                            "src": "11165:4:136"
                          }
                        ]
                      },
                      {
                        "nativeSrc": "11192:27:136",
                        "nodeType": "YulAssignment",
                        "src": "11192:27:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "srcPtr",
                              "nativeSrc": "11206:6:136",
                              "nodeType": "YulIdentifier",
                              "src": "11206:6:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "11214:4:136",
                              "nodeType": "YulLiteral",
                              "src": "11214:4:136",
                              "type": "",
                              "value": "0x20"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "11202:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "11202:3:136"
                          },
                          "nativeSrc": "11202:17:136",
                          "nodeType": "YulFunctionCall",
                          "src": "11202:17:136"
                        },
                        "variableNames": [
                          {
                            "name": "srcPtr",
                            "nativeSrc": "11192:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "11192:6:136"
                          }
                        ]
                      },
                      {
                        "nativeSrc": "11232:21:136",
                        "nodeType": "YulAssignment",
                        "src": "11232:21:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "pos",
                              "nativeSrc": "11243:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "11243:3:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "11248:4:136",
                              "nodeType": "YulLiteral",
                              "src": "11248:4:136",
                              "type": "",
                              "value": "0x20"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "11239:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "11239:3:136"
                          },
                          "nativeSrc": "11239:14:136",
                          "nodeType": "YulFunctionCall",
                          "src": "11239:14:136"
                        },
                        "variableNames": [
                          {
                            "name": "pos",
                            "nativeSrc": "11232:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "11232:3:136"
                          }
                        ]
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "i",
                        "nativeSrc": "10577:1:136",
                        "nodeType": "YulIdentifier",
                        "src": "10577:1:136"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "10580:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "10580:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "lt",
                      "nativeSrc": "10574:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "10574:2:136"
                    },
                    "nativeSrc": "10574:13:136",
                    "nodeType": "YulFunctionCall",
                    "src": "10574:13:136"
                  },
                  "nativeSrc": "10566:697:136",
                  "nodeType": "YulForLoop",
                  "post": {
                    "nativeSrc": "10588:18:136",
                    "nodeType": "YulBlock",
                    "src": "10588:18:136",
                    "statements": [
                      {
                        "nativeSrc": "10590:14:136",
                        "nodeType": "YulAssignment",
                        "src": "10590:14:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "i",
                              "nativeSrc": "10599:1:136",
                              "nodeType": "YulIdentifier",
                              "src": "10599:1:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "10602:1:136",
                              "nodeType": "YulLiteral",
                              "src": "10602:1:136",
                              "type": "",
                              "value": "1"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "10595:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "10595:3:136"
                          },
                          "nativeSrc": "10595:9:136",
                          "nodeType": "YulFunctionCall",
                          "src": "10595:9:136"
                        },
                        "variableNames": [
                          {
                            "name": "i",
                            "nativeSrc": "10590:1:136",
                            "nodeType": "YulIdentifier",
                            "src": "10590:1:136"
                          }
                        ]
                      }
                    ]
                  },
                  "pre": {
                    "nativeSrc": "10570:3:136",
                    "nodeType": "YulBlock",
                    "src": "10570:3:136",
                    "statements": []
                  },
                  "src": "10566:697:136"
                },
                {
                  "nativeSrc": "11272:11:136",
                  "nodeType": "YulAssignment",
                  "src": "11272:11:136",
                  "value": {
                    "name": "tail",
                    "nativeSrc": "11279:4:136",
                    "nodeType": "YulIdentifier",
                    "src": "11279:4:136"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "11272:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "11272:3:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_array_array_string_dyn",
            "nativeSrc": "10256:1033:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "value",
                "nativeSrc": "10299:5:136",
                "nodeType": "YulTypedName",
                "src": "10299:5:136",
                "type": ""
              },
              {
                "name": "pos",
                "nativeSrc": "10306:3:136",
                "nodeType": "YulTypedName",
                "src": "10306:3:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "10314:3:136",
                "nodeType": "YulTypedName",
                "src": "10314:3:136",
                "type": ""
              }
            ],
            "src": "10256:1033:136"
          },
          {
            "body": {
              "nativeSrc": "11469:1113:136",
              "nodeType": "YulBlock",
              "src": "11469:1113:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "11486:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "11486:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "11497:2:136",
                        "nodeType": "YulLiteral",
                        "src": "11497:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "11479:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "11479:6:136"
                    },
                    "nativeSrc": "11479:21:136",
                    "nodeType": "YulFunctionCall",
                    "src": "11479:21:136"
                  },
                  "nativeSrc": "11479:21:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "11479:21:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "11520:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "11520:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "11531:2:136",
                            "nodeType": "YulLiteral",
                            "src": "11531:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "11516:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "11516:3:136"
                        },
                        "nativeSrc": "11516:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "11516:18:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "value0",
                                "nativeSrc": "11546:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "11546:6:136"
                              }
                            ],
                            "functionName": {
                              "name": "mload",
                              "nativeSrc": "11540:5:136",
                              "nodeType": "YulIdentifier",
                              "src": "11540:5:136"
                            },
                            "nativeSrc": "11540:13:136",
                            "nodeType": "YulFunctionCall",
                            "src": "11540:13:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "11555:4:136",
                            "nodeType": "YulLiteral",
                            "src": "11555:4:136",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "11536:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "11536:3:136"
                        },
                        "nativeSrc": "11536:24:136",
                        "nodeType": "YulFunctionCall",
                        "src": "11536:24:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "11509:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "11509:6:136"
                    },
                    "nativeSrc": "11509:52:136",
                    "nodeType": "YulFunctionCall",
                    "src": "11509:52:136"
                  },
                  "nativeSrc": "11509:52:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "11509:52:136"
                },
                {
                  "nativeSrc": "11570:42:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "11570:42:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "11600:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "11600:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "11608:2:136",
                            "nodeType": "YulLiteral",
                            "src": "11608:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "11596:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "11596:3:136"
                        },
                        "nativeSrc": "11596:15:136",
                        "nodeType": "YulFunctionCall",
                        "src": "11596:15:136"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "11590:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "11590:5:136"
                    },
                    "nativeSrc": "11590:22:136",
                    "nodeType": "YulFunctionCall",
                    "src": "11590:22:136"
                  },
                  "variables": [
                    {
                      "name": "memberValue0",
                      "nativeSrc": "11574:12:136",
                      "nodeType": "YulTypedName",
                      "src": "11574:12:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "memberValue0",
                        "nativeSrc": "11659:12:136",
                        "nodeType": "YulIdentifier",
                        "src": "11659:12:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "11677:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "11677:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "11688:2:136",
                            "nodeType": "YulLiteral",
                            "src": "11688:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "11673:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "11673:3:136"
                        },
                        "nativeSrc": "11673:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "11673:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_enum_RadonRetrievalMethods",
                      "nativeSrc": "11621:37:136",
                      "nodeType": "YulIdentifier",
                      "src": "11621:37:136"
                    },
                    "nativeSrc": "11621:71:136",
                    "nodeType": "YulFunctionCall",
                    "src": "11621:71:136"
                  },
                  "nativeSrc": "11621:71:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "11621:71:136"
                },
                {
                  "nativeSrc": "11701:44:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "11701:44:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "11733:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "11733:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "11741:2:136",
                            "nodeType": "YulLiteral",
                            "src": "11741:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "11729:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "11729:3:136"
                        },
                        "nativeSrc": "11729:15:136",
                        "nodeType": "YulFunctionCall",
                        "src": "11729:15:136"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "11723:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "11723:5:136"
                    },
                    "nativeSrc": "11723:22:136",
                    "nodeType": "YulFunctionCall",
                    "src": "11723:22:136"
                  },
                  "variables": [
                    {
                      "name": "memberValue0_1",
                      "nativeSrc": "11705:14:136",
                      "nodeType": "YulTypedName",
                      "src": "11705:14:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "memberValue0_1",
                        "nativeSrc": "11785:14:136",
                        "nodeType": "YulIdentifier",
                        "src": "11785:14:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "11805:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "11805:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "11816:2:136",
                            "nodeType": "YulLiteral",
                            "src": "11816:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "11801:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "11801:3:136"
                        },
                        "nativeSrc": "11801:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "11801:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_enum_RadonDataTypes",
                      "nativeSrc": "11754:30:136",
                      "nodeType": "YulIdentifier",
                      "src": "11754:30:136"
                    },
                    "nativeSrc": "11754:66:136",
                    "nodeType": "YulFunctionCall",
                    "src": "11754:66:136"
                  },
                  "nativeSrc": "11754:66:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "11754:66:136"
                },
                {
                  "nativeSrc": "11829:44:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "11829:44:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "11861:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "11861:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "11869:2:136",
                            "nodeType": "YulLiteral",
                            "src": "11869:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "11857:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "11857:3:136"
                        },
                        "nativeSrc": "11857:15:136",
                        "nodeType": "YulFunctionCall",
                        "src": "11857:15:136"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "11851:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "11851:5:136"
                    },
                    "nativeSrc": "11851:22:136",
                    "nodeType": "YulFunctionCall",
                    "src": "11851:22:136"
                  },
                  "variables": [
                    {
                      "name": "memberValue0_2",
                      "nativeSrc": "11833:14:136",
                      "nodeType": "YulTypedName",
                      "src": "11833:14:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "11893:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "11893:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "11904:3:136",
                            "nodeType": "YulLiteral",
                            "src": "11904:3:136",
                            "type": "",
                            "value": "128"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "11889:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "11889:3:136"
                        },
                        "nativeSrc": "11889:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "11889:19:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "11910:4:136",
                        "nodeType": "YulLiteral",
                        "src": "11910:4:136",
                        "type": "",
                        "value": "0xe0"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "11882:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "11882:6:136"
                    },
                    "nativeSrc": "11882:33:136",
                    "nodeType": "YulFunctionCall",
                    "src": "11882:33:136"
                  },
                  "nativeSrc": "11882:33:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "11882:33:136"
                },
                {
                  "nativeSrc": "11924:67:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "11924:67:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "memberValue0_2",
                        "nativeSrc": "11955:14:136",
                        "nodeType": "YulIdentifier",
                        "src": "11955:14:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "11975:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "11975:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "11986:3:136",
                            "nodeType": "YulLiteral",
                            "src": "11986:3:136",
                            "type": "",
                            "value": "256"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "11971:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "11971:3:136"
                        },
                        "nativeSrc": "11971:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "11971:19:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes",
                      "nativeSrc": "11938:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "11938:16:136"
                    },
                    "nativeSrc": "11938:53:136",
                    "nodeType": "YulFunctionCall",
                    "src": "11938:53:136"
                  },
                  "variables": [
                    {
                      "name": "tail_1",
                      "nativeSrc": "11928:6:136",
                      "nodeType": "YulTypedName",
                      "src": "11928:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "12000:45:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "12000:45:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "12032:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "12032:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "12040:3:136",
                            "nodeType": "YulLiteral",
                            "src": "12040:3:136",
                            "type": "",
                            "value": "128"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "12028:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "12028:3:136"
                        },
                        "nativeSrc": "12028:16:136",
                        "nodeType": "YulFunctionCall",
                        "src": "12028:16:136"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "12022:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "12022:5:136"
                    },
                    "nativeSrc": "12022:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "12022:23:136"
                  },
                  "variables": [
                    {
                      "name": "memberValue0_3",
                      "nativeSrc": "12004:14:136",
                      "nodeType": "YulTypedName",
                      "src": "12004:14:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "12065:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "12065:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "12076:3:136",
                            "nodeType": "YulLiteral",
                            "src": "12076:3:136",
                            "type": "",
                            "value": "160"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "12061:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "12061:3:136"
                        },
                        "nativeSrc": "12061:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "12061:19:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "tail_1",
                                "nativeSrc": "12090:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "12090:6:136"
                              },
                              {
                                "name": "headStart",
                                "nativeSrc": "12098:9:136",
                                "nodeType": "YulIdentifier",
                                "src": "12098:9:136"
                              }
                            ],
                            "functionName": {
                              "name": "sub",
                              "nativeSrc": "12086:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "12086:3:136"
                            },
                            "nativeSrc": "12086:22:136",
                            "nodeType": "YulFunctionCall",
                            "src": "12086:22:136"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "12114:2:136",
                                "nodeType": "YulLiteral",
                                "src": "12114:2:136",
                                "type": "",
                                "value": "31"
                              }
                            ],
                            "functionName": {
                              "name": "not",
                              "nativeSrc": "12110:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "12110:3:136"
                            },
                            "nativeSrc": "12110:7:136",
                            "nodeType": "YulFunctionCall",
                            "src": "12110:7:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "12082:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "12082:3:136"
                        },
                        "nativeSrc": "12082:36:136",
                        "nodeType": "YulFunctionCall",
                        "src": "12082:36:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "12054:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "12054:6:136"
                    },
                    "nativeSrc": "12054:65:136",
                    "nodeType": "YulFunctionCall",
                    "src": "12054:65:136"
                  },
                  "nativeSrc": "12054:65:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "12054:65:136"
                },
                {
                  "nativeSrc": "12128:54:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "12128:54:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "memberValue0_3",
                        "nativeSrc": "12159:14:136",
                        "nodeType": "YulIdentifier",
                        "src": "12159:14:136"
                      },
                      {
                        "name": "tail_1",
                        "nativeSrc": "12175:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "12175:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes",
                      "nativeSrc": "12142:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "12142:16:136"
                    },
                    "nativeSrc": "12142:40:136",
                    "nodeType": "YulFunctionCall",
                    "src": "12142:40:136"
                  },
                  "variables": [
                    {
                      "name": "tail_2",
                      "nativeSrc": "12132:6:136",
                      "nodeType": "YulTypedName",
                      "src": "12132:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "12191:45:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "12191:45:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "12223:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "12223:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "12231:3:136",
                            "nodeType": "YulLiteral",
                            "src": "12231:3:136",
                            "type": "",
                            "value": "160"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "12219:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "12219:3:136"
                        },
                        "nativeSrc": "12219:16:136",
                        "nodeType": "YulFunctionCall",
                        "src": "12219:16:136"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "12213:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "12213:5:136"
                    },
                    "nativeSrc": "12213:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "12213:23:136"
                  },
                  "variables": [
                    {
                      "name": "memberValue0_4",
                      "nativeSrc": "12195:14:136",
                      "nodeType": "YulTypedName",
                      "src": "12195:14:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "12256:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "12256:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "12267:3:136",
                            "nodeType": "YulLiteral",
                            "src": "12267:3:136",
                            "type": "",
                            "value": "192"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "12252:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "12252:3:136"
                        },
                        "nativeSrc": "12252:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "12252:19:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "tail_2",
                                "nativeSrc": "12281:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "12281:6:136"
                              },
                              {
                                "name": "headStart",
                                "nativeSrc": "12289:9:136",
                                "nodeType": "YulIdentifier",
                                "src": "12289:9:136"
                              }
                            ],
                            "functionName": {
                              "name": "sub",
                              "nativeSrc": "12277:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "12277:3:136"
                            },
                            "nativeSrc": "12277:22:136",
                            "nodeType": "YulFunctionCall",
                            "src": "12277:22:136"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "12305:2:136",
                                "nodeType": "YulLiteral",
                                "src": "12305:2:136",
                                "type": "",
                                "value": "31"
                              }
                            ],
                            "functionName": {
                              "name": "not",
                              "nativeSrc": "12301:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "12301:3:136"
                            },
                            "nativeSrc": "12301:7:136",
                            "nodeType": "YulFunctionCall",
                            "src": "12301:7:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "12273:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "12273:3:136"
                        },
                        "nativeSrc": "12273:36:136",
                        "nodeType": "YulFunctionCall",
                        "src": "12273:36:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "12245:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "12245:6:136"
                    },
                    "nativeSrc": "12245:65:136",
                    "nodeType": "YulFunctionCall",
                    "src": "12245:65:136"
                  },
                  "nativeSrc": "12245:65:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "12245:65:136"
                },
                {
                  "nativeSrc": "12319:71:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "12319:71:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "memberValue0_4",
                        "nativeSrc": "12367:14:136",
                        "nodeType": "YulIdentifier",
                        "src": "12367:14:136"
                      },
                      {
                        "name": "tail_2",
                        "nativeSrc": "12383:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "12383:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_array_array_string_dyn",
                      "nativeSrc": "12333:33:136",
                      "nodeType": "YulIdentifier",
                      "src": "12333:33:136"
                    },
                    "nativeSrc": "12333:57:136",
                    "nodeType": "YulFunctionCall",
                    "src": "12333:57:136"
                  },
                  "variables": [
                    {
                      "name": "tail_3",
                      "nativeSrc": "12323:6:136",
                      "nodeType": "YulTypedName",
                      "src": "12323:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "12399:45:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "12399:45:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "12431:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "12431:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "12439:3:136",
                            "nodeType": "YulLiteral",
                            "src": "12439:3:136",
                            "type": "",
                            "value": "192"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "12427:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "12427:3:136"
                        },
                        "nativeSrc": "12427:16:136",
                        "nodeType": "YulFunctionCall",
                        "src": "12427:16:136"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "12421:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "12421:5:136"
                    },
                    "nativeSrc": "12421:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "12421:23:136"
                  },
                  "variables": [
                    {
                      "name": "memberValue0_5",
                      "nativeSrc": "12403:14:136",
                      "nodeType": "YulTypedName",
                      "src": "12403:14:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "12464:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "12464:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "12475:4:136",
                            "nodeType": "YulLiteral",
                            "src": "12475:4:136",
                            "type": "",
                            "value": "0xe0"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "12460:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "12460:3:136"
                        },
                        "nativeSrc": "12460:20:136",
                        "nodeType": "YulFunctionCall",
                        "src": "12460:20:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "tail_3",
                                "nativeSrc": "12490:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "12490:6:136"
                              },
                              {
                                "name": "headStart",
                                "nativeSrc": "12498:9:136",
                                "nodeType": "YulIdentifier",
                                "src": "12498:9:136"
                              }
                            ],
                            "functionName": {
                              "name": "sub",
                              "nativeSrc": "12486:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "12486:3:136"
                            },
                            "nativeSrc": "12486:22:136",
                            "nodeType": "YulFunctionCall",
                            "src": "12486:22:136"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "12514:2:136",
                                "nodeType": "YulLiteral",
                                "src": "12514:2:136",
                                "type": "",
                                "value": "31"
                              }
                            ],
                            "functionName": {
                              "name": "not",
                              "nativeSrc": "12510:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "12510:3:136"
                            },
                            "nativeSrc": "12510:7:136",
                            "nodeType": "YulFunctionCall",
                            "src": "12510:7:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "12482:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "12482:3:136"
                        },
                        "nativeSrc": "12482:36:136",
                        "nodeType": "YulFunctionCall",
                        "src": "12482:36:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "12453:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "12453:6:136"
                    },
                    "nativeSrc": "12453:66:136",
                    "nodeType": "YulFunctionCall",
                    "src": "12453:66:136"
                  },
                  "nativeSrc": "12453:66:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "12453:66:136"
                },
                {
                  "nativeSrc": "12528:48:136",
                  "nodeType": "YulAssignment",
                  "src": "12528:48:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "memberValue0_5",
                        "nativeSrc": "12553:14:136",
                        "nodeType": "YulIdentifier",
                        "src": "12553:14:136"
                      },
                      {
                        "name": "tail_3",
                        "nativeSrc": "12569:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "12569:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes",
                      "nativeSrc": "12536:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "12536:16:136"
                    },
                    "nativeSrc": "12536:40:136",
                    "nodeType": "YulFunctionCall",
                    "src": "12536:40:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "12528:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "12528:4:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_struct$_RadonRetrieval_$37795_memory_ptr__to_t_struct$_RadonRetrieval_$37795_memory_ptr__fromStack_library_reversed",
            "nativeSrc": "11294:1288:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "11438:9:136",
                "nodeType": "YulTypedName",
                "src": "11438:9:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "11449:6:136",
                "nodeType": "YulTypedName",
                "src": "11449:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "11460:4:136",
                "nodeType": "YulTypedName",
                "src": "11460:4:136",
                "type": ""
              }
            ],
            "src": "11294:1288:136"
          },
          {
            "body": {
              "nativeSrc": "12839:900:136",
              "nodeType": "YulBlock",
              "src": "12839:900:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "12886:16:136",
                    "nodeType": "YulBlock",
                    "src": "12886:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "12895:1:136",
                              "nodeType": "YulLiteral",
                              "src": "12895:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "12898:1:136",
                              "nodeType": "YulLiteral",
                              "src": "12898:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "12888:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "12888:6:136"
                          },
                          "nativeSrc": "12888:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "12888:12:136"
                        },
                        "nativeSrc": "12888:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "12888:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "12860:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "12860:7:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "12869:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "12869:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "12856:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "12856:3:136"
                        },
                        "nativeSrc": "12856:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "12856:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "12881:3:136",
                        "nodeType": "YulLiteral",
                        "src": "12881:3:136",
                        "type": "",
                        "value": "160"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "12852:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "12852:3:136"
                    },
                    "nativeSrc": "12852:33:136",
                    "nodeType": "YulFunctionCall",
                    "src": "12852:33:136"
                  },
                  "nativeSrc": "12849:53:136",
                  "nodeType": "YulIf",
                  "src": "12849:53:136"
                },
                {
                  "nativeSrc": "12911:58:136",
                  "nodeType": "YulAssignment",
                  "src": "12911:58:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "12959:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "12959:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_enum_RadonRetrievalMethods",
                      "nativeSrc": "12921:37:136",
                      "nodeType": "YulIdentifier",
                      "src": "12921:37:136"
                    },
                    "nativeSrc": "12921:48:136",
                    "nodeType": "YulFunctionCall",
                    "src": "12921:48:136"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "12911:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "12911:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "12978:46:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "12978:46:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "13009:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "13009:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "13020:2:136",
                            "nodeType": "YulLiteral",
                            "src": "13020:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "13005:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "13005:3:136"
                        },
                        "nativeSrc": "13005:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "13005:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "12992:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "12992:12:136"
                    },
                    "nativeSrc": "12992:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "12992:32:136"
                  },
                  "variables": [
                    {
                      "name": "offset",
                      "nativeSrc": "12982:6:136",
                      "nodeType": "YulTypedName",
                      "src": "12982:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "13067:16:136",
                    "nodeType": "YulBlock",
                    "src": "13067:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "13076:1:136",
                              "nodeType": "YulLiteral",
                              "src": "13076:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "13079:1:136",
                              "nodeType": "YulLiteral",
                              "src": "13079:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "13069:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "13069:6:136"
                          },
                          "nativeSrc": "13069:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "13069:12:136"
                        },
                        "nativeSrc": "13069:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "13069:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "13039:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "13039:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "13047:18:136",
                        "nodeType": "YulLiteral",
                        "src": "13047:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "13036:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "13036:2:136"
                    },
                    "nativeSrc": "13036:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "13036:30:136"
                  },
                  "nativeSrc": "13033:50:136",
                  "nodeType": "YulIf",
                  "src": "13033:50:136"
                },
                {
                  "nativeSrc": "13092:59:136",
                  "nodeType": "YulAssignment",
                  "src": "13092:59:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "13123:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "13123:9:136"
                          },
                          {
                            "name": "offset",
                            "nativeSrc": "13134:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "13134:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "13119:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "13119:3:136"
                        },
                        "nativeSrc": "13119:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "13119:22:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "13143:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "13143:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_bytes",
                      "nativeSrc": "13102:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "13102:16:136"
                    },
                    "nativeSrc": "13102:49:136",
                    "nodeType": "YulFunctionCall",
                    "src": "13102:49:136"
                  },
                  "variableNames": [
                    {
                      "name": "value1",
                      "nativeSrc": "13092:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "13092:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "13160:48:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "13160:48:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "13193:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "13193:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "13204:2:136",
                            "nodeType": "YulLiteral",
                            "src": "13204:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "13189:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "13189:3:136"
                        },
                        "nativeSrc": "13189:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "13189:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "13176:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "13176:12:136"
                    },
                    "nativeSrc": "13176:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "13176:32:136"
                  },
                  "variables": [
                    {
                      "name": "offset_1",
                      "nativeSrc": "13164:8:136",
                      "nodeType": "YulTypedName",
                      "src": "13164:8:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "13253:16:136",
                    "nodeType": "YulBlock",
                    "src": "13253:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "13262:1:136",
                              "nodeType": "YulLiteral",
                              "src": "13262:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "13265:1:136",
                              "nodeType": "YulLiteral",
                              "src": "13265:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "13255:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "13255:6:136"
                          },
                          "nativeSrc": "13255:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "13255:12:136"
                        },
                        "nativeSrc": "13255:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "13255:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_1",
                        "nativeSrc": "13223:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "13223:8:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "13233:18:136",
                        "nodeType": "YulLiteral",
                        "src": "13233:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "13220:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "13220:2:136"
                    },
                    "nativeSrc": "13220:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "13220:32:136"
                  },
                  "nativeSrc": "13217:52:136",
                  "nodeType": "YulIf",
                  "src": "13217:52:136"
                },
                {
                  "nativeSrc": "13278:61:136",
                  "nodeType": "YulAssignment",
                  "src": "13278:61:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "13309:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "13309:9:136"
                          },
                          {
                            "name": "offset_1",
                            "nativeSrc": "13320:8:136",
                            "nodeType": "YulIdentifier",
                            "src": "13320:8:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "13305:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "13305:3:136"
                        },
                        "nativeSrc": "13305:24:136",
                        "nodeType": "YulFunctionCall",
                        "src": "13305:24:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "13331:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "13331:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_bytes",
                      "nativeSrc": "13288:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "13288:16:136"
                    },
                    "nativeSrc": "13288:51:136",
                    "nodeType": "YulFunctionCall",
                    "src": "13288:51:136"
                  },
                  "variableNames": [
                    {
                      "name": "value2",
                      "nativeSrc": "13278:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "13278:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "13348:48:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "13348:48:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "13381:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "13381:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "13392:2:136",
                            "nodeType": "YulLiteral",
                            "src": "13392:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "13377:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "13377:3:136"
                        },
                        "nativeSrc": "13377:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "13377:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "13364:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "13364:12:136"
                    },
                    "nativeSrc": "13364:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "13364:32:136"
                  },
                  "variables": [
                    {
                      "name": "offset_2",
                      "nativeSrc": "13352:8:136",
                      "nodeType": "YulTypedName",
                      "src": "13352:8:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "13441:16:136",
                    "nodeType": "YulBlock",
                    "src": "13441:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "13450:1:136",
                              "nodeType": "YulLiteral",
                              "src": "13450:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "13453:1:136",
                              "nodeType": "YulLiteral",
                              "src": "13453:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "13443:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "13443:6:136"
                          },
                          "nativeSrc": "13443:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "13443:12:136"
                        },
                        "nativeSrc": "13443:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "13443:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_2",
                        "nativeSrc": "13411:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "13411:8:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "13421:18:136",
                        "nodeType": "YulLiteral",
                        "src": "13421:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "13408:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "13408:2:136"
                    },
                    "nativeSrc": "13408:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "13408:32:136"
                  },
                  "nativeSrc": "13405:52:136",
                  "nodeType": "YulIf",
                  "src": "13405:52:136"
                },
                {
                  "nativeSrc": "13466:78:136",
                  "nodeType": "YulAssignment",
                  "src": "13466:78:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "13514:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "13514:9:136"
                          },
                          {
                            "name": "offset_2",
                            "nativeSrc": "13525:8:136",
                            "nodeType": "YulIdentifier",
                            "src": "13525:8:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "13510:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "13510:3:136"
                        },
                        "nativeSrc": "13510:24:136",
                        "nodeType": "YulFunctionCall",
                        "src": "13510:24:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "13536:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "13536:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_array_array_string_dyn",
                      "nativeSrc": "13476:33:136",
                      "nodeType": "YulIdentifier",
                      "src": "13476:33:136"
                    },
                    "nativeSrc": "13476:68:136",
                    "nodeType": "YulFunctionCall",
                    "src": "13476:68:136"
                  },
                  "variableNames": [
                    {
                      "name": "value3",
                      "nativeSrc": "13466:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "13466:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "13553:49:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "13553:49:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "13586:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "13586:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "13597:3:136",
                            "nodeType": "YulLiteral",
                            "src": "13597:3:136",
                            "type": "",
                            "value": "128"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "13582:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "13582:3:136"
                        },
                        "nativeSrc": "13582:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "13582:19:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "13569:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "13569:12:136"
                    },
                    "nativeSrc": "13569:33:136",
                    "nodeType": "YulFunctionCall",
                    "src": "13569:33:136"
                  },
                  "variables": [
                    {
                      "name": "offset_3",
                      "nativeSrc": "13557:8:136",
                      "nodeType": "YulTypedName",
                      "src": "13557:8:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "13647:16:136",
                    "nodeType": "YulBlock",
                    "src": "13647:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "13656:1:136",
                              "nodeType": "YulLiteral",
                              "src": "13656:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "13659:1:136",
                              "nodeType": "YulLiteral",
                              "src": "13659:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "13649:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "13649:6:136"
                          },
                          "nativeSrc": "13649:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "13649:12:136"
                        },
                        "nativeSrc": "13649:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "13649:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_3",
                        "nativeSrc": "13617:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "13617:8:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "13627:18:136",
                        "nodeType": "YulLiteral",
                        "src": "13627:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "13614:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "13614:2:136"
                    },
                    "nativeSrc": "13614:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "13614:32:136"
                  },
                  "nativeSrc": "13611:52:136",
                  "nodeType": "YulIf",
                  "src": "13611:52:136"
                },
                {
                  "nativeSrc": "13672:61:136",
                  "nodeType": "YulAssignment",
                  "src": "13672:61:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "13703:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "13703:9:136"
                          },
                          {
                            "name": "offset_3",
                            "nativeSrc": "13714:8:136",
                            "nodeType": "YulIdentifier",
                            "src": "13714:8:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "13699:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "13699:3:136"
                        },
                        "nativeSrc": "13699:24:136",
                        "nodeType": "YulFunctionCall",
                        "src": "13699:24:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "13725:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "13725:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_bytes",
                      "nativeSrc": "13682:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "13682:16:136"
                    },
                    "nativeSrc": "13682:51:136",
                    "nodeType": "YulFunctionCall",
                    "src": "13682:51:136"
                  },
                  "variableNames": [
                    {
                      "name": "value4",
                      "nativeSrc": "13672:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "13672:6:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_enum$_RadonRetrievalMethods_$37802t_string_memory_ptrt_string_memory_ptrt_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptrt_bytes_memory_ptr",
            "nativeSrc": "12587:1152:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "12773:9:136",
                "nodeType": "YulTypedName",
                "src": "12773:9:136",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "12784:7:136",
                "nodeType": "YulTypedName",
                "src": "12784:7:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "12796:6:136",
                "nodeType": "YulTypedName",
                "src": "12796:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "12804:6:136",
                "nodeType": "YulTypedName",
                "src": "12804:6:136",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "12812:6:136",
                "nodeType": "YulTypedName",
                "src": "12812:6:136",
                "type": ""
              },
              {
                "name": "value3",
                "nativeSrc": "12820:6:136",
                "nodeType": "YulTypedName",
                "src": "12820:6:136",
                "type": ""
              },
              {
                "name": "value4",
                "nativeSrc": "12828:6:136",
                "nodeType": "YulTypedName",
                "src": "12828:6:136",
                "type": ""
              }
            ],
            "src": "12587:1152:136"
          },
          {
            "body": {
              "nativeSrc": "13853:76:136",
              "nodeType": "YulBlock",
              "src": "13853:76:136",
              "statements": [
                {
                  "nativeSrc": "13863:26:136",
                  "nodeType": "YulAssignment",
                  "src": "13863:26:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "13875:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "13875:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "13886:2:136",
                        "nodeType": "YulLiteral",
                        "src": "13886:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "13871:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "13871:3:136"
                    },
                    "nativeSrc": "13871:18:136",
                    "nodeType": "YulFunctionCall",
                    "src": "13871:18:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "13863:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "13863:4:136"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "13905:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "13905:9:136"
                      },
                      {
                        "name": "value0",
                        "nativeSrc": "13916:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "13916:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "13898:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "13898:6:136"
                    },
                    "nativeSrc": "13898:25:136",
                    "nodeType": "YulFunctionCall",
                    "src": "13898:25:136"
                  },
                  "nativeSrc": "13898:25:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "13898:25:136"
                }
              ]
            },
            "name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed",
            "nativeSrc": "13744:185:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "13822:9:136",
                "nodeType": "YulTypedName",
                "src": "13822:9:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "13833:6:136",
                "nodeType": "YulTypedName",
                "src": "13833:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "13844:4:136",
                "nodeType": "YulTypedName",
                "src": "13844:4:136",
                "type": ""
              }
            ],
            "src": "13744:185:136"
          },
          {
            "body": {
              "nativeSrc": "14022:609:136",
              "nodeType": "YulBlock",
              "src": "14022:609:136",
              "statements": [
                {
                  "nativeSrc": "14032:84:136",
                  "nodeType": "YulAssignment",
                  "src": "14032:84:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "length",
                            "nativeSrc": "14108:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "14108:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "array_allocation_size_array_struct_RadonFilter_dyn",
                          "nativeSrc": "14057:50:136",
                          "nodeType": "YulIdentifier",
                          "src": "14057:50:136"
                        },
                        "nativeSrc": "14057:58:136",
                        "nodeType": "YulFunctionCall",
                        "src": "14057:58:136"
                      }
                    ],
                    "functionName": {
                      "name": "allocate_memory",
                      "nativeSrc": "14041:15:136",
                      "nodeType": "YulIdentifier",
                      "src": "14041:15:136"
                    },
                    "nativeSrc": "14041:75:136",
                    "nodeType": "YulFunctionCall",
                    "src": "14041:75:136"
                  },
                  "variableNames": [
                    {
                      "name": "array",
                      "nativeSrc": "14032:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "14032:5:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "14125:16:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "14125:16:136",
                  "value": {
                    "name": "array",
                    "nativeSrc": "14136:5:136",
                    "nodeType": "YulIdentifier",
                    "src": "14136:5:136"
                  },
                  "variables": [
                    {
                      "name": "dst",
                      "nativeSrc": "14129:3:136",
                      "nodeType": "YulTypedName",
                      "src": "14129:3:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "array",
                        "nativeSrc": "14157:5:136",
                        "nodeType": "YulIdentifier",
                        "src": "14157:5:136"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "14164:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "14164:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "14150:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "14150:6:136"
                    },
                    "nativeSrc": "14150:21:136",
                    "nodeType": "YulFunctionCall",
                    "src": "14150:21:136"
                  },
                  "nativeSrc": "14150:21:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "14150:21:136"
                },
                {
                  "nativeSrc": "14180:23:136",
                  "nodeType": "YulAssignment",
                  "src": "14180:23:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "array",
                        "nativeSrc": "14191:5:136",
                        "nodeType": "YulIdentifier",
                        "src": "14191:5:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "14198:4:136",
                        "nodeType": "YulLiteral",
                        "src": "14198:4:136",
                        "type": "",
                        "value": "0x20"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "14187:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "14187:3:136"
                    },
                    "nativeSrc": "14187:16:136",
                    "nodeType": "YulFunctionCall",
                    "src": "14187:16:136"
                  },
                  "variableNames": [
                    {
                      "name": "dst",
                      "nativeSrc": "14180:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "14180:3:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "14212:41:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "14212:41:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "14230:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "14230:6:136"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "14242:1:136",
                            "nodeType": "YulLiteral",
                            "src": "14242:1:136",
                            "type": "",
                            "value": "5"
                          },
                          {
                            "name": "length",
                            "nativeSrc": "14245:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "14245:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "shl",
                          "nativeSrc": "14238:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "14238:3:136"
                        },
                        "nativeSrc": "14238:14:136",
                        "nodeType": "YulFunctionCall",
                        "src": "14238:14:136"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "14226:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "14226:3:136"
                    },
                    "nativeSrc": "14226:27:136",
                    "nodeType": "YulFunctionCall",
                    "src": "14226:27:136"
                  },
                  "variables": [
                    {
                      "name": "srcEnd",
                      "nativeSrc": "14216:6:136",
                      "nodeType": "YulTypedName",
                      "src": "14216:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "14281:16:136",
                    "nodeType": "YulBlock",
                    "src": "14281:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "14290:1:136",
                              "nodeType": "YulLiteral",
                              "src": "14290:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "14293:1:136",
                              "nodeType": "YulLiteral",
                              "src": "14293:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "14283:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "14283:6:136"
                          },
                          "nativeSrc": "14283:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "14283:12:136"
                        },
                        "nativeSrc": "14283:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "14283:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "srcEnd",
                        "nativeSrc": "14268:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "14268:6:136"
                      },
                      {
                        "name": "end",
                        "nativeSrc": "14276:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "14276:3:136"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "14265:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "14265:2:136"
                    },
                    "nativeSrc": "14265:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "14265:15:136"
                  },
                  "nativeSrc": "14262:35:136",
                  "nodeType": "YulIf",
                  "src": "14262:35:136"
                },
                {
                  "nativeSrc": "14306:17:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "14306:17:136",
                  "value": {
                    "name": "offset",
                    "nativeSrc": "14317:6:136",
                    "nodeType": "YulIdentifier",
                    "src": "14317:6:136"
                  },
                  "variables": [
                    {
                      "name": "src",
                      "nativeSrc": "14310:3:136",
                      "nodeType": "YulTypedName",
                      "src": "14310:3:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "14390:235:136",
                    "nodeType": "YulBlock",
                    "src": "14390:235:136",
                    "statements": [
                      {
                        "nativeSrc": "14404:36:136",
                        "nodeType": "YulVariableDeclaration",
                        "src": "14404:36:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "src",
                              "nativeSrc": "14436:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "14436:3:136"
                            }
                          ],
                          "functionName": {
                            "name": "calldataload",
                            "nativeSrc": "14423:12:136",
                            "nodeType": "YulIdentifier",
                            "src": "14423:12:136"
                          },
                          "nativeSrc": "14423:17:136",
                          "nodeType": "YulFunctionCall",
                          "src": "14423:17:136"
                        },
                        "variables": [
                          {
                            "name": "innerOffset",
                            "nativeSrc": "14408:11:136",
                            "nodeType": "YulTypedName",
                            "src": "14408:11:136",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "body": {
                          "nativeSrc": "14492:16:136",
                          "nodeType": "YulBlock",
                          "src": "14492:16:136",
                          "statements": [
                            {
                              "expression": {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "14501:1:136",
                                    "nodeType": "YulLiteral",
                                    "src": "14501:1:136",
                                    "type": "",
                                    "value": "0"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "14504:1:136",
                                    "nodeType": "YulLiteral",
                                    "src": "14504:1:136",
                                    "type": "",
                                    "value": "0"
                                  }
                                ],
                                "functionName": {
                                  "name": "revert",
                                  "nativeSrc": "14494:6:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "14494:6:136"
                                },
                                "nativeSrc": "14494:12:136",
                                "nodeType": "YulFunctionCall",
                                "src": "14494:12:136"
                              },
                              "nativeSrc": "14494:12:136",
                              "nodeType": "YulExpressionStatement",
                              "src": "14494:12:136"
                            }
                          ]
                        },
                        "condition": {
                          "arguments": [
                            {
                              "name": "innerOffset",
                              "nativeSrc": "14459:11:136",
                              "nodeType": "YulIdentifier",
                              "src": "14459:11:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "14472:18:136",
                              "nodeType": "YulLiteral",
                              "src": "14472:18:136",
                              "type": "",
                              "value": "0xffffffffffffffff"
                            }
                          ],
                          "functionName": {
                            "name": "gt",
                            "nativeSrc": "14456:2:136",
                            "nodeType": "YulIdentifier",
                            "src": "14456:2:136"
                          },
                          "nativeSrc": "14456:35:136",
                          "nodeType": "YulFunctionCall",
                          "src": "14456:35:136"
                        },
                        "nativeSrc": "14453:55:136",
                        "nodeType": "YulIf",
                        "src": "14453:55:136"
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "name": "dst",
                              "nativeSrc": "14528:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "14528:3:136"
                            },
                            {
                              "arguments": [
                                {
                                  "arguments": [
                                    {
                                      "name": "offset",
                                      "nativeSrc": "14554:6:136",
                                      "nodeType": "YulIdentifier",
                                      "src": "14554:6:136"
                                    },
                                    {
                                      "name": "innerOffset",
                                      "nativeSrc": "14562:11:136",
                                      "nodeType": "YulIdentifier",
                                      "src": "14562:11:136"
                                    }
                                  ],
                                  "functionName": {
                                    "name": "add",
                                    "nativeSrc": "14550:3:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "14550:3:136"
                                  },
                                  "nativeSrc": "14550:24:136",
                                  "nodeType": "YulFunctionCall",
                                  "src": "14550:24:136"
                                },
                                {
                                  "name": "end",
                                  "nativeSrc": "14576:3:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "14576:3:136"
                                }
                              ],
                              "functionName": {
                                "name": "abi_decode_bytes",
                                "nativeSrc": "14533:16:136",
                                "nodeType": "YulIdentifier",
                                "src": "14533:16:136"
                              },
                              "nativeSrc": "14533:47:136",
                              "nodeType": "YulFunctionCall",
                              "src": "14533:47:136"
                            }
                          ],
                          "functionName": {
                            "name": "mstore",
                            "nativeSrc": "14521:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "14521:6:136"
                          },
                          "nativeSrc": "14521:60:136",
                          "nodeType": "YulFunctionCall",
                          "src": "14521:60:136"
                        },
                        "nativeSrc": "14521:60:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "14521:60:136"
                      },
                      {
                        "nativeSrc": "14594:21:136",
                        "nodeType": "YulAssignment",
                        "src": "14594:21:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "dst",
                              "nativeSrc": "14605:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "14605:3:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "14610:4:136",
                              "nodeType": "YulLiteral",
                              "src": "14610:4:136",
                              "type": "",
                              "value": "0x20"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "14601:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "14601:3:136"
                          },
                          "nativeSrc": "14601:14:136",
                          "nodeType": "YulFunctionCall",
                          "src": "14601:14:136"
                        },
                        "variableNames": [
                          {
                            "name": "dst",
                            "nativeSrc": "14594:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "14594:3:136"
                          }
                        ]
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "src",
                        "nativeSrc": "14343:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "14343:3:136"
                      },
                      {
                        "name": "srcEnd",
                        "nativeSrc": "14348:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "14348:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "lt",
                      "nativeSrc": "14340:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "14340:2:136"
                    },
                    "nativeSrc": "14340:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "14340:15:136"
                  },
                  "nativeSrc": "14332:293:136",
                  "nodeType": "YulForLoop",
                  "post": {
                    "nativeSrc": "14356:25:136",
                    "nodeType": "YulBlock",
                    "src": "14356:25:136",
                    "statements": [
                      {
                        "nativeSrc": "14358:21:136",
                        "nodeType": "YulAssignment",
                        "src": "14358:21:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "src",
                              "nativeSrc": "14369:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "14369:3:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "14374:4:136",
                              "nodeType": "YulLiteral",
                              "src": "14374:4:136",
                              "type": "",
                              "value": "0x20"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "14365:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "14365:3:136"
                          },
                          "nativeSrc": "14365:14:136",
                          "nodeType": "YulFunctionCall",
                          "src": "14365:14:136"
                        },
                        "variableNames": [
                          {
                            "name": "src",
                            "nativeSrc": "14358:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "14358:3:136"
                          }
                        ]
                      }
                    ]
                  },
                  "pre": {
                    "nativeSrc": "14336:3:136",
                    "nodeType": "YulBlock",
                    "src": "14336:3:136",
                    "statements": []
                  },
                  "src": "14332:293:136"
                }
              ]
            },
            "name": "abi_decode_available_length_array_string_dyn",
            "nativeSrc": "13934:697:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "offset",
                "nativeSrc": "13988:6:136",
                "nodeType": "YulTypedName",
                "src": "13988:6:136",
                "type": ""
              },
              {
                "name": "length",
                "nativeSrc": "13996:6:136",
                "nodeType": "YulTypedName",
                "src": "13996:6:136",
                "type": ""
              },
              {
                "name": "end",
                "nativeSrc": "14004:3:136",
                "nodeType": "YulTypedName",
                "src": "14004:3:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "array",
                "nativeSrc": "14012:5:136",
                "nodeType": "YulTypedName",
                "src": "14012:5:136",
                "type": ""
              }
            ],
            "src": "13934:697:136"
          },
          {
            "body": {
              "nativeSrc": "14699:179:136",
              "nodeType": "YulBlock",
              "src": "14699:179:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "14748:16:136",
                    "nodeType": "YulBlock",
                    "src": "14748:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "14757:1:136",
                              "nodeType": "YulLiteral",
                              "src": "14757:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "14760:1:136",
                              "nodeType": "YulLiteral",
                              "src": "14760:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "14750:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "14750:6:136"
                          },
                          "nativeSrc": "14750:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "14750:12:136"
                        },
                        "nativeSrc": "14750:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "14750:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "offset",
                                "nativeSrc": "14727:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "14727:6:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "14735:4:136",
                                "nodeType": "YulLiteral",
                                "src": "14735:4:136",
                                "type": "",
                                "value": "0x1f"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "14723:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "14723:3:136"
                            },
                            "nativeSrc": "14723:17:136",
                            "nodeType": "YulFunctionCall",
                            "src": "14723:17:136"
                          },
                          {
                            "name": "end",
                            "nativeSrc": "14742:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "14742:3:136"
                          }
                        ],
                        "functionName": {
                          "name": "slt",
                          "nativeSrc": "14719:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "14719:3:136"
                        },
                        "nativeSrc": "14719:27:136",
                        "nodeType": "YulFunctionCall",
                        "src": "14719:27:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "14712:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "14712:6:136"
                    },
                    "nativeSrc": "14712:35:136",
                    "nodeType": "YulFunctionCall",
                    "src": "14712:35:136"
                  },
                  "nativeSrc": "14709:55:136",
                  "nodeType": "YulIf",
                  "src": "14709:55:136"
                },
                {
                  "nativeSrc": "14773:99:136",
                  "nodeType": "YulAssignment",
                  "src": "14773:99:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "offset",
                            "nativeSrc": "14831:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "14831:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "14839:4:136",
                            "nodeType": "YulLiteral",
                            "src": "14839:4:136",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "14827:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "14827:3:136"
                        },
                        "nativeSrc": "14827:17:136",
                        "nodeType": "YulFunctionCall",
                        "src": "14827:17:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "offset",
                            "nativeSrc": "14859:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "14859:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "calldataload",
                          "nativeSrc": "14846:12:136",
                          "nodeType": "YulIdentifier",
                          "src": "14846:12:136"
                        },
                        "nativeSrc": "14846:20:136",
                        "nodeType": "YulFunctionCall",
                        "src": "14846:20:136"
                      },
                      {
                        "name": "end",
                        "nativeSrc": "14868:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "14868:3:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_available_length_array_string_dyn",
                      "nativeSrc": "14782:44:136",
                      "nodeType": "YulIdentifier",
                      "src": "14782:44:136"
                    },
                    "nativeSrc": "14782:90:136",
                    "nodeType": "YulFunctionCall",
                    "src": "14782:90:136"
                  },
                  "variableNames": [
                    {
                      "name": "array",
                      "nativeSrc": "14773:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "14773:5:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_array_string_dyn",
            "nativeSrc": "14636:242:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "offset",
                "nativeSrc": "14673:6:136",
                "nodeType": "YulTypedName",
                "src": "14673:6:136",
                "type": ""
              },
              {
                "name": "end",
                "nativeSrc": "14681:3:136",
                "nodeType": "YulTypedName",
                "src": "14681:3:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "array",
                "nativeSrc": "14689:5:136",
                "nodeType": "YulTypedName",
                "src": "14689:5:136",
                "type": ""
              }
            ],
            "src": "14636:242:136"
          },
          {
            "body": {
              "nativeSrc": "15038:456:136",
              "nodeType": "YulBlock",
              "src": "15038:456:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "15084:16:136",
                    "nodeType": "YulBlock",
                    "src": "15084:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "15093:1:136",
                              "nodeType": "YulLiteral",
                              "src": "15093:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "15096:1:136",
                              "nodeType": "YulLiteral",
                              "src": "15096:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "15086:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "15086:6:136"
                          },
                          "nativeSrc": "15086:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "15086:12:136"
                        },
                        "nativeSrc": "15086:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "15086:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "15059:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "15059:7:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "15068:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "15068:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "15055:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "15055:3:136"
                        },
                        "nativeSrc": "15055:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "15055:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "15080:2:136",
                        "nodeType": "YulLiteral",
                        "src": "15080:2:136",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "15051:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "15051:3:136"
                    },
                    "nativeSrc": "15051:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "15051:32:136"
                  },
                  "nativeSrc": "15048:52:136",
                  "nodeType": "YulIf",
                  "src": "15048:52:136"
                },
                {
                  "nativeSrc": "15109:37:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "15109:37:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "15136:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "15136:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "15123:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "15123:12:136"
                    },
                    "nativeSrc": "15123:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "15123:23:136"
                  },
                  "variables": [
                    {
                      "name": "offset",
                      "nativeSrc": "15113:6:136",
                      "nodeType": "YulTypedName",
                      "src": "15113:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "15189:16:136",
                    "nodeType": "YulBlock",
                    "src": "15189:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "15198:1:136",
                              "nodeType": "YulLiteral",
                              "src": "15198:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "15201:1:136",
                              "nodeType": "YulLiteral",
                              "src": "15201:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "15191:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "15191:6:136"
                          },
                          "nativeSrc": "15191:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "15191:12:136"
                        },
                        "nativeSrc": "15191:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "15191:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "15161:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "15161:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "15169:18:136",
                        "nodeType": "YulLiteral",
                        "src": "15169:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "15158:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "15158:2:136"
                    },
                    "nativeSrc": "15158:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "15158:30:136"
                  },
                  "nativeSrc": "15155:50:136",
                  "nodeType": "YulIf",
                  "src": "15155:50:136"
                },
                {
                  "nativeSrc": "15214:75:136",
                  "nodeType": "YulAssignment",
                  "src": "15214:75:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "15261:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "15261:9:136"
                          },
                          {
                            "name": "offset",
                            "nativeSrc": "15272:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "15272:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "15257:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "15257:3:136"
                        },
                        "nativeSrc": "15257:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "15257:22:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "15281:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "15281:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_struct_RadonRetrieval",
                      "nativeSrc": "15224:32:136",
                      "nodeType": "YulIdentifier",
                      "src": "15224:32:136"
                    },
                    "nativeSrc": "15224:65:136",
                    "nodeType": "YulFunctionCall",
                    "src": "15224:65:136"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "15214:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "15214:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "15298:48:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "15298:48:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "15331:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "15331:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "15342:2:136",
                            "nodeType": "YulLiteral",
                            "src": "15342:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "15327:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "15327:3:136"
                        },
                        "nativeSrc": "15327:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "15327:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "15314:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "15314:12:136"
                    },
                    "nativeSrc": "15314:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "15314:32:136"
                  },
                  "variables": [
                    {
                      "name": "offset_1",
                      "nativeSrc": "15302:8:136",
                      "nodeType": "YulTypedName",
                      "src": "15302:8:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "15391:16:136",
                    "nodeType": "YulBlock",
                    "src": "15391:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "15400:1:136",
                              "nodeType": "YulLiteral",
                              "src": "15400:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "15403:1:136",
                              "nodeType": "YulLiteral",
                              "src": "15403:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "15393:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "15393:6:136"
                          },
                          "nativeSrc": "15393:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "15393:12:136"
                        },
                        "nativeSrc": "15393:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "15393:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_1",
                        "nativeSrc": "15361:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "15361:8:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "15371:18:136",
                        "nodeType": "YulLiteral",
                        "src": "15371:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "15358:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "15358:2:136"
                    },
                    "nativeSrc": "15358:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "15358:32:136"
                  },
                  "nativeSrc": "15355:52:136",
                  "nodeType": "YulIf",
                  "src": "15355:52:136"
                },
                {
                  "nativeSrc": "15416:72:136",
                  "nodeType": "YulAssignment",
                  "src": "15416:72:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "15458:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "15458:9:136"
                          },
                          {
                            "name": "offset_1",
                            "nativeSrc": "15469:8:136",
                            "nodeType": "YulIdentifier",
                            "src": "15469:8:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "15454:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "15454:3:136"
                        },
                        "nativeSrc": "15454:24:136",
                        "nodeType": "YulFunctionCall",
                        "src": "15454:24:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "15480:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "15480:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_array_string_dyn",
                      "nativeSrc": "15426:27:136",
                      "nodeType": "YulIdentifier",
                      "src": "15426:27:136"
                    },
                    "nativeSrc": "15426:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "15426:62:136"
                  },
                  "variableNames": [
                    {
                      "name": "value1",
                      "nativeSrc": "15416:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "15416:6:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_struct$_RadonRetrieval_$37795_memory_ptrt_array$_t_string_memory_ptr_$dyn_memory_ptr",
            "nativeSrc": "14883:611:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "14996:9:136",
                "nodeType": "YulTypedName",
                "src": "14996:9:136",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "15007:7:136",
                "nodeType": "YulTypedName",
                "src": "15007:7:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "15019:6:136",
                "nodeType": "YulTypedName",
                "src": "15019:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "15027:6:136",
                "nodeType": "YulTypedName",
                "src": "15027:6:136",
                "type": ""
              }
            ],
            "src": "14883:611:136"
          },
          {
            "body": {
              "nativeSrc": "15593:132:136",
              "nodeType": "YulBlock",
              "src": "15593:132:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "15639:16:136",
                    "nodeType": "YulBlock",
                    "src": "15639:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "15648:1:136",
                              "nodeType": "YulLiteral",
                              "src": "15648:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "15651:1:136",
                              "nodeType": "YulLiteral",
                              "src": "15651:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "15641:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "15641:6:136"
                          },
                          "nativeSrc": "15641:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "15641:12:136"
                        },
                        "nativeSrc": "15641:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "15641:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "15614:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "15614:7:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "15623:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "15623:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "15610:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "15610:3:136"
                        },
                        "nativeSrc": "15610:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "15610:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "15635:2:136",
                        "nodeType": "YulLiteral",
                        "src": "15635:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "15606:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "15606:3:136"
                    },
                    "nativeSrc": "15606:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "15606:32:136"
                  },
                  "nativeSrc": "15603:52:136",
                  "nodeType": "YulIf",
                  "src": "15603:52:136"
                },
                {
                  "nativeSrc": "15664:55:136",
                  "nodeType": "YulAssignment",
                  "src": "15664:55:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "15709:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "15709:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_enum_RadonReduceOpcodes",
                      "nativeSrc": "15674:34:136",
                      "nodeType": "YulIdentifier",
                      "src": "15674:34:136"
                    },
                    "nativeSrc": "15674:45:136",
                    "nodeType": "YulFunctionCall",
                    "src": "15674:45:136"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "15664:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "15664:6:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_enum$_RadonReduceOpcodes_$37762",
            "nativeSrc": "15499:226:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "15559:9:136",
                "nodeType": "YulTypedName",
                "src": "15559:9:136",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "15570:7:136",
                "nodeType": "YulTypedName",
                "src": "15570:7:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "15582:6:136",
                "nodeType": "YulTypedName",
                "src": "15582:6:136",
                "type": ""
              }
            ],
            "src": "15499:226:136"
          },
          {
            "body": {
              "nativeSrc": "15810:241:136",
              "nodeType": "YulBlock",
              "src": "15810:241:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "15856:16:136",
                    "nodeType": "YulBlock",
                    "src": "15856:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "15865:1:136",
                              "nodeType": "YulLiteral",
                              "src": "15865:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "15868:1:136",
                              "nodeType": "YulLiteral",
                              "src": "15868:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "15858:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "15858:6:136"
                          },
                          "nativeSrc": "15858:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "15858:12:136"
                        },
                        "nativeSrc": "15858:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "15858:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "15831:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "15831:7:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "15840:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "15840:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "15827:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "15827:3:136"
                        },
                        "nativeSrc": "15827:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "15827:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "15852:2:136",
                        "nodeType": "YulLiteral",
                        "src": "15852:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "15823:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "15823:3:136"
                    },
                    "nativeSrc": "15823:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "15823:32:136"
                  },
                  "nativeSrc": "15820:52:136",
                  "nodeType": "YulIf",
                  "src": "15820:52:136"
                },
                {
                  "nativeSrc": "15881:37:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "15881:37:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "15908:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "15908:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "15895:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "15895:12:136"
                    },
                    "nativeSrc": "15895:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "15895:23:136"
                  },
                  "variables": [
                    {
                      "name": "offset",
                      "nativeSrc": "15885:6:136",
                      "nodeType": "YulTypedName",
                      "src": "15885:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "15961:16:136",
                    "nodeType": "YulBlock",
                    "src": "15961:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "15970:1:136",
                              "nodeType": "YulLiteral",
                              "src": "15970:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "15973:1:136",
                              "nodeType": "YulLiteral",
                              "src": "15973:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "15963:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "15963:6:136"
                          },
                          "nativeSrc": "15963:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "15963:12:136"
                        },
                        "nativeSrc": "15963:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "15963:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "15933:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "15933:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "15941:18:136",
                        "nodeType": "YulLiteral",
                        "src": "15941:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "15930:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "15930:2:136"
                    },
                    "nativeSrc": "15930:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "15930:30:136"
                  },
                  "nativeSrc": "15927:50:136",
                  "nodeType": "YulIf",
                  "src": "15927:50:136"
                },
                {
                  "nativeSrc": "15986:59:136",
                  "nodeType": "YulAssignment",
                  "src": "15986:59:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "16017:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "16017:9:136"
                          },
                          {
                            "name": "offset",
                            "nativeSrc": "16028:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "16028:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "16013:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "16013:3:136"
                        },
                        "nativeSrc": "16013:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "16013:22:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "16037:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "16037:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_bytes",
                      "nativeSrc": "15996:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "15996:16:136"
                    },
                    "nativeSrc": "15996:49:136",
                    "nodeType": "YulFunctionCall",
                    "src": "15996:49:136"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "15986:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "15986:6:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_string_memory_ptr",
            "nativeSrc": "15730:321:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "15776:9:136",
                "nodeType": "YulTypedName",
                "src": "15776:9:136",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "15787:7:136",
                "nodeType": "YulTypedName",
                "src": "15787:7:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "15799:6:136",
                "nodeType": "YulTypedName",
                "src": "15799:6:136",
                "type": ""
              }
            ],
            "src": "15730:321:136"
          },
          {
            "body": {
              "nativeSrc": "16104:123:136",
              "nodeType": "YulBlock",
              "src": "16104:123:136",
              "statements": [
                {
                  "nativeSrc": "16114:29:136",
                  "nodeType": "YulAssignment",
                  "src": "16114:29:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "16136:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "16136:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "16123:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "16123:12:136"
                    },
                    "nativeSrc": "16123:20:136",
                    "nodeType": "YulFunctionCall",
                    "src": "16123:20:136"
                  },
                  "variableNames": [
                    {
                      "name": "value",
                      "nativeSrc": "16114:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "16114:5:136"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "16205:16:136",
                    "nodeType": "YulBlock",
                    "src": "16205:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "16214:1:136",
                              "nodeType": "YulLiteral",
                              "src": "16214:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "16217:1:136",
                              "nodeType": "YulLiteral",
                              "src": "16217:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "16207:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "16207:6:136"
                          },
                          "nativeSrc": "16207:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "16207:12:136"
                        },
                        "nativeSrc": "16207:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "16207:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "16165:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "16165:5:136"
                          },
                          {
                            "arguments": [
                              {
                                "name": "value",
                                "nativeSrc": "16176:5:136",
                                "nodeType": "YulIdentifier",
                                "src": "16176:5:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "16183:18:136",
                                "nodeType": "YulLiteral",
                                "src": "16183:18:136",
                                "type": "",
                                "value": "0xffffffffffffffff"
                              }
                            ],
                            "functionName": {
                              "name": "and",
                              "nativeSrc": "16172:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "16172:3:136"
                            },
                            "nativeSrc": "16172:30:136",
                            "nodeType": "YulFunctionCall",
                            "src": "16172:30:136"
                          }
                        ],
                        "functionName": {
                          "name": "eq",
                          "nativeSrc": "16162:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "16162:2:136"
                        },
                        "nativeSrc": "16162:41:136",
                        "nodeType": "YulFunctionCall",
                        "src": "16162:41:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "16155:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "16155:6:136"
                    },
                    "nativeSrc": "16155:49:136",
                    "nodeType": "YulFunctionCall",
                    "src": "16155:49:136"
                  },
                  "nativeSrc": "16152:69:136",
                  "nodeType": "YulIf",
                  "src": "16152:69:136"
                }
              ]
            },
            "name": "abi_decode_uint64",
            "nativeSrc": "16056:171:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "offset",
                "nativeSrc": "16083:6:136",
                "nodeType": "YulTypedName",
                "src": "16083:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value",
                "nativeSrc": "16094:5:136",
                "nodeType": "YulTypedName",
                "src": "16094:5:136",
                "type": ""
              }
            ],
            "src": "16056:171:136"
          },
          {
            "body": {
              "nativeSrc": "16331:691:136",
              "nodeType": "YulBlock",
              "src": "16331:691:136",
              "statements": [
                {
                  "nativeSrc": "16341:43:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "16341:43:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "16359:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "16359:7:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "16368:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "16368:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "16355:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "16355:3:136"
                        },
                        "nativeSrc": "16355:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "16355:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "16380:3:136",
                        "nodeType": "YulLiteral",
                        "src": "16380:3:136",
                        "type": "",
                        "value": "160"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "16351:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "16351:3:136"
                    },
                    "nativeSrc": "16351:33:136",
                    "nodeType": "YulFunctionCall",
                    "src": "16351:33:136"
                  },
                  "variables": [
                    {
                      "name": "_1",
                      "nativeSrc": "16345:2:136",
                      "nodeType": "YulTypedName",
                      "src": "16345:2:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "16399:16:136",
                    "nodeType": "YulBlock",
                    "src": "16399:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "16408:1:136",
                              "nodeType": "YulLiteral",
                              "src": "16408:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "16411:1:136",
                              "nodeType": "YulLiteral",
                              "src": "16411:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "16401:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "16401:6:136"
                          },
                          "nativeSrc": "16401:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "16401:12:136"
                        },
                        "nativeSrc": "16401:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "16401:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "name": "_1",
                    "nativeSrc": "16396:2:136",
                    "nodeType": "YulIdentifier",
                    "src": "16396:2:136"
                  },
                  "nativeSrc": "16393:22:136",
                  "nodeType": "YulIf",
                  "src": "16393:22:136"
                },
                {
                  "nativeSrc": "16424:7:136",
                  "nodeType": "YulAssignment",
                  "src": "16424:7:136",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "16430:1:136",
                    "nodeType": "YulLiteral",
                    "src": "16430:1:136",
                    "type": "",
                    "value": "0"
                  },
                  "variableNames": [
                    {
                      "name": "_1",
                      "nativeSrc": "16424:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "16424:2:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "16440:15:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "16440:15:136",
                  "value": {
                    "kind": "number",
                    "nativeSrc": "16454:1:136",
                    "nodeType": "YulLiteral",
                    "src": "16454:1:136",
                    "type": "",
                    "value": "0"
                  },
                  "variables": [
                    {
                      "name": "memPtr",
                      "nativeSrc": "16444:6:136",
                      "nodeType": "YulTypedName",
                      "src": "16444:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "16464:19:136",
                  "nodeType": "YulAssignment",
                  "src": "16464:19:136",
                  "value": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "16480:2:136",
                        "nodeType": "YulLiteral",
                        "src": "16480:2:136",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "16474:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "16474:5:136"
                    },
                    "nativeSrc": "16474:9:136",
                    "nodeType": "YulFunctionCall",
                    "src": "16474:9:136"
                  },
                  "variableNames": [
                    {
                      "name": "memPtr",
                      "nativeSrc": "16464:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "16464:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "16492:34:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "16492:34:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "memPtr",
                        "nativeSrc": "16514:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "16514:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "16522:3:136",
                        "nodeType": "YulLiteral",
                        "src": "16522:3:136",
                        "type": "",
                        "value": "160"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "16510:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "16510:3:136"
                    },
                    "nativeSrc": "16510:16:136",
                    "nodeType": "YulFunctionCall",
                    "src": "16510:16:136"
                  },
                  "variables": [
                    {
                      "name": "newFreePtr",
                      "nativeSrc": "16496:10:136",
                      "nodeType": "YulTypedName",
                      "src": "16496:10:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "16601:22:136",
                    "nodeType": "YulBlock",
                    "src": "16601:22:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x41",
                            "nativeSrc": "16603:16:136",
                            "nodeType": "YulIdentifier",
                            "src": "16603:16:136"
                          },
                          "nativeSrc": "16603:18:136",
                          "nodeType": "YulFunctionCall",
                          "src": "16603:18:136"
                        },
                        "nativeSrc": "16603:18:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "16603:18:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "newFreePtr",
                            "nativeSrc": "16544:10:136",
                            "nodeType": "YulIdentifier",
                            "src": "16544:10:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "16556:18:136",
                            "nodeType": "YulLiteral",
                            "src": "16556:18:136",
                            "type": "",
                            "value": "0xffffffffffffffff"
                          }
                        ],
                        "functionName": {
                          "name": "gt",
                          "nativeSrc": "16541:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "16541:2:136"
                        },
                        "nativeSrc": "16541:34:136",
                        "nodeType": "YulFunctionCall",
                        "src": "16541:34:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "newFreePtr",
                            "nativeSrc": "16580:10:136",
                            "nodeType": "YulIdentifier",
                            "src": "16580:10:136"
                          },
                          {
                            "name": "memPtr",
                            "nativeSrc": "16592:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "16592:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "lt",
                          "nativeSrc": "16577:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "16577:2:136"
                        },
                        "nativeSrc": "16577:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "16577:22:136"
                      }
                    ],
                    "functionName": {
                      "name": "or",
                      "nativeSrc": "16538:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "16538:2:136"
                    },
                    "nativeSrc": "16538:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "16538:62:136"
                  },
                  "nativeSrc": "16535:88:136",
                  "nodeType": "YulIf",
                  "src": "16535:88:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "16639:2:136",
                        "nodeType": "YulLiteral",
                        "src": "16639:2:136",
                        "type": "",
                        "value": "64"
                      },
                      {
                        "name": "newFreePtr",
                        "nativeSrc": "16643:10:136",
                        "nodeType": "YulIdentifier",
                        "src": "16643:10:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "16632:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "16632:6:136"
                    },
                    "nativeSrc": "16632:22:136",
                    "nodeType": "YulFunctionCall",
                    "src": "16632:22:136"
                  },
                  "nativeSrc": "16632:22:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "16632:22:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "memPtr",
                        "nativeSrc": "16670:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "16670:6:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "16695:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "16695:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_decode_uint8",
                          "nativeSrc": "16678:16:136",
                          "nodeType": "YulIdentifier",
                          "src": "16678:16:136"
                        },
                        "nativeSrc": "16678:27:136",
                        "nodeType": "YulFunctionCall",
                        "src": "16678:27:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "16663:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "16663:6:136"
                    },
                    "nativeSrc": "16663:43:136",
                    "nodeType": "YulFunctionCall",
                    "src": "16663:43:136"
                  },
                  "nativeSrc": "16663:43:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "16663:43:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "memPtr",
                            "nativeSrc": "16726:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "16726:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "16734:2:136",
                            "nodeType": "YulLiteral",
                            "src": "16734:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "16722:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "16722:3:136"
                        },
                        "nativeSrc": "16722:15:136",
                        "nodeType": "YulFunctionCall",
                        "src": "16722:15:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "headStart",
                                "nativeSrc": "16760:9:136",
                                "nodeType": "YulIdentifier",
                                "src": "16760:9:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "16771:2:136",
                                "nodeType": "YulLiteral",
                                "src": "16771:2:136",
                                "type": "",
                                "value": "32"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "16756:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "16756:3:136"
                            },
                            "nativeSrc": "16756:18:136",
                            "nodeType": "YulFunctionCall",
                            "src": "16756:18:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_decode_uint8",
                          "nativeSrc": "16739:16:136",
                          "nodeType": "YulIdentifier",
                          "src": "16739:16:136"
                        },
                        "nativeSrc": "16739:36:136",
                        "nodeType": "YulFunctionCall",
                        "src": "16739:36:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "16715:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "16715:6:136"
                    },
                    "nativeSrc": "16715:61:136",
                    "nodeType": "YulFunctionCall",
                    "src": "16715:61:136"
                  },
                  "nativeSrc": "16715:61:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "16715:61:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "memPtr",
                            "nativeSrc": "16796:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "16796:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "16804:2:136",
                            "nodeType": "YulLiteral",
                            "src": "16804:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "16792:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "16792:3:136"
                        },
                        "nativeSrc": "16792:15:136",
                        "nodeType": "YulFunctionCall",
                        "src": "16792:15:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "headStart",
                                "nativeSrc": "16831:9:136",
                                "nodeType": "YulIdentifier",
                                "src": "16831:9:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "16842:2:136",
                                "nodeType": "YulLiteral",
                                "src": "16842:2:136",
                                "type": "",
                                "value": "64"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "16827:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "16827:3:136"
                            },
                            "nativeSrc": "16827:18:136",
                            "nodeType": "YulFunctionCall",
                            "src": "16827:18:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_decode_uint64",
                          "nativeSrc": "16809:17:136",
                          "nodeType": "YulIdentifier",
                          "src": "16809:17:136"
                        },
                        "nativeSrc": "16809:37:136",
                        "nodeType": "YulFunctionCall",
                        "src": "16809:37:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "16785:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "16785:6:136"
                    },
                    "nativeSrc": "16785:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "16785:62:136"
                  },
                  "nativeSrc": "16785:62:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "16785:62:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "memPtr",
                            "nativeSrc": "16867:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "16867:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "16875:2:136",
                            "nodeType": "YulLiteral",
                            "src": "16875:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "16863:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "16863:3:136"
                        },
                        "nativeSrc": "16863:15:136",
                        "nodeType": "YulFunctionCall",
                        "src": "16863:15:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "headStart",
                                "nativeSrc": "16902:9:136",
                                "nodeType": "YulIdentifier",
                                "src": "16902:9:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "16913:2:136",
                                "nodeType": "YulLiteral",
                                "src": "16913:2:136",
                                "type": "",
                                "value": "96"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "16898:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "16898:3:136"
                            },
                            "nativeSrc": "16898:18:136",
                            "nodeType": "YulFunctionCall",
                            "src": "16898:18:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_decode_uint64",
                          "nativeSrc": "16880:17:136",
                          "nodeType": "YulIdentifier",
                          "src": "16880:17:136"
                        },
                        "nativeSrc": "16880:37:136",
                        "nodeType": "YulFunctionCall",
                        "src": "16880:37:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "16856:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "16856:6:136"
                    },
                    "nativeSrc": "16856:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "16856:62:136"
                  },
                  "nativeSrc": "16856:62:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "16856:62:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "memPtr",
                            "nativeSrc": "16938:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "16938:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "16946:3:136",
                            "nodeType": "YulLiteral",
                            "src": "16946:3:136",
                            "type": "",
                            "value": "128"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "16934:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "16934:3:136"
                        },
                        "nativeSrc": "16934:16:136",
                        "nodeType": "YulFunctionCall",
                        "src": "16934:16:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "headStart",
                                "nativeSrc": "16974:9:136",
                                "nodeType": "YulIdentifier",
                                "src": "16974:9:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "16985:3:136",
                                "nodeType": "YulLiteral",
                                "src": "16985:3:136",
                                "type": "",
                                "value": "128"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "16970:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "16970:3:136"
                            },
                            "nativeSrc": "16970:19:136",
                            "nodeType": "YulFunctionCall",
                            "src": "16970:19:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_decode_uint64",
                          "nativeSrc": "16952:17:136",
                          "nodeType": "YulIdentifier",
                          "src": "16952:17:136"
                        },
                        "nativeSrc": "16952:38:136",
                        "nodeType": "YulFunctionCall",
                        "src": "16952:38:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "16927:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "16927:6:136"
                    },
                    "nativeSrc": "16927:64:136",
                    "nodeType": "YulFunctionCall",
                    "src": "16927:64:136"
                  },
                  "nativeSrc": "16927:64:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "16927:64:136"
                },
                {
                  "nativeSrc": "17000:16:136",
                  "nodeType": "YulAssignment",
                  "src": "17000:16:136",
                  "value": {
                    "name": "memPtr",
                    "nativeSrc": "17010:6:136",
                    "nodeType": "YulIdentifier",
                    "src": "17010:6:136"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "17000:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "17000:6:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_struct$_RadonSLAv1_$37814_memory_ptr",
            "nativeSrc": "16232:790:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "16297:9:136",
                "nodeType": "YulTypedName",
                "src": "16297:9:136",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "16308:7:136",
                "nodeType": "YulTypedName",
                "src": "16308:7:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "16320:6:136",
                "nodeType": "YulTypedName",
                "src": "16320:6:136",
                "type": ""
              }
            ],
            "src": "16232:790:136"
          },
          {
            "body": {
              "nativeSrc": "17123:292:136",
              "nodeType": "YulBlock",
              "src": "17123:292:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "17169:16:136",
                    "nodeType": "YulBlock",
                    "src": "17169:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "17178:1:136",
                              "nodeType": "YulLiteral",
                              "src": "17178:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "17181:1:136",
                              "nodeType": "YulLiteral",
                              "src": "17181:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "17171:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "17171:6:136"
                          },
                          "nativeSrc": "17171:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "17171:12:136"
                        },
                        "nativeSrc": "17171:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "17171:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "17144:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "17144:7:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "17153:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "17153:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "17140:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "17140:3:136"
                        },
                        "nativeSrc": "17140:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "17140:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "17165:2:136",
                        "nodeType": "YulLiteral",
                        "src": "17165:2:136",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "17136:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "17136:3:136"
                    },
                    "nativeSrc": "17136:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "17136:32:136"
                  },
                  "nativeSrc": "17133:52:136",
                  "nodeType": "YulIf",
                  "src": "17133:52:136"
                },
                {
                  "nativeSrc": "17194:37:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "17194:37:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "17221:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "17221:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "17208:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "17208:12:136"
                    },
                    "nativeSrc": "17208:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "17208:23:136"
                  },
                  "variables": [
                    {
                      "name": "offset",
                      "nativeSrc": "17198:6:136",
                      "nodeType": "YulTypedName",
                      "src": "17198:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "17274:16:136",
                    "nodeType": "YulBlock",
                    "src": "17274:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "17283:1:136",
                              "nodeType": "YulLiteral",
                              "src": "17283:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "17286:1:136",
                              "nodeType": "YulLiteral",
                              "src": "17286:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "17276:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "17276:6:136"
                          },
                          "nativeSrc": "17276:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "17276:12:136"
                        },
                        "nativeSrc": "17276:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "17276:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "17246:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "17246:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "17254:18:136",
                        "nodeType": "YulLiteral",
                        "src": "17254:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "17243:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "17243:2:136"
                    },
                    "nativeSrc": "17243:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "17243:30:136"
                  },
                  "nativeSrc": "17240:50:136",
                  "nodeType": "YulIf",
                  "src": "17240:50:136"
                },
                {
                  "nativeSrc": "17299:59:136",
                  "nodeType": "YulAssignment",
                  "src": "17299:59:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "17330:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "17330:9:136"
                          },
                          {
                            "name": "offset",
                            "nativeSrc": "17341:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "17341:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "17326:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "17326:3:136"
                        },
                        "nativeSrc": "17326:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "17326:22:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "17350:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "17350:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_bytes",
                      "nativeSrc": "17309:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "17309:16:136"
                    },
                    "nativeSrc": "17309:49:136",
                    "nodeType": "YulFunctionCall",
                    "src": "17309:49:136"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "17299:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "17299:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "17367:42:136",
                  "nodeType": "YulAssignment",
                  "src": "17367:42:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "17394:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "17394:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "17405:2:136",
                            "nodeType": "YulLiteral",
                            "src": "17405:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "17390:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "17390:3:136"
                        },
                        "nativeSrc": "17390:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "17390:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "17377:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "17377:12:136"
                    },
                    "nativeSrc": "17377:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "17377:32:136"
                  },
                  "variableNames": [
                    {
                      "name": "value1",
                      "nativeSrc": "17367:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "17367:6:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_bytes_memory_ptrt_uint256",
            "nativeSrc": "17027:388:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "17081:9:136",
                "nodeType": "YulTypedName",
                "src": "17081:9:136",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "17092:7:136",
                "nodeType": "YulTypedName",
                "src": "17092:7:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "17104:6:136",
                "nodeType": "YulTypedName",
                "src": "17104:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "17112:6:136",
                "nodeType": "YulTypedName",
                "src": "17112:6:136",
                "type": ""
              }
            ],
            "src": "17027:388:136"
          },
          {
            "body": {
              "nativeSrc": "17520:254:136",
              "nodeType": "YulBlock",
              "src": "17520:254:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "17566:16:136",
                    "nodeType": "YulBlock",
                    "src": "17566:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "17575:1:136",
                              "nodeType": "YulLiteral",
                              "src": "17575:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "17578:1:136",
                              "nodeType": "YulLiteral",
                              "src": "17578:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "17568:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "17568:6:136"
                          },
                          "nativeSrc": "17568:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "17568:12:136"
                        },
                        "nativeSrc": "17568:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "17568:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "17541:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "17541:7:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "17550:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "17550:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "17537:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "17537:3:136"
                        },
                        "nativeSrc": "17537:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "17537:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "17562:2:136",
                        "nodeType": "YulLiteral",
                        "src": "17562:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "17533:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "17533:3:136"
                    },
                    "nativeSrc": "17533:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "17533:32:136"
                  },
                  "nativeSrc": "17530:52:136",
                  "nodeType": "YulIf",
                  "src": "17530:52:136"
                },
                {
                  "nativeSrc": "17591:37:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "17591:37:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "17618:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "17618:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "17605:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "17605:12:136"
                    },
                    "nativeSrc": "17605:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "17605:23:136"
                  },
                  "variables": [
                    {
                      "name": "offset",
                      "nativeSrc": "17595:6:136",
                      "nodeType": "YulTypedName",
                      "src": "17595:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "17671:16:136",
                    "nodeType": "YulBlock",
                    "src": "17671:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "17680:1:136",
                              "nodeType": "YulLiteral",
                              "src": "17680:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "17683:1:136",
                              "nodeType": "YulLiteral",
                              "src": "17683:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "17673:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "17673:6:136"
                          },
                          "nativeSrc": "17673:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "17673:12:136"
                        },
                        "nativeSrc": "17673:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "17673:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "17643:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "17643:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "17651:18:136",
                        "nodeType": "YulLiteral",
                        "src": "17651:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "17640:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "17640:2:136"
                    },
                    "nativeSrc": "17640:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "17640:30:136"
                  },
                  "nativeSrc": "17637:50:136",
                  "nodeType": "YulIf",
                  "src": "17637:50:136"
                },
                {
                  "nativeSrc": "17696:72:136",
                  "nodeType": "YulAssignment",
                  "src": "17696:72:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "17740:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "17740:9:136"
                          },
                          {
                            "name": "offset",
                            "nativeSrc": "17751:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "17751:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "17736:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "17736:3:136"
                        },
                        "nativeSrc": "17736:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "17736:22:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "17760:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "17760:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_struct_RadonFilter",
                      "nativeSrc": "17706:29:136",
                      "nodeType": "YulIdentifier",
                      "src": "17706:29:136"
                    },
                    "nativeSrc": "17706:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "17706:62:136"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "17696:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "17696:6:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_struct$_RadonFilter_$37727_memory_ptr",
            "nativeSrc": "17420:354:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "17486:9:136",
                "nodeType": "YulTypedName",
                "src": "17486:9:136",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "17497:7:136",
                "nodeType": "YulTypedName",
                "src": "17497:7:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "17509:6:136",
                "nodeType": "YulTypedName",
                "src": "17509:6:136",
                "type": ""
              }
            ],
            "src": "17420:354:136"
          },
          {
            "body": {
              "nativeSrc": "17864:266:136",
              "nodeType": "YulBlock",
              "src": "17864:266:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "17910:16:136",
                    "nodeType": "YulBlock",
                    "src": "17910:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "17919:1:136",
                              "nodeType": "YulLiteral",
                              "src": "17919:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "17922:1:136",
                              "nodeType": "YulLiteral",
                              "src": "17922:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "17912:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "17912:6:136"
                          },
                          "nativeSrc": "17912:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "17912:12:136"
                        },
                        "nativeSrc": "17912:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "17912:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "17885:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "17885:7:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "17894:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "17894:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "17881:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "17881:3:136"
                        },
                        "nativeSrc": "17881:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "17881:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "17906:2:136",
                        "nodeType": "YulLiteral",
                        "src": "17906:2:136",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "17877:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "17877:3:136"
                    },
                    "nativeSrc": "17877:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "17877:32:136"
                  },
                  "nativeSrc": "17874:52:136",
                  "nodeType": "YulIf",
                  "src": "17874:52:136"
                },
                {
                  "nativeSrc": "17935:38:136",
                  "nodeType": "YulAssignment",
                  "src": "17935:38:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "17963:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "17963:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_uint64",
                      "nativeSrc": "17945:17:136",
                      "nodeType": "YulIdentifier",
                      "src": "17945:17:136"
                    },
                    "nativeSrc": "17945:28:136",
                    "nodeType": "YulFunctionCall",
                    "src": "17945:28:136"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "17935:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "17935:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "17982:45:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "17982:45:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "18012:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "18012:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "18023:2:136",
                            "nodeType": "YulLiteral",
                            "src": "18023:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "18008:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "18008:3:136"
                        },
                        "nativeSrc": "18008:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "18008:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "17995:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "17995:12:136"
                    },
                    "nativeSrc": "17995:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "17995:32:136"
                  },
                  "variables": [
                    {
                      "name": "value",
                      "nativeSrc": "17986:5:136",
                      "nodeType": "YulTypedName",
                      "src": "17986:5:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "18084:16:136",
                    "nodeType": "YulBlock",
                    "src": "18084:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "18093:1:136",
                              "nodeType": "YulLiteral",
                              "src": "18093:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "18096:1:136",
                              "nodeType": "YulLiteral",
                              "src": "18096:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "18086:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "18086:6:136"
                          },
                          "nativeSrc": "18086:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "18086:12:136"
                        },
                        "nativeSrc": "18086:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "18086:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "18049:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "18049:5:136"
                          },
                          {
                            "arguments": [
                              {
                                "name": "value",
                                "nativeSrc": "18060:5:136",
                                "nodeType": "YulIdentifier",
                                "src": "18060:5:136"
                              },
                              {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "18071:3:136",
                                    "nodeType": "YulLiteral",
                                    "src": "18071:3:136",
                                    "type": "",
                                    "value": "248"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "18076:3:136",
                                    "nodeType": "YulLiteral",
                                    "src": "18076:3:136",
                                    "type": "",
                                    "value": "255"
                                  }
                                ],
                                "functionName": {
                                  "name": "shl",
                                  "nativeSrc": "18067:3:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "18067:3:136"
                                },
                                "nativeSrc": "18067:13:136",
                                "nodeType": "YulFunctionCall",
                                "src": "18067:13:136"
                              }
                            ],
                            "functionName": {
                              "name": "and",
                              "nativeSrc": "18056:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "18056:3:136"
                            },
                            "nativeSrc": "18056:25:136",
                            "nodeType": "YulFunctionCall",
                            "src": "18056:25:136"
                          }
                        ],
                        "functionName": {
                          "name": "eq",
                          "nativeSrc": "18046:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "18046:2:136"
                        },
                        "nativeSrc": "18046:36:136",
                        "nodeType": "YulFunctionCall",
                        "src": "18046:36:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "18039:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "18039:6:136"
                    },
                    "nativeSrc": "18039:44:136",
                    "nodeType": "YulFunctionCall",
                    "src": "18039:44:136"
                  },
                  "nativeSrc": "18036:64:136",
                  "nodeType": "YulIf",
                  "src": "18036:64:136"
                },
                {
                  "nativeSrc": "18109:15:136",
                  "nodeType": "YulAssignment",
                  "src": "18109:15:136",
                  "value": {
                    "name": "value",
                    "nativeSrc": "18119:5:136",
                    "nodeType": "YulIdentifier",
                    "src": "18119:5:136"
                  },
                  "variableNames": [
                    {
                      "name": "value1",
                      "nativeSrc": "18109:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "18109:6:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_uint64t_bytes1",
            "nativeSrc": "17779:351:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "17822:9:136",
                "nodeType": "YulTypedName",
                "src": "17822:9:136",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "17833:7:136",
                "nodeType": "YulTypedName",
                "src": "17833:7:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "17845:6:136",
                "nodeType": "YulTypedName",
                "src": "17845:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "17853:6:136",
                "nodeType": "YulTypedName",
                "src": "17853:6:136",
                "type": ""
              }
            ],
            "src": "17779:351:136"
          },
          {
            "body": {
              "nativeSrc": "18213:790:136",
              "nodeType": "YulBlock",
              "src": "18213:790:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "18262:16:136",
                    "nodeType": "YulBlock",
                    "src": "18262:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "18271:1:136",
                              "nodeType": "YulLiteral",
                              "src": "18271:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "18274:1:136",
                              "nodeType": "YulLiteral",
                              "src": "18274:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "18264:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "18264:6:136"
                          },
                          "nativeSrc": "18264:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "18264:12:136"
                        },
                        "nativeSrc": "18264:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "18264:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "offset",
                                "nativeSrc": "18241:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "18241:6:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "18249:4:136",
                                "nodeType": "YulLiteral",
                                "src": "18249:4:136",
                                "type": "",
                                "value": "0x1f"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "18237:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "18237:3:136"
                            },
                            "nativeSrc": "18237:17:136",
                            "nodeType": "YulFunctionCall",
                            "src": "18237:17:136"
                          },
                          {
                            "name": "end",
                            "nativeSrc": "18256:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "18256:3:136"
                          }
                        ],
                        "functionName": {
                          "name": "slt",
                          "nativeSrc": "18233:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "18233:3:136"
                        },
                        "nativeSrc": "18233:27:136",
                        "nodeType": "YulFunctionCall",
                        "src": "18233:27:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "18226:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "18226:6:136"
                    },
                    "nativeSrc": "18226:35:136",
                    "nodeType": "YulFunctionCall",
                    "src": "18226:35:136"
                  },
                  "nativeSrc": "18223:55:136",
                  "nodeType": "YulIf",
                  "src": "18223:55:136"
                },
                {
                  "nativeSrc": "18287:34:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "18287:34:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "18314:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "18314:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "18301:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "18301:12:136"
                    },
                    "nativeSrc": "18301:20:136",
                    "nodeType": "YulFunctionCall",
                    "src": "18301:20:136"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "18291:6:136",
                      "nodeType": "YulTypedName",
                      "src": "18291:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "18330:86:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "18330:86:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "length",
                            "nativeSrc": "18408:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "18408:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "array_allocation_size_array_struct_RadonFilter_dyn",
                          "nativeSrc": "18357:50:136",
                          "nodeType": "YulIdentifier",
                          "src": "18357:50:136"
                        },
                        "nativeSrc": "18357:58:136",
                        "nodeType": "YulFunctionCall",
                        "src": "18357:58:136"
                      }
                    ],
                    "functionName": {
                      "name": "allocate_memory",
                      "nativeSrc": "18341:15:136",
                      "nodeType": "YulIdentifier",
                      "src": "18341:15:136"
                    },
                    "nativeSrc": "18341:75:136",
                    "nodeType": "YulFunctionCall",
                    "src": "18341:75:136"
                  },
                  "variables": [
                    {
                      "name": "dst",
                      "nativeSrc": "18334:3:136",
                      "nodeType": "YulTypedName",
                      "src": "18334:3:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "18425:18:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "18425:18:136",
                  "value": {
                    "name": "dst",
                    "nativeSrc": "18440:3:136",
                    "nodeType": "YulIdentifier",
                    "src": "18440:3:136"
                  },
                  "variables": [
                    {
                      "name": "array_1",
                      "nativeSrc": "18429:7:136",
                      "nodeType": "YulTypedName",
                      "src": "18429:7:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "dst",
                        "nativeSrc": "18459:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "18459:3:136"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "18464:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "18464:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "18452:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "18452:6:136"
                    },
                    "nativeSrc": "18452:19:136",
                    "nodeType": "YulFunctionCall",
                    "src": "18452:19:136"
                  },
                  "nativeSrc": "18452:19:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "18452:19:136"
                },
                {
                  "nativeSrc": "18480:21:136",
                  "nodeType": "YulAssignment",
                  "src": "18480:21:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "dst",
                        "nativeSrc": "18491:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "18491:3:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "18496:4:136",
                        "nodeType": "YulLiteral",
                        "src": "18496:4:136",
                        "type": "",
                        "value": "0x20"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "18487:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "18487:3:136"
                    },
                    "nativeSrc": "18487:14:136",
                    "nodeType": "YulFunctionCall",
                    "src": "18487:14:136"
                  },
                  "variableNames": [
                    {
                      "name": "dst",
                      "nativeSrc": "18480:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "18480:3:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "18510:52:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "18510:52:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "offset",
                            "nativeSrc": "18532:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "18532:6:136"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "18544:1:136",
                                "nodeType": "YulLiteral",
                                "src": "18544:1:136",
                                "type": "",
                                "value": "5"
                              },
                              {
                                "name": "length",
                                "nativeSrc": "18547:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "18547:6:136"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "18540:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "18540:3:136"
                            },
                            "nativeSrc": "18540:14:136",
                            "nodeType": "YulFunctionCall",
                            "src": "18540:14:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "18528:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "18528:3:136"
                        },
                        "nativeSrc": "18528:27:136",
                        "nodeType": "YulFunctionCall",
                        "src": "18528:27:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "18557:4:136",
                        "nodeType": "YulLiteral",
                        "src": "18557:4:136",
                        "type": "",
                        "value": "0x20"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "18524:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "18524:3:136"
                    },
                    "nativeSrc": "18524:38:136",
                    "nodeType": "YulFunctionCall",
                    "src": "18524:38:136"
                  },
                  "variables": [
                    {
                      "name": "srcEnd",
                      "nativeSrc": "18514:6:136",
                      "nodeType": "YulTypedName",
                      "src": "18514:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "18590:16:136",
                    "nodeType": "YulBlock",
                    "src": "18590:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "18599:1:136",
                              "nodeType": "YulLiteral",
                              "src": "18599:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "18602:1:136",
                              "nodeType": "YulLiteral",
                              "src": "18602:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "18592:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "18592:6:136"
                          },
                          "nativeSrc": "18592:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "18592:12:136"
                        },
                        "nativeSrc": "18592:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "18592:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "srcEnd",
                        "nativeSrc": "18577:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "18577:6:136"
                      },
                      {
                        "name": "end",
                        "nativeSrc": "18585:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "18585:3:136"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "18574:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "18574:2:136"
                    },
                    "nativeSrc": "18574:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "18574:15:136"
                  },
                  "nativeSrc": "18571:35:136",
                  "nodeType": "YulIf",
                  "src": "18571:35:136"
                },
                {
                  "nativeSrc": "18615:28:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "18615:28:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "18630:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "18630:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "18638:4:136",
                        "nodeType": "YulLiteral",
                        "src": "18638:4:136",
                        "type": "",
                        "value": "0x20"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "18626:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "18626:3:136"
                    },
                    "nativeSrc": "18626:17:136",
                    "nodeType": "YulFunctionCall",
                    "src": "18626:17:136"
                  },
                  "variables": [
                    {
                      "name": "src",
                      "nativeSrc": "18619:3:136",
                      "nodeType": "YulTypedName",
                      "src": "18619:3:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "18710:262:136",
                    "nodeType": "YulBlock",
                    "src": "18710:262:136",
                    "statements": [
                      {
                        "nativeSrc": "18724:36:136",
                        "nodeType": "YulVariableDeclaration",
                        "src": "18724:36:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "src",
                              "nativeSrc": "18756:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "18756:3:136"
                            }
                          ],
                          "functionName": {
                            "name": "calldataload",
                            "nativeSrc": "18743:12:136",
                            "nodeType": "YulIdentifier",
                            "src": "18743:12:136"
                          },
                          "nativeSrc": "18743:17:136",
                          "nodeType": "YulFunctionCall",
                          "src": "18743:17:136"
                        },
                        "variables": [
                          {
                            "name": "innerOffset",
                            "nativeSrc": "18728:11:136",
                            "nodeType": "YulTypedName",
                            "src": "18728:11:136",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "body": {
                          "nativeSrc": "18812:16:136",
                          "nodeType": "YulBlock",
                          "src": "18812:16:136",
                          "statements": [
                            {
                              "expression": {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "18821:1:136",
                                    "nodeType": "YulLiteral",
                                    "src": "18821:1:136",
                                    "type": "",
                                    "value": "0"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "18824:1:136",
                                    "nodeType": "YulLiteral",
                                    "src": "18824:1:136",
                                    "type": "",
                                    "value": "0"
                                  }
                                ],
                                "functionName": {
                                  "name": "revert",
                                  "nativeSrc": "18814:6:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "18814:6:136"
                                },
                                "nativeSrc": "18814:12:136",
                                "nodeType": "YulFunctionCall",
                                "src": "18814:12:136"
                              },
                              "nativeSrc": "18814:12:136",
                              "nodeType": "YulExpressionStatement",
                              "src": "18814:12:136"
                            }
                          ]
                        },
                        "condition": {
                          "arguments": [
                            {
                              "name": "innerOffset",
                              "nativeSrc": "18779:11:136",
                              "nodeType": "YulIdentifier",
                              "src": "18779:11:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "18792:18:136",
                              "nodeType": "YulLiteral",
                              "src": "18792:18:136",
                              "type": "",
                              "value": "0xffffffffffffffff"
                            }
                          ],
                          "functionName": {
                            "name": "gt",
                            "nativeSrc": "18776:2:136",
                            "nodeType": "YulIdentifier",
                            "src": "18776:2:136"
                          },
                          "nativeSrc": "18776:35:136",
                          "nodeType": "YulFunctionCall",
                          "src": "18776:35:136"
                        },
                        "nativeSrc": "18773:55:136",
                        "nodeType": "YulIf",
                        "src": "18773:55:136"
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "name": "dst",
                              "nativeSrc": "18848:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "18848:3:136"
                            },
                            {
                              "arguments": [
                                {
                                  "arguments": [
                                    {
                                      "arguments": [
                                        {
                                          "name": "offset",
                                          "nativeSrc": "18894:6:136",
                                          "nodeType": "YulIdentifier",
                                          "src": "18894:6:136"
                                        },
                                        {
                                          "name": "innerOffset",
                                          "nativeSrc": "18902:11:136",
                                          "nodeType": "YulIdentifier",
                                          "src": "18902:11:136"
                                        }
                                      ],
                                      "functionName": {
                                        "name": "add",
                                        "nativeSrc": "18890:3:136",
                                        "nodeType": "YulIdentifier",
                                        "src": "18890:3:136"
                                      },
                                      "nativeSrc": "18890:24:136",
                                      "nodeType": "YulFunctionCall",
                                      "src": "18890:24:136"
                                    },
                                    {
                                      "kind": "number",
                                      "nativeSrc": "18916:4:136",
                                      "nodeType": "YulLiteral",
                                      "src": "18916:4:136",
                                      "type": "",
                                      "value": "0x20"
                                    }
                                  ],
                                  "functionName": {
                                    "name": "add",
                                    "nativeSrc": "18886:3:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "18886:3:136"
                                  },
                                  "nativeSrc": "18886:35:136",
                                  "nodeType": "YulFunctionCall",
                                  "src": "18886:35:136"
                                },
                                {
                                  "name": "end",
                                  "nativeSrc": "18923:3:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "18923:3:136"
                                }
                              ],
                              "functionName": {
                                "name": "abi_decode_struct_RadonRetrieval",
                                "nativeSrc": "18853:32:136",
                                "nodeType": "YulIdentifier",
                                "src": "18853:32:136"
                              },
                              "nativeSrc": "18853:74:136",
                              "nodeType": "YulFunctionCall",
                              "src": "18853:74:136"
                            }
                          ],
                          "functionName": {
                            "name": "mstore",
                            "nativeSrc": "18841:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "18841:6:136"
                          },
                          "nativeSrc": "18841:87:136",
                          "nodeType": "YulFunctionCall",
                          "src": "18841:87:136"
                        },
                        "nativeSrc": "18841:87:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "18841:87:136"
                      },
                      {
                        "nativeSrc": "18941:21:136",
                        "nodeType": "YulAssignment",
                        "src": "18941:21:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "dst",
                              "nativeSrc": "18952:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "18952:3:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "18957:4:136",
                              "nodeType": "YulLiteral",
                              "src": "18957:4:136",
                              "type": "",
                              "value": "0x20"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "18948:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "18948:3:136"
                          },
                          "nativeSrc": "18948:14:136",
                          "nodeType": "YulFunctionCall",
                          "src": "18948:14:136"
                        },
                        "variableNames": [
                          {
                            "name": "dst",
                            "nativeSrc": "18941:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "18941:3:136"
                          }
                        ]
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "src",
                        "nativeSrc": "18663:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "18663:3:136"
                      },
                      {
                        "name": "srcEnd",
                        "nativeSrc": "18668:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "18668:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "lt",
                      "nativeSrc": "18660:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "18660:2:136"
                    },
                    "nativeSrc": "18660:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "18660:15:136"
                  },
                  "nativeSrc": "18652:320:136",
                  "nodeType": "YulForLoop",
                  "post": {
                    "nativeSrc": "18676:25:136",
                    "nodeType": "YulBlock",
                    "src": "18676:25:136",
                    "statements": [
                      {
                        "nativeSrc": "18678:21:136",
                        "nodeType": "YulAssignment",
                        "src": "18678:21:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "src",
                              "nativeSrc": "18689:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "18689:3:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "18694:4:136",
                              "nodeType": "YulLiteral",
                              "src": "18694:4:136",
                              "type": "",
                              "value": "0x20"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "18685:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "18685:3:136"
                          },
                          "nativeSrc": "18685:14:136",
                          "nodeType": "YulFunctionCall",
                          "src": "18685:14:136"
                        },
                        "variableNames": [
                          {
                            "name": "src",
                            "nativeSrc": "18678:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "18678:3:136"
                          }
                        ]
                      }
                    ]
                  },
                  "pre": {
                    "nativeSrc": "18656:3:136",
                    "nodeType": "YulBlock",
                    "src": "18656:3:136",
                    "statements": []
                  },
                  "src": "18652:320:136"
                },
                {
                  "nativeSrc": "18981:16:136",
                  "nodeType": "YulAssignment",
                  "src": "18981:16:136",
                  "value": {
                    "name": "array_1",
                    "nativeSrc": "18990:7:136",
                    "nodeType": "YulIdentifier",
                    "src": "18990:7:136"
                  },
                  "variableNames": [
                    {
                      "name": "array",
                      "nativeSrc": "18981:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "18981:5:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_array_struct_RadonRetrieval_dyn",
            "nativeSrc": "18135:868:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "offset",
                "nativeSrc": "18187:6:136",
                "nodeType": "YulTypedName",
                "src": "18187:6:136",
                "type": ""
              },
              {
                "name": "end",
                "nativeSrc": "18195:3:136",
                "nodeType": "YulTypedName",
                "src": "18195:3:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "array",
                "nativeSrc": "18203:5:136",
                "nodeType": "YulTypedName",
                "src": "18203:5:136",
                "type": ""
              }
            ],
            "src": "18135:868:136"
          },
          {
            "body": {
              "nativeSrc": "19281:1617:136",
              "nodeType": "YulBlock",
              "src": "19281:1617:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "19328:16:136",
                    "nodeType": "YulBlock",
                    "src": "19328:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "19337:1:136",
                              "nodeType": "YulLiteral",
                              "src": "19337:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "19340:1:136",
                              "nodeType": "YulLiteral",
                              "src": "19340:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "19330:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "19330:6:136"
                          },
                          "nativeSrc": "19330:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "19330:12:136"
                        },
                        "nativeSrc": "19330:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "19330:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "19302:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "19302:7:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "19311:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "19311:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "19298:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "19298:3:136"
                        },
                        "nativeSrc": "19298:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "19298:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "19323:3:136",
                        "nodeType": "YulLiteral",
                        "src": "19323:3:136",
                        "type": "",
                        "value": "160"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "19294:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "19294:3:136"
                    },
                    "nativeSrc": "19294:33:136",
                    "nodeType": "YulFunctionCall",
                    "src": "19294:33:136"
                  },
                  "nativeSrc": "19291:53:136",
                  "nodeType": "YulIf",
                  "src": "19291:53:136"
                },
                {
                  "nativeSrc": "19353:37:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "19353:37:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "19380:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "19380:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "19367:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "19367:12:136"
                    },
                    "nativeSrc": "19367:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "19367:23:136"
                  },
                  "variables": [
                    {
                      "name": "offset",
                      "nativeSrc": "19357:6:136",
                      "nodeType": "YulTypedName",
                      "src": "19357:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "19433:16:136",
                    "nodeType": "YulBlock",
                    "src": "19433:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "19442:1:136",
                              "nodeType": "YulLiteral",
                              "src": "19442:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "19445:1:136",
                              "nodeType": "YulLiteral",
                              "src": "19445:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "19435:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "19435:6:136"
                          },
                          "nativeSrc": "19435:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "19435:12:136"
                        },
                        "nativeSrc": "19435:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "19435:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "19405:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "19405:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "19413:18:136",
                        "nodeType": "YulLiteral",
                        "src": "19413:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "19402:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "19402:2:136"
                    },
                    "nativeSrc": "19402:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "19402:30:136"
                  },
                  "nativeSrc": "19399:50:136",
                  "nodeType": "YulIf",
                  "src": "19399:50:136"
                },
                {
                  "nativeSrc": "19458:85:136",
                  "nodeType": "YulAssignment",
                  "src": "19458:85:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "19515:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "19515:9:136"
                          },
                          {
                            "name": "offset",
                            "nativeSrc": "19526:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "19526:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "19511:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "19511:3:136"
                        },
                        "nativeSrc": "19511:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "19511:22:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "19535:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "19535:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_array_struct_RadonRetrieval_dyn",
                      "nativeSrc": "19468:42:136",
                      "nodeType": "YulIdentifier",
                      "src": "19468:42:136"
                    },
                    "nativeSrc": "19468:75:136",
                    "nodeType": "YulFunctionCall",
                    "src": "19468:75:136"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "19458:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "19458:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "19552:48:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "19552:48:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "19585:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "19585:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "19596:2:136",
                            "nodeType": "YulLiteral",
                            "src": "19596:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "19581:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "19581:3:136"
                        },
                        "nativeSrc": "19581:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "19581:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "19568:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "19568:12:136"
                    },
                    "nativeSrc": "19568:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "19568:32:136"
                  },
                  "variables": [
                    {
                      "name": "offset_1",
                      "nativeSrc": "19556:8:136",
                      "nodeType": "YulTypedName",
                      "src": "19556:8:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "19645:16:136",
                    "nodeType": "YulBlock",
                    "src": "19645:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "19654:1:136",
                              "nodeType": "YulLiteral",
                              "src": "19654:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "19657:1:136",
                              "nodeType": "YulLiteral",
                              "src": "19657:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "19647:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "19647:6:136"
                          },
                          "nativeSrc": "19647:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "19647:12:136"
                        },
                        "nativeSrc": "19647:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "19647:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_1",
                        "nativeSrc": "19615:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "19615:8:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "19625:18:136",
                        "nodeType": "YulLiteral",
                        "src": "19625:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "19612:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "19612:2:136"
                    },
                    "nativeSrc": "19612:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "19612:32:136"
                  },
                  "nativeSrc": "19609:52:136",
                  "nodeType": "YulIf",
                  "src": "19609:52:136"
                },
                {
                  "nativeSrc": "19670:34:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "19670:34:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "19684:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "19684:9:136"
                      },
                      {
                        "name": "offset_1",
                        "nativeSrc": "19695:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "19695:8:136"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "19680:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "19680:3:136"
                    },
                    "nativeSrc": "19680:24:136",
                    "nodeType": "YulFunctionCall",
                    "src": "19680:24:136"
                  },
                  "variables": [
                    {
                      "name": "_1",
                      "nativeSrc": "19674:2:136",
                      "nodeType": "YulTypedName",
                      "src": "19674:2:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "19752:16:136",
                    "nodeType": "YulBlock",
                    "src": "19752:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "19761:1:136",
                              "nodeType": "YulLiteral",
                              "src": "19761:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "19764:1:136",
                              "nodeType": "YulLiteral",
                              "src": "19764:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "19754:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "19754:6:136"
                          },
                          "nativeSrc": "19754:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "19754:12:136"
                        },
                        "nativeSrc": "19754:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "19754:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "_1",
                                "nativeSrc": "19731:2:136",
                                "nodeType": "YulIdentifier",
                                "src": "19731:2:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "19735:4:136",
                                "nodeType": "YulLiteral",
                                "src": "19735:4:136",
                                "type": "",
                                "value": "0x1f"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "19727:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "19727:3:136"
                            },
                            "nativeSrc": "19727:13:136",
                            "nodeType": "YulFunctionCall",
                            "src": "19727:13:136"
                          },
                          {
                            "name": "dataEnd",
                            "nativeSrc": "19742:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "19742:7:136"
                          }
                        ],
                        "functionName": {
                          "name": "slt",
                          "nativeSrc": "19723:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "19723:3:136"
                        },
                        "nativeSrc": "19723:27:136",
                        "nodeType": "YulFunctionCall",
                        "src": "19723:27:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "19716:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "19716:6:136"
                    },
                    "nativeSrc": "19716:35:136",
                    "nodeType": "YulFunctionCall",
                    "src": "19716:35:136"
                  },
                  "nativeSrc": "19713:55:136",
                  "nodeType": "YulIf",
                  "src": "19713:55:136"
                },
                {
                  "nativeSrc": "19777:30:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "19777:30:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "_1",
                        "nativeSrc": "19804:2:136",
                        "nodeType": "YulIdentifier",
                        "src": "19804:2:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "19791:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "19791:12:136"
                    },
                    "nativeSrc": "19791:16:136",
                    "nodeType": "YulFunctionCall",
                    "src": "19791:16:136"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "19781:6:136",
                      "nodeType": "YulTypedName",
                      "src": "19781:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "19816:86:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "19816:86:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "length",
                            "nativeSrc": "19894:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "19894:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "array_allocation_size_array_struct_RadonFilter_dyn",
                          "nativeSrc": "19843:50:136",
                          "nodeType": "YulIdentifier",
                          "src": "19843:50:136"
                        },
                        "nativeSrc": "19843:58:136",
                        "nodeType": "YulFunctionCall",
                        "src": "19843:58:136"
                      }
                    ],
                    "functionName": {
                      "name": "allocate_memory",
                      "nativeSrc": "19827:15:136",
                      "nodeType": "YulIdentifier",
                      "src": "19827:15:136"
                    },
                    "nativeSrc": "19827:75:136",
                    "nodeType": "YulFunctionCall",
                    "src": "19827:75:136"
                  },
                  "variables": [
                    {
                      "name": "dst",
                      "nativeSrc": "19820:3:136",
                      "nodeType": "YulTypedName",
                      "src": "19820:3:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "19911:16:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "19911:16:136",
                  "value": {
                    "name": "dst",
                    "nativeSrc": "19924:3:136",
                    "nodeType": "YulIdentifier",
                    "src": "19924:3:136"
                  },
                  "variables": [
                    {
                      "name": "array",
                      "nativeSrc": "19915:5:136",
                      "nodeType": "YulTypedName",
                      "src": "19915:5:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "dst",
                        "nativeSrc": "19943:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "19943:3:136"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "19948:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "19948:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "19936:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "19936:6:136"
                    },
                    "nativeSrc": "19936:19:136",
                    "nodeType": "YulFunctionCall",
                    "src": "19936:19:136"
                  },
                  "nativeSrc": "19936:19:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "19936:19:136"
                },
                {
                  "nativeSrc": "19964:19:136",
                  "nodeType": "YulAssignment",
                  "src": "19964:19:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "dst",
                        "nativeSrc": "19975:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "19975:3:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "19980:2:136",
                        "nodeType": "YulLiteral",
                        "src": "19980:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "19971:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "19971:3:136"
                    },
                    "nativeSrc": "19971:12:136",
                    "nodeType": "YulFunctionCall",
                    "src": "19971:12:136"
                  },
                  "variableNames": [
                    {
                      "name": "dst",
                      "nativeSrc": "19964:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "19964:3:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "19992:46:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "19992:46:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "_1",
                            "nativeSrc": "20014:2:136",
                            "nodeType": "YulIdentifier",
                            "src": "20014:2:136"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "20022:1:136",
                                "nodeType": "YulLiteral",
                                "src": "20022:1:136",
                                "type": "",
                                "value": "5"
                              },
                              {
                                "name": "length",
                                "nativeSrc": "20025:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "20025:6:136"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "20018:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "20018:3:136"
                            },
                            "nativeSrc": "20018:14:136",
                            "nodeType": "YulFunctionCall",
                            "src": "20018:14:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "20010:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "20010:3:136"
                        },
                        "nativeSrc": "20010:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "20010:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "20035:2:136",
                        "nodeType": "YulLiteral",
                        "src": "20035:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "20006:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "20006:3:136"
                    },
                    "nativeSrc": "20006:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "20006:32:136"
                  },
                  "variables": [
                    {
                      "name": "srcEnd",
                      "nativeSrc": "19996:6:136",
                      "nodeType": "YulTypedName",
                      "src": "19996:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "20070:16:136",
                    "nodeType": "YulBlock",
                    "src": "20070:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "20079:1:136",
                              "nodeType": "YulLiteral",
                              "src": "20079:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "20082:1:136",
                              "nodeType": "YulLiteral",
                              "src": "20082:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "20072:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "20072:6:136"
                          },
                          "nativeSrc": "20072:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "20072:12:136"
                        },
                        "nativeSrc": "20072:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "20072:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "srcEnd",
                        "nativeSrc": "20053:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "20053:6:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "20061:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "20061:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "20050:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "20050:2:136"
                    },
                    "nativeSrc": "20050:19:136",
                    "nodeType": "YulFunctionCall",
                    "src": "20050:19:136"
                  },
                  "nativeSrc": "20047:39:136",
                  "nodeType": "YulIf",
                  "src": "20047:39:136"
                },
                {
                  "nativeSrc": "20095:22:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "20095:22:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "_1",
                        "nativeSrc": "20110:2:136",
                        "nodeType": "YulIdentifier",
                        "src": "20110:2:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "20114:2:136",
                        "nodeType": "YulLiteral",
                        "src": "20114:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "20106:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "20106:3:136"
                    },
                    "nativeSrc": "20106:11:136",
                    "nodeType": "YulFunctionCall",
                    "src": "20106:11:136"
                  },
                  "variables": [
                    {
                      "name": "src",
                      "nativeSrc": "20099:3:136",
                      "nodeType": "YulTypedName",
                      "src": "20099:3:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "20182:253:136",
                    "nodeType": "YulBlock",
                    "src": "20182:253:136",
                    "statements": [
                      {
                        "nativeSrc": "20196:36:136",
                        "nodeType": "YulVariableDeclaration",
                        "src": "20196:36:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "src",
                              "nativeSrc": "20228:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "20228:3:136"
                            }
                          ],
                          "functionName": {
                            "name": "calldataload",
                            "nativeSrc": "20215:12:136",
                            "nodeType": "YulIdentifier",
                            "src": "20215:12:136"
                          },
                          "nativeSrc": "20215:17:136",
                          "nodeType": "YulFunctionCall",
                          "src": "20215:17:136"
                        },
                        "variables": [
                          {
                            "name": "innerOffset",
                            "nativeSrc": "20200:11:136",
                            "nodeType": "YulTypedName",
                            "src": "20200:11:136",
                            "type": ""
                          }
                        ]
                      },
                      {
                        "body": {
                          "nativeSrc": "20284:16:136",
                          "nodeType": "YulBlock",
                          "src": "20284:16:136",
                          "statements": [
                            {
                              "expression": {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "20293:1:136",
                                    "nodeType": "YulLiteral",
                                    "src": "20293:1:136",
                                    "type": "",
                                    "value": "0"
                                  },
                                  {
                                    "kind": "number",
                                    "nativeSrc": "20296:1:136",
                                    "nodeType": "YulLiteral",
                                    "src": "20296:1:136",
                                    "type": "",
                                    "value": "0"
                                  }
                                ],
                                "functionName": {
                                  "name": "revert",
                                  "nativeSrc": "20286:6:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "20286:6:136"
                                },
                                "nativeSrc": "20286:12:136",
                                "nodeType": "YulFunctionCall",
                                "src": "20286:12:136"
                              },
                              "nativeSrc": "20286:12:136",
                              "nodeType": "YulExpressionStatement",
                              "src": "20286:12:136"
                            }
                          ]
                        },
                        "condition": {
                          "arguments": [
                            {
                              "name": "innerOffset",
                              "nativeSrc": "20251:11:136",
                              "nodeType": "YulIdentifier",
                              "src": "20251:11:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "20264:18:136",
                              "nodeType": "YulLiteral",
                              "src": "20264:18:136",
                              "type": "",
                              "value": "0xffffffffffffffff"
                            }
                          ],
                          "functionName": {
                            "name": "gt",
                            "nativeSrc": "20248:2:136",
                            "nodeType": "YulIdentifier",
                            "src": "20248:2:136"
                          },
                          "nativeSrc": "20248:35:136",
                          "nodeType": "YulFunctionCall",
                          "src": "20248:35:136"
                        },
                        "nativeSrc": "20245:55:136",
                        "nodeType": "YulIf",
                        "src": "20245:55:136"
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "name": "dst",
                              "nativeSrc": "20320:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "20320:3:136"
                            },
                            {
                              "arguments": [
                                {
                                  "arguments": [
                                    {
                                      "arguments": [
                                        {
                                          "name": "_1",
                                          "nativeSrc": "20361:2:136",
                                          "nodeType": "YulIdentifier",
                                          "src": "20361:2:136"
                                        },
                                        {
                                          "name": "innerOffset",
                                          "nativeSrc": "20365:11:136",
                                          "nodeType": "YulIdentifier",
                                          "src": "20365:11:136"
                                        }
                                      ],
                                      "functionName": {
                                        "name": "add",
                                        "nativeSrc": "20357:3:136",
                                        "nodeType": "YulIdentifier",
                                        "src": "20357:3:136"
                                      },
                                      "nativeSrc": "20357:20:136",
                                      "nodeType": "YulFunctionCall",
                                      "src": "20357:20:136"
                                    },
                                    {
                                      "kind": "number",
                                      "nativeSrc": "20379:2:136",
                                      "nodeType": "YulLiteral",
                                      "src": "20379:2:136",
                                      "type": "",
                                      "value": "32"
                                    }
                                  ],
                                  "functionName": {
                                    "name": "add",
                                    "nativeSrc": "20353:3:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "20353:3:136"
                                  },
                                  "nativeSrc": "20353:29:136",
                                  "nodeType": "YulFunctionCall",
                                  "src": "20353:29:136"
                                },
                                {
                                  "name": "dataEnd",
                                  "nativeSrc": "20384:7:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "20384:7:136"
                                }
                              ],
                              "functionName": {
                                "name": "abi_decode_array_string_dyn",
                                "nativeSrc": "20325:27:136",
                                "nodeType": "YulIdentifier",
                                "src": "20325:27:136"
                              },
                              "nativeSrc": "20325:67:136",
                              "nodeType": "YulFunctionCall",
                              "src": "20325:67:136"
                            }
                          ],
                          "functionName": {
                            "name": "mstore",
                            "nativeSrc": "20313:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "20313:6:136"
                          },
                          "nativeSrc": "20313:80:136",
                          "nodeType": "YulFunctionCall",
                          "src": "20313:80:136"
                        },
                        "nativeSrc": "20313:80:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "20313:80:136"
                      },
                      {
                        "nativeSrc": "20406:19:136",
                        "nodeType": "YulAssignment",
                        "src": "20406:19:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "dst",
                              "nativeSrc": "20417:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "20417:3:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "20422:2:136",
                              "nodeType": "YulLiteral",
                              "src": "20422:2:136",
                              "type": "",
                              "value": "32"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "20413:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "20413:3:136"
                          },
                          "nativeSrc": "20413:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "20413:12:136"
                        },
                        "variableNames": [
                          {
                            "name": "dst",
                            "nativeSrc": "20406:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "20406:3:136"
                          }
                        ]
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "src",
                        "nativeSrc": "20137:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "20137:3:136"
                      },
                      {
                        "name": "srcEnd",
                        "nativeSrc": "20142:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "20142:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "lt",
                      "nativeSrc": "20134:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "20134:2:136"
                    },
                    "nativeSrc": "20134:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "20134:15:136"
                  },
                  "nativeSrc": "20126:309:136",
                  "nodeType": "YulForLoop",
                  "post": {
                    "nativeSrc": "20150:23:136",
                    "nodeType": "YulBlock",
                    "src": "20150:23:136",
                    "statements": [
                      {
                        "nativeSrc": "20152:19:136",
                        "nodeType": "YulAssignment",
                        "src": "20152:19:136",
                        "value": {
                          "arguments": [
                            {
                              "name": "src",
                              "nativeSrc": "20163:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "20163:3:136"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "20168:2:136",
                              "nodeType": "YulLiteral",
                              "src": "20168:2:136",
                              "type": "",
                              "value": "32"
                            }
                          ],
                          "functionName": {
                            "name": "add",
                            "nativeSrc": "20159:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "20159:3:136"
                          },
                          "nativeSrc": "20159:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "20159:12:136"
                        },
                        "variableNames": [
                          {
                            "name": "src",
                            "nativeSrc": "20152:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "20152:3:136"
                          }
                        ]
                      }
                    ]
                  },
                  "pre": {
                    "nativeSrc": "20130:3:136",
                    "nodeType": "YulBlock",
                    "src": "20130:3:136",
                    "statements": []
                  },
                  "src": "20126:309:136"
                },
                {
                  "nativeSrc": "20444:15:136",
                  "nodeType": "YulAssignment",
                  "src": "20444:15:136",
                  "value": {
                    "name": "array",
                    "nativeSrc": "20454:5:136",
                    "nodeType": "YulIdentifier",
                    "src": "20454:5:136"
                  },
                  "variableNames": [
                    {
                      "name": "value1",
                      "nativeSrc": "20444:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "20444:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "20468:48:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "20468:48:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "20501:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "20501:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "20512:2:136",
                            "nodeType": "YulLiteral",
                            "src": "20512:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "20497:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "20497:3:136"
                        },
                        "nativeSrc": "20497:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "20497:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "20484:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "20484:12:136"
                    },
                    "nativeSrc": "20484:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "20484:32:136"
                  },
                  "variables": [
                    {
                      "name": "offset_2",
                      "nativeSrc": "20472:8:136",
                      "nodeType": "YulTypedName",
                      "src": "20472:8:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "20561:16:136",
                    "nodeType": "YulBlock",
                    "src": "20561:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "20570:1:136",
                              "nodeType": "YulLiteral",
                              "src": "20570:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "20573:1:136",
                              "nodeType": "YulLiteral",
                              "src": "20573:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "20563:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "20563:6:136"
                          },
                          "nativeSrc": "20563:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "20563:12:136"
                        },
                        "nativeSrc": "20563:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "20563:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_2",
                        "nativeSrc": "20531:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "20531:8:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "20541:18:136",
                        "nodeType": "YulLiteral",
                        "src": "20541:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "20528:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "20528:2:136"
                    },
                    "nativeSrc": "20528:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "20528:32:136"
                  },
                  "nativeSrc": "20525:52:136",
                  "nodeType": "YulIf",
                  "src": "20525:52:136"
                },
                {
                  "nativeSrc": "20586:61:136",
                  "nodeType": "YulAssignment",
                  "src": "20586:61:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "20617:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "20617:9:136"
                          },
                          {
                            "name": "offset_2",
                            "nativeSrc": "20628:8:136",
                            "nodeType": "YulIdentifier",
                            "src": "20628:8:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "20613:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "20613:3:136"
                        },
                        "nativeSrc": "20613:24:136",
                        "nodeType": "YulFunctionCall",
                        "src": "20613:24:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "20639:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "20639:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_bytes",
                      "nativeSrc": "20596:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "20596:16:136"
                    },
                    "nativeSrc": "20596:51:136",
                    "nodeType": "YulFunctionCall",
                    "src": "20596:51:136"
                  },
                  "variableNames": [
                    {
                      "name": "value2",
                      "nativeSrc": "20586:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "20586:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "20656:48:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "20656:48:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "20689:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "20689:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "20700:2:136",
                            "nodeType": "YulLiteral",
                            "src": "20700:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "20685:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "20685:3:136"
                        },
                        "nativeSrc": "20685:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "20685:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "20672:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "20672:12:136"
                    },
                    "nativeSrc": "20672:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "20672:32:136"
                  },
                  "variables": [
                    {
                      "name": "offset_3",
                      "nativeSrc": "20660:8:136",
                      "nodeType": "YulTypedName",
                      "src": "20660:8:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "20749:16:136",
                    "nodeType": "YulBlock",
                    "src": "20749:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "20758:1:136",
                              "nodeType": "YulLiteral",
                              "src": "20758:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "20761:1:136",
                              "nodeType": "YulLiteral",
                              "src": "20761:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "20751:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "20751:6:136"
                          },
                          "nativeSrc": "20751:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "20751:12:136"
                        },
                        "nativeSrc": "20751:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "20751:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_3",
                        "nativeSrc": "20719:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "20719:8:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "20729:18:136",
                        "nodeType": "YulLiteral",
                        "src": "20729:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "20716:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "20716:2:136"
                    },
                    "nativeSrc": "20716:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "20716:32:136"
                  },
                  "nativeSrc": "20713:52:136",
                  "nodeType": "YulIf",
                  "src": "20713:52:136"
                },
                {
                  "nativeSrc": "20774:61:136",
                  "nodeType": "YulAssignment",
                  "src": "20774:61:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "20805:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "20805:9:136"
                          },
                          {
                            "name": "offset_3",
                            "nativeSrc": "20816:8:136",
                            "nodeType": "YulIdentifier",
                            "src": "20816:8:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "20801:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "20801:3:136"
                        },
                        "nativeSrc": "20801:24:136",
                        "nodeType": "YulFunctionCall",
                        "src": "20801:24:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "20827:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "20827:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_bytes",
                      "nativeSrc": "20784:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "20784:16:136"
                    },
                    "nativeSrc": "20784:51:136",
                    "nodeType": "YulFunctionCall",
                    "src": "20784:51:136"
                  },
                  "variableNames": [
                    {
                      "name": "value3",
                      "nativeSrc": "20774:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "20774:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "20844:48:136",
                  "nodeType": "YulAssignment",
                  "src": "20844:48:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "20876:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "20876:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "20887:3:136",
                            "nodeType": "YulLiteral",
                            "src": "20887:3:136",
                            "type": "",
                            "value": "128"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "20872:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "20872:3:136"
                        },
                        "nativeSrc": "20872:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "20872:19:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_uint16",
                      "nativeSrc": "20854:17:136",
                      "nodeType": "YulIdentifier",
                      "src": "20854:17:136"
                    },
                    "nativeSrc": "20854:38:136",
                    "nodeType": "YulFunctionCall",
                    "src": "20854:38:136"
                  },
                  "variableNames": [
                    {
                      "name": "value4",
                      "nativeSrc": "20844:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "20844:6:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptrt_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_uint16",
            "nativeSrc": "19008:1890:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "19215:9:136",
                "nodeType": "YulTypedName",
                "src": "19215:9:136",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "19226:7:136",
                "nodeType": "YulTypedName",
                "src": "19226:7:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "19238:6:136",
                "nodeType": "YulTypedName",
                "src": "19238:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "19246:6:136",
                "nodeType": "YulTypedName",
                "src": "19246:6:136",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "19254:6:136",
                "nodeType": "YulTypedName",
                "src": "19254:6:136",
                "type": ""
              },
              {
                "name": "value3",
                "nativeSrc": "19262:6:136",
                "nodeType": "YulTypedName",
                "src": "19262:6:136",
                "type": ""
              },
              {
                "name": "value4",
                "nativeSrc": "19270:6:136",
                "nodeType": "YulTypedName",
                "src": "19270:6:136",
                "type": ""
              }
            ],
            "src": "19008:1890:136"
          },
          {
            "body": {
              "nativeSrc": "21147:1096:136",
              "nodeType": "YulBlock",
              "src": "21147:1096:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "21194:16:136",
                    "nodeType": "YulBlock",
                    "src": "21194:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "21203:1:136",
                              "nodeType": "YulLiteral",
                              "src": "21203:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "21206:1:136",
                              "nodeType": "YulLiteral",
                              "src": "21206:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "21196:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "21196:6:136"
                          },
                          "nativeSrc": "21196:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "21196:12:136"
                        },
                        "nativeSrc": "21196:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "21196:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "21168:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "21168:7:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "21177:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "21177:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "21164:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "21164:3:136"
                        },
                        "nativeSrc": "21164:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "21164:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "21189:3:136",
                        "nodeType": "YulLiteral",
                        "src": "21189:3:136",
                        "type": "",
                        "value": "128"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "21160:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "21160:3:136"
                    },
                    "nativeSrc": "21160:33:136",
                    "nodeType": "YulFunctionCall",
                    "src": "21160:33:136"
                  },
                  "nativeSrc": "21157:53:136",
                  "nodeType": "YulIf",
                  "src": "21157:53:136"
                },
                {
                  "nativeSrc": "21219:37:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "21219:37:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "21246:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "21246:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "21233:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "21233:12:136"
                    },
                    "nativeSrc": "21233:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "21233:23:136"
                  },
                  "variables": [
                    {
                      "name": "offset",
                      "nativeSrc": "21223:6:136",
                      "nodeType": "YulTypedName",
                      "src": "21223:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "21299:16:136",
                    "nodeType": "YulBlock",
                    "src": "21299:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "21308:1:136",
                              "nodeType": "YulLiteral",
                              "src": "21308:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "21311:1:136",
                              "nodeType": "YulLiteral",
                              "src": "21311:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "21301:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "21301:6:136"
                          },
                          "nativeSrc": "21301:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "21301:12:136"
                        },
                        "nativeSrc": "21301:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "21301:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "21271:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "21271:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "21279:18:136",
                        "nodeType": "YulLiteral",
                        "src": "21279:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "21268:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "21268:2:136"
                    },
                    "nativeSrc": "21268:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "21268:30:136"
                  },
                  "nativeSrc": "21265:50:136",
                  "nodeType": "YulIf",
                  "src": "21265:50:136"
                },
                {
                  "nativeSrc": "21324:85:136",
                  "nodeType": "YulAssignment",
                  "src": "21324:85:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "21381:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "21381:9:136"
                          },
                          {
                            "name": "offset",
                            "nativeSrc": "21392:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "21392:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "21377:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "21377:3:136"
                        },
                        "nativeSrc": "21377:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "21377:22:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "21401:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "21401:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_array_struct_RadonRetrieval_dyn",
                      "nativeSrc": "21334:42:136",
                      "nodeType": "YulIdentifier",
                      "src": "21334:42:136"
                    },
                    "nativeSrc": "21334:75:136",
                    "nodeType": "YulFunctionCall",
                    "src": "21334:75:136"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "21324:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "21324:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "21418:48:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "21418:48:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "21451:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "21451:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "21462:2:136",
                            "nodeType": "YulLiteral",
                            "src": "21462:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "21447:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "21447:3:136"
                        },
                        "nativeSrc": "21447:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "21447:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "21434:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "21434:12:136"
                    },
                    "nativeSrc": "21434:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "21434:32:136"
                  },
                  "variables": [
                    {
                      "name": "offset_1",
                      "nativeSrc": "21422:8:136",
                      "nodeType": "YulTypedName",
                      "src": "21422:8:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "21511:16:136",
                    "nodeType": "YulBlock",
                    "src": "21511:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "21520:1:136",
                              "nodeType": "YulLiteral",
                              "src": "21520:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "21523:1:136",
                              "nodeType": "YulLiteral",
                              "src": "21523:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "21513:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "21513:6:136"
                          },
                          "nativeSrc": "21513:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "21513:12:136"
                        },
                        "nativeSrc": "21513:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "21513:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_1",
                        "nativeSrc": "21481:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "21481:8:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "21491:18:136",
                        "nodeType": "YulLiteral",
                        "src": "21491:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "21478:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "21478:2:136"
                    },
                    "nativeSrc": "21478:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "21478:32:136"
                  },
                  "nativeSrc": "21475:52:136",
                  "nodeType": "YulIf",
                  "src": "21475:52:136"
                },
                {
                  "nativeSrc": "21536:34:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "21536:34:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "21550:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "21550:9:136"
                      },
                      {
                        "name": "offset_1",
                        "nativeSrc": "21561:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "21561:8:136"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "21546:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "21546:3:136"
                    },
                    "nativeSrc": "21546:24:136",
                    "nodeType": "YulFunctionCall",
                    "src": "21546:24:136"
                  },
                  "variables": [
                    {
                      "name": "_1",
                      "nativeSrc": "21540:2:136",
                      "nodeType": "YulTypedName",
                      "src": "21540:2:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "21618:16:136",
                    "nodeType": "YulBlock",
                    "src": "21618:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "21627:1:136",
                              "nodeType": "YulLiteral",
                              "src": "21627:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "21630:1:136",
                              "nodeType": "YulLiteral",
                              "src": "21630:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "21620:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "21620:6:136"
                          },
                          "nativeSrc": "21620:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "21620:12:136"
                        },
                        "nativeSrc": "21620:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "21620:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "_1",
                                "nativeSrc": "21597:2:136",
                                "nodeType": "YulIdentifier",
                                "src": "21597:2:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "21601:4:136",
                                "nodeType": "YulLiteral",
                                "src": "21601:4:136",
                                "type": "",
                                "value": "0x1f"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "21593:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "21593:3:136"
                            },
                            "nativeSrc": "21593:13:136",
                            "nodeType": "YulFunctionCall",
                            "src": "21593:13:136"
                          },
                          {
                            "name": "dataEnd",
                            "nativeSrc": "21608:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "21608:7:136"
                          }
                        ],
                        "functionName": {
                          "name": "slt",
                          "nativeSrc": "21589:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "21589:3:136"
                        },
                        "nativeSrc": "21589:27:136",
                        "nodeType": "YulFunctionCall",
                        "src": "21589:27:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "21582:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "21582:6:136"
                    },
                    "nativeSrc": "21582:35:136",
                    "nodeType": "YulFunctionCall",
                    "src": "21582:35:136"
                  },
                  "nativeSrc": "21579:55:136",
                  "nodeType": "YulIf",
                  "src": "21579:55:136"
                },
                {
                  "nativeSrc": "21643:30:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "21643:30:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "_1",
                        "nativeSrc": "21670:2:136",
                        "nodeType": "YulIdentifier",
                        "src": "21670:2:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "21657:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "21657:12:136"
                    },
                    "nativeSrc": "21657:16:136",
                    "nodeType": "YulFunctionCall",
                    "src": "21657:16:136"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "21647:6:136",
                      "nodeType": "YulTypedName",
                      "src": "21647:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "21716:16:136",
                    "nodeType": "YulBlock",
                    "src": "21716:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "21725:1:136",
                              "nodeType": "YulLiteral",
                              "src": "21725:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "21728:1:136",
                              "nodeType": "YulLiteral",
                              "src": "21728:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "21718:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "21718:6:136"
                          },
                          "nativeSrc": "21718:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "21718:12:136"
                        },
                        "nativeSrc": "21718:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "21718:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "length",
                        "nativeSrc": "21688:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "21688:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "21696:18:136",
                        "nodeType": "YulLiteral",
                        "src": "21696:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "21685:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "21685:2:136"
                    },
                    "nativeSrc": "21685:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "21685:30:136"
                  },
                  "nativeSrc": "21682:50:136",
                  "nodeType": "YulIf",
                  "src": "21682:50:136"
                },
                {
                  "body": {
                    "nativeSrc": "21790:16:136",
                    "nodeType": "YulBlock",
                    "src": "21790:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "21799:1:136",
                              "nodeType": "YulLiteral",
                              "src": "21799:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "21802:1:136",
                              "nodeType": "YulLiteral",
                              "src": "21802:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "21792:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "21792:6:136"
                          },
                          "nativeSrc": "21792:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "21792:12:136"
                        },
                        "nativeSrc": "21792:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "21792:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "name": "_1",
                                "nativeSrc": "21755:2:136",
                                "nodeType": "YulIdentifier",
                                "src": "21755:2:136"
                              },
                              {
                                "arguments": [
                                  {
                                    "kind": "number",
                                    "nativeSrc": "21763:1:136",
                                    "nodeType": "YulLiteral",
                                    "src": "21763:1:136",
                                    "type": "",
                                    "value": "5"
                                  },
                                  {
                                    "name": "length",
                                    "nativeSrc": "21766:6:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "21766:6:136"
                                  }
                                ],
                                "functionName": {
                                  "name": "shl",
                                  "nativeSrc": "21759:3:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "21759:3:136"
                                },
                                "nativeSrc": "21759:14:136",
                                "nodeType": "YulFunctionCall",
                                "src": "21759:14:136"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "21751:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "21751:3:136"
                            },
                            "nativeSrc": "21751:23:136",
                            "nodeType": "YulFunctionCall",
                            "src": "21751:23:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "21776:2:136",
                            "nodeType": "YulLiteral",
                            "src": "21776:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "21747:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "21747:3:136"
                        },
                        "nativeSrc": "21747:32:136",
                        "nodeType": "YulFunctionCall",
                        "src": "21747:32:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "21781:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "21781:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "21744:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "21744:2:136"
                    },
                    "nativeSrc": "21744:45:136",
                    "nodeType": "YulFunctionCall",
                    "src": "21744:45:136"
                  },
                  "nativeSrc": "21741:65:136",
                  "nodeType": "YulIf",
                  "src": "21741:65:136"
                },
                {
                  "nativeSrc": "21815:21:136",
                  "nodeType": "YulAssignment",
                  "src": "21815:21:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "_1",
                        "nativeSrc": "21829:2:136",
                        "nodeType": "YulIdentifier",
                        "src": "21829:2:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "21833:2:136",
                        "nodeType": "YulLiteral",
                        "src": "21833:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "21825:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "21825:3:136"
                    },
                    "nativeSrc": "21825:11:136",
                    "nodeType": "YulFunctionCall",
                    "src": "21825:11:136"
                  },
                  "variableNames": [
                    {
                      "name": "value1",
                      "nativeSrc": "21815:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "21815:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "21845:16:136",
                  "nodeType": "YulAssignment",
                  "src": "21845:16:136",
                  "value": {
                    "name": "length",
                    "nativeSrc": "21855:6:136",
                    "nodeType": "YulIdentifier",
                    "src": "21855:6:136"
                  },
                  "variableNames": [
                    {
                      "name": "value2",
                      "nativeSrc": "21845:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "21845:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "21870:48:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "21870:48:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "21903:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "21903:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "21914:2:136",
                            "nodeType": "YulLiteral",
                            "src": "21914:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "21899:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "21899:3:136"
                        },
                        "nativeSrc": "21899:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "21899:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "21886:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "21886:12:136"
                    },
                    "nativeSrc": "21886:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "21886:32:136"
                  },
                  "variables": [
                    {
                      "name": "offset_2",
                      "nativeSrc": "21874:8:136",
                      "nodeType": "YulTypedName",
                      "src": "21874:8:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "21963:16:136",
                    "nodeType": "YulBlock",
                    "src": "21963:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "21972:1:136",
                              "nodeType": "YulLiteral",
                              "src": "21972:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "21975:1:136",
                              "nodeType": "YulLiteral",
                              "src": "21975:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "21965:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "21965:6:136"
                          },
                          "nativeSrc": "21965:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "21965:12:136"
                        },
                        "nativeSrc": "21965:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "21965:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_2",
                        "nativeSrc": "21933:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "21933:8:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "21943:18:136",
                        "nodeType": "YulLiteral",
                        "src": "21943:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "21930:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "21930:2:136"
                    },
                    "nativeSrc": "21930:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "21930:32:136"
                  },
                  "nativeSrc": "21927:52:136",
                  "nodeType": "YulIf",
                  "src": "21927:52:136"
                },
                {
                  "nativeSrc": "21988:61:136",
                  "nodeType": "YulAssignment",
                  "src": "21988:61:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "22019:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "22019:9:136"
                          },
                          {
                            "name": "offset_2",
                            "nativeSrc": "22030:8:136",
                            "nodeType": "YulIdentifier",
                            "src": "22030:8:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "22015:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "22015:3:136"
                        },
                        "nativeSrc": "22015:24:136",
                        "nodeType": "YulFunctionCall",
                        "src": "22015:24:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "22041:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "22041:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_bytes",
                      "nativeSrc": "21998:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "21998:16:136"
                    },
                    "nativeSrc": "21998:51:136",
                    "nodeType": "YulFunctionCall",
                    "src": "21998:51:136"
                  },
                  "variableNames": [
                    {
                      "name": "value3",
                      "nativeSrc": "21988:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "21988:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "22058:48:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "22058:48:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "22091:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "22091:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "22102:2:136",
                            "nodeType": "YulLiteral",
                            "src": "22102:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "22087:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "22087:3:136"
                        },
                        "nativeSrc": "22087:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "22087:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "22074:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "22074:12:136"
                    },
                    "nativeSrc": "22074:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "22074:32:136"
                  },
                  "variables": [
                    {
                      "name": "offset_3",
                      "nativeSrc": "22062:8:136",
                      "nodeType": "YulTypedName",
                      "src": "22062:8:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "22151:16:136",
                    "nodeType": "YulBlock",
                    "src": "22151:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "22160:1:136",
                              "nodeType": "YulLiteral",
                              "src": "22160:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "22163:1:136",
                              "nodeType": "YulLiteral",
                              "src": "22163:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "22153:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "22153:6:136"
                          },
                          "nativeSrc": "22153:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "22153:12:136"
                        },
                        "nativeSrc": "22153:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "22153:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_3",
                        "nativeSrc": "22121:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "22121:8:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "22131:18:136",
                        "nodeType": "YulLiteral",
                        "src": "22131:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "22118:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "22118:2:136"
                    },
                    "nativeSrc": "22118:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "22118:32:136"
                  },
                  "nativeSrc": "22115:52:136",
                  "nodeType": "YulIf",
                  "src": "22115:52:136"
                },
                {
                  "nativeSrc": "22176:61:136",
                  "nodeType": "YulAssignment",
                  "src": "22176:61:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "22207:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "22207:9:136"
                          },
                          {
                            "name": "offset_3",
                            "nativeSrc": "22218:8:136",
                            "nodeType": "YulIdentifier",
                            "src": "22218:8:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "22203:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "22203:3:136"
                        },
                        "nativeSrc": "22203:24:136",
                        "nodeType": "YulFunctionCall",
                        "src": "22203:24:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "22229:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "22229:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_bytes",
                      "nativeSrc": "22186:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "22186:16:136"
                    },
                    "nativeSrc": "22186:51:136",
                    "nodeType": "YulFunctionCall",
                    "src": "22186:51:136"
                  },
                  "variableNames": [
                    {
                      "name": "value4",
                      "nativeSrc": "22176:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "22176:6:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptrt_array$_t_string_calldata_ptr_$dyn_calldata_ptrt_bytes_memory_ptrt_bytes_memory_ptr",
            "nativeSrc": "20903:1340:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "21081:9:136",
                "nodeType": "YulTypedName",
                "src": "21081:9:136",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "21092:7:136",
                "nodeType": "YulTypedName",
                "src": "21092:7:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "21104:6:136",
                "nodeType": "YulTypedName",
                "src": "21104:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "21112:6:136",
                "nodeType": "YulTypedName",
                "src": "21112:6:136",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "21120:6:136",
                "nodeType": "YulTypedName",
                "src": "21120:6:136",
                "type": ""
              },
              {
                "name": "value3",
                "nativeSrc": "21128:6:136",
                "nodeType": "YulTypedName",
                "src": "21128:6:136",
                "type": ""
              },
              {
                "name": "value4",
                "nativeSrc": "21136:6:136",
                "nodeType": "YulTypedName",
                "src": "21136:6:136",
                "type": ""
              }
            ],
            "src": "20903:1340:136"
          },
          {
            "body": {
              "nativeSrc": "22379:440:136",
              "nodeType": "YulBlock",
              "src": "22379:440:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "22425:16:136",
                    "nodeType": "YulBlock",
                    "src": "22425:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "22434:1:136",
                              "nodeType": "YulLiteral",
                              "src": "22434:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "22437:1:136",
                              "nodeType": "YulLiteral",
                              "src": "22437:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "22427:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "22427:6:136"
                          },
                          "nativeSrc": "22427:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "22427:12:136"
                        },
                        "nativeSrc": "22427:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "22427:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "22400:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "22400:7:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "22409:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "22409:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "22396:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "22396:3:136"
                        },
                        "nativeSrc": "22396:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "22396:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "22421:2:136",
                        "nodeType": "YulLiteral",
                        "src": "22421:2:136",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "22392:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "22392:3:136"
                    },
                    "nativeSrc": "22392:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "22392:32:136"
                  },
                  "nativeSrc": "22389:52:136",
                  "nodeType": "YulIf",
                  "src": "22389:52:136"
                },
                {
                  "nativeSrc": "22450:37:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "22450:37:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "22477:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "22477:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "22464:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "22464:12:136"
                    },
                    "nativeSrc": "22464:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "22464:23:136"
                  },
                  "variables": [
                    {
                      "name": "offset",
                      "nativeSrc": "22454:6:136",
                      "nodeType": "YulTypedName",
                      "src": "22454:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "22530:16:136",
                    "nodeType": "YulBlock",
                    "src": "22530:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "22539:1:136",
                              "nodeType": "YulLiteral",
                              "src": "22539:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "22542:1:136",
                              "nodeType": "YulLiteral",
                              "src": "22542:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "22532:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "22532:6:136"
                          },
                          "nativeSrc": "22532:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "22532:12:136"
                        },
                        "nativeSrc": "22532:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "22532:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "22502:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "22502:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "22510:18:136",
                        "nodeType": "YulLiteral",
                        "src": "22510:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "22499:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "22499:2:136"
                    },
                    "nativeSrc": "22499:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "22499:30:136"
                  },
                  "nativeSrc": "22496:50:136",
                  "nodeType": "YulIf",
                  "src": "22496:50:136"
                },
                {
                  "nativeSrc": "22555:59:136",
                  "nodeType": "YulAssignment",
                  "src": "22555:59:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "22586:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "22586:9:136"
                          },
                          {
                            "name": "offset",
                            "nativeSrc": "22597:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "22597:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "22582:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "22582:3:136"
                        },
                        "nativeSrc": "22582:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "22582:22:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "22606:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "22606:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_bytes",
                      "nativeSrc": "22565:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "22565:16:136"
                    },
                    "nativeSrc": "22565:49:136",
                    "nodeType": "YulFunctionCall",
                    "src": "22565:49:136"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "22555:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "22555:6:136"
                    }
                  ]
                },
                {
                  "nativeSrc": "22623:48:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "22623:48:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "22656:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "22656:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "22667:2:136",
                            "nodeType": "YulLiteral",
                            "src": "22667:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "22652:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "22652:3:136"
                        },
                        "nativeSrc": "22652:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "22652:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "22639:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "22639:12:136"
                    },
                    "nativeSrc": "22639:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "22639:32:136"
                  },
                  "variables": [
                    {
                      "name": "offset_1",
                      "nativeSrc": "22627:8:136",
                      "nodeType": "YulTypedName",
                      "src": "22627:8:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "22716:16:136",
                    "nodeType": "YulBlock",
                    "src": "22716:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "22725:1:136",
                              "nodeType": "YulLiteral",
                              "src": "22725:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "22728:1:136",
                              "nodeType": "YulLiteral",
                              "src": "22728:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "22718:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "22718:6:136"
                          },
                          "nativeSrc": "22718:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "22718:12:136"
                        },
                        "nativeSrc": "22718:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "22718:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset_1",
                        "nativeSrc": "22686:8:136",
                        "nodeType": "YulIdentifier",
                        "src": "22686:8:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "22696:18:136",
                        "nodeType": "YulLiteral",
                        "src": "22696:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "22683:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "22683:2:136"
                    },
                    "nativeSrc": "22683:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "22683:32:136"
                  },
                  "nativeSrc": "22680:52:136",
                  "nodeType": "YulIf",
                  "src": "22680:52:136"
                },
                {
                  "nativeSrc": "22741:72:136",
                  "nodeType": "YulAssignment",
                  "src": "22741:72:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "22783:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "22783:9:136"
                          },
                          {
                            "name": "offset_1",
                            "nativeSrc": "22794:8:136",
                            "nodeType": "YulIdentifier",
                            "src": "22794:8:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "22779:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "22779:3:136"
                        },
                        "nativeSrc": "22779:24:136",
                        "nodeType": "YulFunctionCall",
                        "src": "22779:24:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "22805:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "22805:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_array_string_dyn",
                      "nativeSrc": "22751:27:136",
                      "nodeType": "YulIdentifier",
                      "src": "22751:27:136"
                    },
                    "nativeSrc": "22751:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "22751:62:136"
                  },
                  "variableNames": [
                    {
                      "name": "value1",
                      "nativeSrc": "22741:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "22741:6:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_bytes_memory_ptrt_array$_t_string_memory_ptr_$dyn_memory_ptr",
            "nativeSrc": "22248:571:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "22337:9:136",
                "nodeType": "YulTypedName",
                "src": "22337:9:136",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "22348:7:136",
                "nodeType": "YulTypedName",
                "src": "22348:7:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "22360:6:136",
                "nodeType": "YulTypedName",
                "src": "22360:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "22368:6:136",
                "nodeType": "YulTypedName",
                "src": "22368:6:136",
                "type": ""
              }
            ],
            "src": "22248:571:136"
          },
          {
            "body": {
              "nativeSrc": "22951:100:136",
              "nodeType": "YulBlock",
              "src": "22951:100:136",
              "statements": [
                {
                  "nativeSrc": "22961:26:136",
                  "nodeType": "YulAssignment",
                  "src": "22961:26:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "22973:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "22973:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "22984:2:136",
                        "nodeType": "YulLiteral",
                        "src": "22984:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "22969:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "22969:3:136"
                    },
                    "nativeSrc": "22969:18:136",
                    "nodeType": "YulFunctionCall",
                    "src": "22969:18:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "22961:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "22961:4:136"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value0",
                        "nativeSrc": "23027:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "23027:6:136"
                      },
                      {
                        "name": "headStart",
                        "nativeSrc": "23035:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "23035:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_enum_RadonDataTypes",
                      "nativeSrc": "22996:30:136",
                      "nodeType": "YulIdentifier",
                      "src": "22996:30:136"
                    },
                    "nativeSrc": "22996:49:136",
                    "nodeType": "YulFunctionCall",
                    "src": "22996:49:136"
                  },
                  "nativeSrc": "22996:49:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "22996:49:136"
                }
              ]
            },
            "name": "abi_encode_tuple_t_enum$_RadonDataTypes_$37720__to_t_uint8__fromStack_library_reversed",
            "nativeSrc": "22824:227:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "22920:9:136",
                "nodeType": "YulTypedName",
                "src": "22920:9:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "22931:6:136",
                "nodeType": "YulTypedName",
                "src": "22931:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "22942:4:136",
                "nodeType": "YulTypedName",
                "src": "22942:4:136",
                "type": ""
              }
            ],
            "src": "22824:227:136"
          },
          {
            "body": {
              "nativeSrc": "23159:257:136",
              "nodeType": "YulBlock",
              "src": "23159:257:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "23205:16:136",
                    "nodeType": "YulBlock",
                    "src": "23205:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "23214:1:136",
                              "nodeType": "YulLiteral",
                              "src": "23214:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "23217:1:136",
                              "nodeType": "YulLiteral",
                              "src": "23217:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "23207:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "23207:6:136"
                          },
                          "nativeSrc": "23207:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "23207:12:136"
                        },
                        "nativeSrc": "23207:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "23207:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "dataEnd",
                            "nativeSrc": "23180:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "23180:7:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "23189:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "23189:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "23176:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "23176:3:136"
                        },
                        "nativeSrc": "23176:23:136",
                        "nodeType": "YulFunctionCall",
                        "src": "23176:23:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "23201:2:136",
                        "nodeType": "YulLiteral",
                        "src": "23201:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "slt",
                      "nativeSrc": "23172:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "23172:3:136"
                    },
                    "nativeSrc": "23172:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "23172:32:136"
                  },
                  "nativeSrc": "23169:52:136",
                  "nodeType": "YulIf",
                  "src": "23169:52:136"
                },
                {
                  "nativeSrc": "23230:37:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "23230:37:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "23257:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "23257:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "calldataload",
                      "nativeSrc": "23244:12:136",
                      "nodeType": "YulIdentifier",
                      "src": "23244:12:136"
                    },
                    "nativeSrc": "23244:23:136",
                    "nodeType": "YulFunctionCall",
                    "src": "23244:23:136"
                  },
                  "variables": [
                    {
                      "name": "offset",
                      "nativeSrc": "23234:6:136",
                      "nodeType": "YulTypedName",
                      "src": "23234:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "23310:16:136",
                    "nodeType": "YulBlock",
                    "src": "23310:16:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "kind": "number",
                              "nativeSrc": "23319:1:136",
                              "nodeType": "YulLiteral",
                              "src": "23319:1:136",
                              "type": "",
                              "value": "0"
                            },
                            {
                              "kind": "number",
                              "nativeSrc": "23322:1:136",
                              "nodeType": "YulLiteral",
                              "src": "23322:1:136",
                              "type": "",
                              "value": "0"
                            }
                          ],
                          "functionName": {
                            "name": "revert",
                            "nativeSrc": "23312:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "23312:6:136"
                          },
                          "nativeSrc": "23312:12:136",
                          "nodeType": "YulFunctionCall",
                          "src": "23312:12:136"
                        },
                        "nativeSrc": "23312:12:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "23312:12:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "offset",
                        "nativeSrc": "23282:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "23282:6:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "23290:18:136",
                        "nodeType": "YulLiteral",
                        "src": "23290:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "23279:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "23279:2:136"
                    },
                    "nativeSrc": "23279:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "23279:30:136"
                  },
                  "nativeSrc": "23276:50:136",
                  "nodeType": "YulIf",
                  "src": "23276:50:136"
                },
                {
                  "nativeSrc": "23335:75:136",
                  "nodeType": "YulAssignment",
                  "src": "23335:75:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "23382:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "23382:9:136"
                          },
                          {
                            "name": "offset",
                            "nativeSrc": "23393:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "23393:6:136"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "23378:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "23378:3:136"
                        },
                        "nativeSrc": "23378:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "23378:22:136"
                      },
                      {
                        "name": "dataEnd",
                        "nativeSrc": "23402:7:136",
                        "nodeType": "YulIdentifier",
                        "src": "23402:7:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_struct_RadonRetrieval",
                      "nativeSrc": "23345:32:136",
                      "nodeType": "YulIdentifier",
                      "src": "23345:32:136"
                    },
                    "nativeSrc": "23345:65:136",
                    "nodeType": "YulFunctionCall",
                    "src": "23345:65:136"
                  },
                  "variableNames": [
                    {
                      "name": "value0",
                      "nativeSrc": "23335:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "23335:6:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_decode_tuple_t_struct$_RadonRetrieval_$37795_memory_ptr",
            "nativeSrc": "23056:360:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "23125:9:136",
                "nodeType": "YulTypedName",
                "src": "23125:9:136",
                "type": ""
              },
              {
                "name": "dataEnd",
                "nativeSrc": "23136:7:136",
                "nodeType": "YulTypedName",
                "src": "23136:7:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "value0",
                "nativeSrc": "23148:6:136",
                "nodeType": "YulTypedName",
                "src": "23148:6:136",
                "type": ""
              }
            ],
            "src": "23056:360:136"
          },
          {
            "body": {
              "nativeSrc": "23545:143:136",
              "nodeType": "YulBlock",
              "src": "23545:143:136",
              "statements": [
                {
                  "nativeSrc": "23555:26:136",
                  "nodeType": "YulAssignment",
                  "src": "23555:26:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "23567:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "23567:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "23578:2:136",
                        "nodeType": "YulLiteral",
                        "src": "23578:2:136",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "23563:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "23563:3:136"
                    },
                    "nativeSrc": "23563:18:136",
                    "nodeType": "YulFunctionCall",
                    "src": "23563:18:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "23555:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "23555:4:136"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "23597:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "23597:9:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "23612:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "23612:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "23620:4:136",
                            "nodeType": "YulLiteral",
                            "src": "23620:4:136",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "23608:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "23608:3:136"
                        },
                        "nativeSrc": "23608:17:136",
                        "nodeType": "YulFunctionCall",
                        "src": "23608:17:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "23590:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "23590:6:136"
                    },
                    "nativeSrc": "23590:36:136",
                    "nodeType": "YulFunctionCall",
                    "src": "23590:36:136"
                  },
                  "nativeSrc": "23590:36:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "23590:36:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "23646:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "23646:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "23657:2:136",
                            "nodeType": "YulLiteral",
                            "src": "23657:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "23642:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "23642:3:136"
                        },
                        "nativeSrc": "23642:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "23642:18:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value1",
                            "nativeSrc": "23666:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "23666:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "23674:6:136",
                            "nodeType": "YulLiteral",
                            "src": "23674:6:136",
                            "type": "",
                            "value": "0xffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "23662:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "23662:3:136"
                        },
                        "nativeSrc": "23662:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "23662:19:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "23635:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "23635:6:136"
                    },
                    "nativeSrc": "23635:47:136",
                    "nodeType": "YulFunctionCall",
                    "src": "23635:47:136"
                  },
                  "nativeSrc": "23635:47:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "23635:47:136"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint8_t_uint16__to_t_uint8_t_uint256__fromStack_reversed",
            "nativeSrc": "23421:267:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "23506:9:136",
                "nodeType": "YulTypedName",
                "src": "23506:9:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "23517:6:136",
                "nodeType": "YulTypedName",
                "src": "23517:6:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "23525:6:136",
                "nodeType": "YulTypedName",
                "src": "23525:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "23536:4:136",
                "nodeType": "YulTypedName",
                "src": "23536:4:136",
                "type": ""
              }
            ],
            "src": "23421:267:136"
          },
          {
            "body": {
              "nativeSrc": "23725:95:136",
              "nodeType": "YulBlock",
              "src": "23725:95:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "23742:1:136",
                        "nodeType": "YulLiteral",
                        "src": "23742:1:136",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "23749:3:136",
                            "nodeType": "YulLiteral",
                            "src": "23749:3:136",
                            "type": "",
                            "value": "224"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "23754:10:136",
                            "nodeType": "YulLiteral",
                            "src": "23754:10:136",
                            "type": "",
                            "value": "0x4e487b71"
                          }
                        ],
                        "functionName": {
                          "name": "shl",
                          "nativeSrc": "23745:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "23745:3:136"
                        },
                        "nativeSrc": "23745:20:136",
                        "nodeType": "YulFunctionCall",
                        "src": "23745:20:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "23735:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "23735:6:136"
                    },
                    "nativeSrc": "23735:31:136",
                    "nodeType": "YulFunctionCall",
                    "src": "23735:31:136"
                  },
                  "nativeSrc": "23735:31:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "23735:31:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "23782:1:136",
                        "nodeType": "YulLiteral",
                        "src": "23782:1:136",
                        "type": "",
                        "value": "4"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "23785:4:136",
                        "nodeType": "YulLiteral",
                        "src": "23785:4:136",
                        "type": "",
                        "value": "0x11"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "23775:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "23775:6:136"
                    },
                    "nativeSrc": "23775:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "23775:15:136"
                  },
                  "nativeSrc": "23775:15:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "23775:15:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "23806:1:136",
                        "nodeType": "YulLiteral",
                        "src": "23806:1:136",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "23809:4:136",
                        "nodeType": "YulLiteral",
                        "src": "23809:4:136",
                        "type": "",
                        "value": "0x24"
                      }
                    ],
                    "functionName": {
                      "name": "revert",
                      "nativeSrc": "23799:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "23799:6:136"
                    },
                    "nativeSrc": "23799:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "23799:15:136"
                  },
                  "nativeSrc": "23799:15:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "23799:15:136"
                }
              ]
            },
            "name": "panic_error_0x11",
            "nativeSrc": "23693:127:136",
            "nodeType": "YulFunctionDefinition",
            "src": "23693:127:136"
          },
          {
            "body": {
              "nativeSrc": "23872:108:136",
              "nodeType": "YulBlock",
              "src": "23872:108:136",
              "statements": [
                {
                  "nativeSrc": "23882:42:136",
                  "nodeType": "YulAssignment",
                  "src": "23882:42:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "x",
                            "nativeSrc": "23897:1:136",
                            "nodeType": "YulIdentifier",
                            "src": "23897:1:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "23900:6:136",
                            "nodeType": "YulLiteral",
                            "src": "23900:6:136",
                            "type": "",
                            "value": "0xffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "23893:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "23893:3:136"
                        },
                        "nativeSrc": "23893:14:136",
                        "nodeType": "YulFunctionCall",
                        "src": "23893:14:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "y",
                            "nativeSrc": "23913:1:136",
                            "nodeType": "YulIdentifier",
                            "src": "23913:1:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "23916:6:136",
                            "nodeType": "YulLiteral",
                            "src": "23916:6:136",
                            "type": "",
                            "value": "0xffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "23909:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "23909:3:136"
                        },
                        "nativeSrc": "23909:14:136",
                        "nodeType": "YulFunctionCall",
                        "src": "23909:14:136"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "23889:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "23889:3:136"
                    },
                    "nativeSrc": "23889:35:136",
                    "nodeType": "YulFunctionCall",
                    "src": "23889:35:136"
                  },
                  "variableNames": [
                    {
                      "name": "sum",
                      "nativeSrc": "23882:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "23882:3:136"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "23952:22:136",
                    "nodeType": "YulBlock",
                    "src": "23952:22:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x11",
                            "nativeSrc": "23954:16:136",
                            "nodeType": "YulIdentifier",
                            "src": "23954:16:136"
                          },
                          "nativeSrc": "23954:18:136",
                          "nodeType": "YulFunctionCall",
                          "src": "23954:18:136"
                        },
                        "nativeSrc": "23954:18:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "23954:18:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "sum",
                        "nativeSrc": "23939:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "23939:3:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "23944:6:136",
                        "nodeType": "YulLiteral",
                        "src": "23944:6:136",
                        "type": "",
                        "value": "0xffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "23936:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "23936:2:136"
                    },
                    "nativeSrc": "23936:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "23936:15:136"
                  },
                  "nativeSrc": "23933:41:136",
                  "nodeType": "YulIf",
                  "src": "23933:41:136"
                }
              ]
            },
            "name": "checked_add_t_uint16",
            "nativeSrc": "23825:155:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "x",
                "nativeSrc": "23855:1:136",
                "nodeType": "YulTypedName",
                "src": "23855:1:136",
                "type": ""
              },
              {
                "name": "y",
                "nativeSrc": "23858:1:136",
                "nodeType": "YulTypedName",
                "src": "23858:1:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "sum",
                "nativeSrc": "23864:3:136",
                "nodeType": "YulTypedName",
                "src": "23864:3:136",
                "type": ""
              }
            ],
            "src": "23825:155:136"
          },
          {
            "body": {
              "nativeSrc": "24017:95:136",
              "nodeType": "YulBlock",
              "src": "24017:95:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "24034:1:136",
                        "nodeType": "YulLiteral",
                        "src": "24034:1:136",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "24041:3:136",
                            "nodeType": "YulLiteral",
                            "src": "24041:3:136",
                            "type": "",
                            "value": "224"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "24046:10:136",
                            "nodeType": "YulLiteral",
                            "src": "24046:10:136",
                            "type": "",
                            "value": "0x4e487b71"
                          }
                        ],
                        "functionName": {
                          "name": "shl",
                          "nativeSrc": "24037:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "24037:3:136"
                        },
                        "nativeSrc": "24037:20:136",
                        "nodeType": "YulFunctionCall",
                        "src": "24037:20:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "24027:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "24027:6:136"
                    },
                    "nativeSrc": "24027:31:136",
                    "nodeType": "YulFunctionCall",
                    "src": "24027:31:136"
                  },
                  "nativeSrc": "24027:31:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "24027:31:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "24074:1:136",
                        "nodeType": "YulLiteral",
                        "src": "24074:1:136",
                        "type": "",
                        "value": "4"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "24077:4:136",
                        "nodeType": "YulLiteral",
                        "src": "24077:4:136",
                        "type": "",
                        "value": "0x32"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "24067:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "24067:6:136"
                    },
                    "nativeSrc": "24067:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "24067:15:136"
                  },
                  "nativeSrc": "24067:15:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "24067:15:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "24098:1:136",
                        "nodeType": "YulLiteral",
                        "src": "24098:1:136",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "24101:4:136",
                        "nodeType": "YulLiteral",
                        "src": "24101:4:136",
                        "type": "",
                        "value": "0x24"
                      }
                    ],
                    "functionName": {
                      "name": "revert",
                      "nativeSrc": "24091:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "24091:6:136"
                    },
                    "nativeSrc": "24091:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "24091:15:136"
                  },
                  "nativeSrc": "24091:15:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "24091:15:136"
                }
              ]
            },
            "name": "panic_error_0x32",
            "nativeSrc": "23985:127:136",
            "nodeType": "YulFunctionDefinition",
            "src": "23985:127:136"
          },
          {
            "body": {
              "nativeSrc": "24177:162:136",
              "nodeType": "YulBlock",
              "src": "24177:162:136",
              "statements": [
                {
                  "nativeSrc": "24187:26:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "24187:26:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "24207:5:136",
                        "nodeType": "YulIdentifier",
                        "src": "24207:5:136"
                      }
                    ],
                    "functionName": {
                      "name": "mload",
                      "nativeSrc": "24201:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "24201:5:136"
                    },
                    "nativeSrc": "24201:12:136",
                    "nodeType": "YulFunctionCall",
                    "src": "24201:12:136"
                  },
                  "variables": [
                    {
                      "name": "length",
                      "nativeSrc": "24191:6:136",
                      "nodeType": "YulTypedName",
                      "src": "24191:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "24228:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "24228:3:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value",
                            "nativeSrc": "24237:5:136",
                            "nodeType": "YulIdentifier",
                            "src": "24237:5:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "24244:4:136",
                            "nodeType": "YulLiteral",
                            "src": "24244:4:136",
                            "type": "",
                            "value": "0x20"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "24233:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "24233:3:136"
                        },
                        "nativeSrc": "24233:16:136",
                        "nodeType": "YulFunctionCall",
                        "src": "24233:16:136"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "24251:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "24251:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "mcopy",
                      "nativeSrc": "24222:5:136",
                      "nodeType": "YulIdentifier",
                      "src": "24222:5:136"
                    },
                    "nativeSrc": "24222:36:136",
                    "nodeType": "YulFunctionCall",
                    "src": "24222:36:136"
                  },
                  "nativeSrc": "24222:36:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "24222:36:136"
                },
                {
                  "nativeSrc": "24267:26:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "24267:26:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "24281:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "24281:3:136"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "24286:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "24286:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "24277:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "24277:3:136"
                    },
                    "nativeSrc": "24277:16:136",
                    "nodeType": "YulFunctionCall",
                    "src": "24277:16:136"
                  },
                  "variables": [
                    {
                      "name": "_1",
                      "nativeSrc": "24271:2:136",
                      "nodeType": "YulTypedName",
                      "src": "24271:2:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "_1",
                        "nativeSrc": "24309:2:136",
                        "nodeType": "YulIdentifier",
                        "src": "24309:2:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "24313:1:136",
                        "nodeType": "YulLiteral",
                        "src": "24313:1:136",
                        "type": "",
                        "value": "0"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "24302:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "24302:6:136"
                    },
                    "nativeSrc": "24302:13:136",
                    "nodeType": "YulFunctionCall",
                    "src": "24302:13:136"
                  },
                  "nativeSrc": "24302:13:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "24302:13:136"
                },
                {
                  "nativeSrc": "24324:9:136",
                  "nodeType": "YulAssignment",
                  "src": "24324:9:136",
                  "value": {
                    "name": "_1",
                    "nativeSrc": "24331:2:136",
                    "nodeType": "YulIdentifier",
                    "src": "24331:2:136"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "24324:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "24324:3:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_bytes_memory_ptr",
            "nativeSrc": "24117:222:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "value",
                "nativeSrc": "24154:5:136",
                "nodeType": "YulTypedName",
                "src": "24154:5:136",
                "type": ""
              },
              {
                "name": "pos",
                "nativeSrc": "24161:3:136",
                "nodeType": "YulTypedName",
                "src": "24161:3:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "24169:3:136",
                "nodeType": "YulTypedName",
                "src": "24169:3:136",
                "type": ""
              }
            ],
            "src": "24117:222:136"
          },
          {
            "body": {
              "nativeSrc": "24527:100:136",
              "nodeType": "YulBlock",
              "src": "24527:100:136",
              "statements": [
                {
                  "nativeSrc": "24537:84:136",
                  "nodeType": "YulAssignment",
                  "src": "24537:84:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value1",
                        "nativeSrc": "24572:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "24572:6:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "24608:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "24608:6:136"
                          },
                          {
                            "name": "pos",
                            "nativeSrc": "24616:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "24616:3:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_encode_bytes_memory_ptr",
                          "nativeSrc": "24580:27:136",
                          "nodeType": "YulIdentifier",
                          "src": "24580:27:136"
                        },
                        "nativeSrc": "24580:40:136",
                        "nodeType": "YulFunctionCall",
                        "src": "24580:40:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes_memory_ptr",
                      "nativeSrc": "24544:27:136",
                      "nodeType": "YulIdentifier",
                      "src": "24544:27:136"
                    },
                    "nativeSrc": "24544:77:136",
                    "nodeType": "YulFunctionCall",
                    "src": "24544:77:136"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "24537:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "24537:3:136"
                    }
                  ]
                }
              ]
            },
            "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": "24344:283:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "24495:3:136",
                "nodeType": "YulTypedName",
                "src": "24495:3:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "24500:6:136",
                "nodeType": "YulTypedName",
                "src": "24500:6:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "24508:6:136",
                "nodeType": "YulTypedName",
                "src": "24508:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "24519:3:136",
                "nodeType": "YulTypedName",
                "src": "24519:3:136",
                "type": ""
              }
            ],
            "src": "24344:283:136"
          },
          {
            "body": {
              "nativeSrc": "24969:399:136",
              "nodeType": "YulBlock",
              "src": "24969:399:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "24986:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "24986:9:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "25001:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "25001:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "25009:4:136",
                            "nodeType": "YulLiteral",
                            "src": "25009:4:136",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "24997:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "24997:3:136"
                        },
                        "nativeSrc": "24997:17:136",
                        "nodeType": "YulFunctionCall",
                        "src": "24997:17:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "24979:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "24979:6:136"
                    },
                    "nativeSrc": "24979:36:136",
                    "nodeType": "YulFunctionCall",
                    "src": "24979:36:136"
                  },
                  "nativeSrc": "24979:36:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "24979:36:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "25035:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "25035:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "25046:2:136",
                            "nodeType": "YulLiteral",
                            "src": "25046:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "25031:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "25031:3:136"
                        },
                        "nativeSrc": "25031:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "25031:18:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "25051:3:136",
                        "nodeType": "YulLiteral",
                        "src": "25051:3:136",
                        "type": "",
                        "value": "128"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "25024:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "25024:6:136"
                    },
                    "nativeSrc": "25024:31:136",
                    "nodeType": "YulFunctionCall",
                    "src": "25024:31:136"
                  },
                  "nativeSrc": "25024:31:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "25024:31:136"
                },
                {
                  "nativeSrc": "25064:59:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "25064:59:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value1",
                        "nativeSrc": "25095:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "25095:6:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "25107:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "25107:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "25118:3:136",
                            "nodeType": "YulLiteral",
                            "src": "25118:3:136",
                            "type": "",
                            "value": "128"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "25103:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "25103:3:136"
                        },
                        "nativeSrc": "25103:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "25103:19:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes",
                      "nativeSrc": "25078:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "25078:16:136"
                    },
                    "nativeSrc": "25078:45:136",
                    "nodeType": "YulFunctionCall",
                    "src": "25078:45:136"
                  },
                  "variables": [
                    {
                      "name": "tail_1",
                      "nativeSrc": "25068:6:136",
                      "nodeType": "YulTypedName",
                      "src": "25068:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "25143:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "25143:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "25154:2:136",
                            "nodeType": "YulLiteral",
                            "src": "25154:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "25139:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "25139:3:136"
                        },
                        "nativeSrc": "25139:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "25139:18:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "tail_1",
                            "nativeSrc": "25163:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "25163:6:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "25171:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "25171:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "25159:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "25159:3:136"
                        },
                        "nativeSrc": "25159:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "25159:22:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "25132:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "25132:6:136"
                    },
                    "nativeSrc": "25132:50:136",
                    "nodeType": "YulFunctionCall",
                    "src": "25132:50:136"
                  },
                  "nativeSrc": "25132:50:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "25132:50:136"
                },
                {
                  "nativeSrc": "25191:46:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "25191:46:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value2",
                        "nativeSrc": "25222:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "25222:6:136"
                      },
                      {
                        "name": "tail_1",
                        "nativeSrc": "25230:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "25230:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes",
                      "nativeSrc": "25205:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "25205:16:136"
                    },
                    "nativeSrc": "25205:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "25205:32:136"
                  },
                  "variables": [
                    {
                      "name": "tail_2",
                      "nativeSrc": "25195:6:136",
                      "nodeType": "YulTypedName",
                      "src": "25195:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "25257:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "25257:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "25268:2:136",
                            "nodeType": "YulLiteral",
                            "src": "25268:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "25253:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "25253:3:136"
                        },
                        "nativeSrc": "25253:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "25253:18:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "tail_2",
                            "nativeSrc": "25277:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "25277:6:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "25285:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "25285:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "25273:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "25273:3:136"
                        },
                        "nativeSrc": "25273:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "25273:22:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "25246:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "25246:6:136"
                    },
                    "nativeSrc": "25246:50:136",
                    "nodeType": "YulFunctionCall",
                    "src": "25246:50:136"
                  },
                  "nativeSrc": "25246:50:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "25246:50:136"
                },
                {
                  "nativeSrc": "25305:57:136",
                  "nodeType": "YulAssignment",
                  "src": "25305:57:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value3",
                        "nativeSrc": "25347:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "25347:6:136"
                      },
                      {
                        "name": "tail_2",
                        "nativeSrc": "25355:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "25355:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_array_array_string_dyn",
                      "nativeSrc": "25313:33:136",
                      "nodeType": "YulIdentifier",
                      "src": "25313:33:136"
                    },
                    "nativeSrc": "25313:49:136",
                    "nodeType": "YulFunctionCall",
                    "src": "25313:49:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "25305:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "25305:4:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint8_t_string_memory_ptr_t_string_memory_ptr_t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr__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__fromStack_reversed",
            "nativeSrc": "24632:736:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "24914:9:136",
                "nodeType": "YulTypedName",
                "src": "24914:9:136",
                "type": ""
              },
              {
                "name": "value3",
                "nativeSrc": "24925:6:136",
                "nodeType": "YulTypedName",
                "src": "24925:6:136",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "24933:6:136",
                "nodeType": "YulTypedName",
                "src": "24933:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "24941:6:136",
                "nodeType": "YulTypedName",
                "src": "24941:6:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "24949:6:136",
                "nodeType": "YulTypedName",
                "src": "24949:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "24960:4:136",
                "nodeType": "YulTypedName",
                "src": "24960:4:136",
                "type": ""
              }
            ],
            "src": "24632:736:136"
          },
          {
            "body": {
              "nativeSrc": "25785:534:136",
              "nodeType": "YulBlock",
              "src": "25785:534:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "value0",
                        "nativeSrc": "25833:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "25833:6:136"
                      },
                      {
                        "name": "headStart",
                        "nativeSrc": "25841:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "25841:9:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_enum_RadonRetrievalMethods",
                      "nativeSrc": "25795:37:136",
                      "nodeType": "YulIdentifier",
                      "src": "25795:37:136"
                    },
                    "nativeSrc": "25795:56:136",
                    "nodeType": "YulFunctionCall",
                    "src": "25795:56:136"
                  },
                  "nativeSrc": "25795:56:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "25795:56:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "25871:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "25871:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "25882:2:136",
                            "nodeType": "YulLiteral",
                            "src": "25882:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "25867:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "25867:3:136"
                        },
                        "nativeSrc": "25867:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "25867:18:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "25887:3:136",
                        "nodeType": "YulLiteral",
                        "src": "25887:3:136",
                        "type": "",
                        "value": "160"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "25860:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "25860:6:136"
                    },
                    "nativeSrc": "25860:31:136",
                    "nodeType": "YulFunctionCall",
                    "src": "25860:31:136"
                  },
                  "nativeSrc": "25860:31:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "25860:31:136"
                },
                {
                  "nativeSrc": "25900:59:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "25900:59:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value1",
                        "nativeSrc": "25931:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "25931:6:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "25943:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "25943:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "25954:3:136",
                            "nodeType": "YulLiteral",
                            "src": "25954:3:136",
                            "type": "",
                            "value": "160"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "25939:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "25939:3:136"
                        },
                        "nativeSrc": "25939:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "25939:19:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes",
                      "nativeSrc": "25914:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "25914:16:136"
                    },
                    "nativeSrc": "25914:45:136",
                    "nodeType": "YulFunctionCall",
                    "src": "25914:45:136"
                  },
                  "variables": [
                    {
                      "name": "tail_1",
                      "nativeSrc": "25904:6:136",
                      "nodeType": "YulTypedName",
                      "src": "25904:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "25979:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "25979:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "25990:2:136",
                            "nodeType": "YulLiteral",
                            "src": "25990:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "25975:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "25975:3:136"
                        },
                        "nativeSrc": "25975:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "25975:18:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "tail_1",
                            "nativeSrc": "25999:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "25999:6:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "26007:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "26007:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "25995:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "25995:3:136"
                        },
                        "nativeSrc": "25995:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "25995:22:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "25968:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "25968:6:136"
                    },
                    "nativeSrc": "25968:50:136",
                    "nodeType": "YulFunctionCall",
                    "src": "25968:50:136"
                  },
                  "nativeSrc": "25968:50:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "25968:50:136"
                },
                {
                  "nativeSrc": "26027:46:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "26027:46:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value2",
                        "nativeSrc": "26058:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "26058:6:136"
                      },
                      {
                        "name": "tail_1",
                        "nativeSrc": "26066:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "26066:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes",
                      "nativeSrc": "26041:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "26041:16:136"
                    },
                    "nativeSrc": "26041:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "26041:32:136"
                  },
                  "variables": [
                    {
                      "name": "tail_2",
                      "nativeSrc": "26031:6:136",
                      "nodeType": "YulTypedName",
                      "src": "26031:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "26093:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "26093:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "26104:2:136",
                            "nodeType": "YulLiteral",
                            "src": "26104:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "26089:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "26089:3:136"
                        },
                        "nativeSrc": "26089:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "26089:18:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "tail_2",
                            "nativeSrc": "26113:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "26113:6:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "26121:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "26121:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "26109:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "26109:3:136"
                        },
                        "nativeSrc": "26109:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "26109:22:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "26082:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "26082:6:136"
                    },
                    "nativeSrc": "26082:50:136",
                    "nodeType": "YulFunctionCall",
                    "src": "26082:50:136"
                  },
                  "nativeSrc": "26082:50:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "26082:50:136"
                },
                {
                  "nativeSrc": "26141:63:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "26141:63:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value3",
                        "nativeSrc": "26189:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "26189:6:136"
                      },
                      {
                        "name": "tail_2",
                        "nativeSrc": "26197:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "26197:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_array_array_string_dyn",
                      "nativeSrc": "26155:33:136",
                      "nodeType": "YulIdentifier",
                      "src": "26155:33:136"
                    },
                    "nativeSrc": "26155:49:136",
                    "nodeType": "YulFunctionCall",
                    "src": "26155:49:136"
                  },
                  "variables": [
                    {
                      "name": "tail_3",
                      "nativeSrc": "26145:6:136",
                      "nodeType": "YulTypedName",
                      "src": "26145:6:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "26224:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "26224:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "26235:3:136",
                            "nodeType": "YulLiteral",
                            "src": "26235:3:136",
                            "type": "",
                            "value": "128"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "26220:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "26220:3:136"
                        },
                        "nativeSrc": "26220:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "26220:19:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "tail_3",
                            "nativeSrc": "26245:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "26245:6:136"
                          },
                          {
                            "name": "headStart",
                            "nativeSrc": "26253:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "26253:9:136"
                          }
                        ],
                        "functionName": {
                          "name": "sub",
                          "nativeSrc": "26241:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "26241:3:136"
                        },
                        "nativeSrc": "26241:22:136",
                        "nodeType": "YulFunctionCall",
                        "src": "26241:22:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "26213:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "26213:6:136"
                    },
                    "nativeSrc": "26213:51:136",
                    "nodeType": "YulFunctionCall",
                    "src": "26213:51:136"
                  },
                  "nativeSrc": "26213:51:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "26213:51:136"
                },
                {
                  "nativeSrc": "26273:40:136",
                  "nodeType": "YulAssignment",
                  "src": "26273:40:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value4",
                        "nativeSrc": "26298:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "26298:6:136"
                      },
                      {
                        "name": "tail_3",
                        "nativeSrc": "26306:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "26306:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes",
                      "nativeSrc": "26281:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "26281:16:136"
                    },
                    "nativeSrc": "26281:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "26281:32:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "26273:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "26273:4:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_enum$_RadonRetrievalMethods_$37802_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__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": "25373:946:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "25722:9:136",
                "nodeType": "YulTypedName",
                "src": "25722:9:136",
                "type": ""
              },
              {
                "name": "value4",
                "nativeSrc": "25733:6:136",
                "nodeType": "YulTypedName",
                "src": "25733:6:136",
                "type": ""
              },
              {
                "name": "value3",
                "nativeSrc": "25741:6:136",
                "nodeType": "YulTypedName",
                "src": "25741:6:136",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "25749:6:136",
                "nodeType": "YulTypedName",
                "src": "25749:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "25757:6:136",
                "nodeType": "YulTypedName",
                "src": "25757:6:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "25765:6:136",
                "nodeType": "YulTypedName",
                "src": "25765:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "25776:4:136",
                "nodeType": "YulTypedName",
                "src": "25776:4:136",
                "type": ""
              }
            ],
            "src": "25373:946:136"
          },
          {
            "body": {
              "nativeSrc": "26498:239:136",
              "nodeType": "YulBlock",
              "src": "26498:239:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "26515:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "26515:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "26526:2:136",
                        "nodeType": "YulLiteral",
                        "src": "26526:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "26508:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "26508:6:136"
                    },
                    "nativeSrc": "26508:21:136",
                    "nodeType": "YulFunctionCall",
                    "src": "26508:21:136"
                  },
                  "nativeSrc": "26508:21:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "26508:21:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "26549:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "26549:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "26560:2:136",
                            "nodeType": "YulLiteral",
                            "src": "26560:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "26545:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "26545:3:136"
                        },
                        "nativeSrc": "26545:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "26545:18:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "26565:2:136",
                        "nodeType": "YulLiteral",
                        "src": "26565:2:136",
                        "type": "",
                        "value": "49"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "26538:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "26538:6:136"
                    },
                    "nativeSrc": "26538:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "26538:30:136"
                  },
                  "nativeSrc": "26538:30:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "26538:30:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "26588:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "26588:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "26599:2:136",
                            "nodeType": "YulLiteral",
                            "src": "26599:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "26584:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "26584:3:136"
                        },
                        "nativeSrc": "26584:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "26584:18:136"
                      },
                      {
                        "hexValue": "5769744f7261636c655261646f6e456e636f64696e674c69623a20696e76616c",
                        "kind": "string",
                        "nativeSrc": "26604:34:136",
                        "nodeType": "YulLiteral",
                        "src": "26604:34:136",
                        "type": "",
                        "value": "WitOracleRadonEncodingLib: inval"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "26577:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "26577:6:136"
                    },
                    "nativeSrc": "26577:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "26577:62:136"
                  },
                  "nativeSrc": "26577:62:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "26577:62:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "26659:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "26659:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "26670:2:136",
                            "nodeType": "YulLiteral",
                            "src": "26670:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "26655:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "26655:3:136"
                        },
                        "nativeSrc": "26655:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "26655:18:136"
                      },
                      {
                        "hexValue": "696420534c413a206e6f20726577617264",
                        "kind": "string",
                        "nativeSrc": "26675:19:136",
                        "nodeType": "YulLiteral",
                        "src": "26675:19:136",
                        "type": "",
                        "value": "id SLA: no reward"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "26648:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "26648:6:136"
                    },
                    "nativeSrc": "26648:47:136",
                    "nodeType": "YulFunctionCall",
                    "src": "26648:47:136"
                  },
                  "nativeSrc": "26648:47:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "26648:47:136"
                },
                {
                  "nativeSrc": "26704:27:136",
                  "nodeType": "YulAssignment",
                  "src": "26704:27:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "26716:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "26716:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "26727:3:136",
                        "nodeType": "YulLiteral",
                        "src": "26727:3:136",
                        "type": "",
                        "value": "128"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "26712:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "26712:3:136"
                    },
                    "nativeSrc": "26712:19:136",
                    "nodeType": "YulFunctionCall",
                    "src": "26712:19:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "26704:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "26704:4:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_stringliteral_04f8ba16d0c093b5f8aeedbd38b89b45db1cae931e9ce6b7857ab483f725335d__to_t_string_memory_ptr__fromStack_reversed",
            "nativeSrc": "26324:413:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "26475:9:136",
                "nodeType": "YulTypedName",
                "src": "26475:9:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "26489:4:136",
                "nodeType": "YulTypedName",
                "src": "26489:4:136",
                "type": ""
              }
            ],
            "src": "26324:413:136"
          },
          {
            "body": {
              "nativeSrc": "26916:242:136",
              "nodeType": "YulBlock",
              "src": "26916:242:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "26933:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "26933:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "26944:2:136",
                        "nodeType": "YulLiteral",
                        "src": "26944:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "26926:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "26926:6:136"
                    },
                    "nativeSrc": "26926:21:136",
                    "nodeType": "YulFunctionCall",
                    "src": "26926:21:136"
                  },
                  "nativeSrc": "26926:21:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "26926:21:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "26967:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "26967:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "26978:2:136",
                            "nodeType": "YulLiteral",
                            "src": "26978:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "26963:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "26963:3:136"
                        },
                        "nativeSrc": "26963:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "26963:18:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "26983:2:136",
                        "nodeType": "YulLiteral",
                        "src": "26983:2:136",
                        "type": "",
                        "value": "52"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "26956:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "26956:6:136"
                    },
                    "nativeSrc": "26956:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "26956:30:136"
                  },
                  "nativeSrc": "26956:30:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "26956:30:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "27006:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "27006:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "27017:2:136",
                            "nodeType": "YulLiteral",
                            "src": "27017:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "27002:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "27002:3:136"
                        },
                        "nativeSrc": "27002:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "27002:18:136"
                      },
                      {
                        "hexValue": "5769744f7261636c655261646f6e456e636f64696e674c69623a20696e76616c",
                        "kind": "string",
                        "nativeSrc": "27022:34:136",
                        "nodeType": "YulLiteral",
                        "src": "27022:34:136",
                        "type": "",
                        "value": "WitOracleRadonEncodingLib: inval"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "26995:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "26995:6:136"
                    },
                    "nativeSrc": "26995:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "26995:62:136"
                  },
                  "nativeSrc": "26995:62:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "26995:62:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "27077:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "27077:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "27088:2:136",
                            "nodeType": "YulLiteral",
                            "src": "27088:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "27073:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "27073:3:136"
                        },
                        "nativeSrc": "27073:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "27073:18:136"
                      },
                      {
                        "hexValue": "696420534c413a206e6f207769746e6573736573",
                        "kind": "string",
                        "nativeSrc": "27093:22:136",
                        "nodeType": "YulLiteral",
                        "src": "27093:22:136",
                        "type": "",
                        "value": "id SLA: no witnesses"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "27066:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "27066:6:136"
                    },
                    "nativeSrc": "27066:50:136",
                    "nodeType": "YulFunctionCall",
                    "src": "27066:50:136"
                  },
                  "nativeSrc": "27066:50:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "27066:50:136"
                },
                {
                  "nativeSrc": "27125:27:136",
                  "nodeType": "YulAssignment",
                  "src": "27125:27:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "27137:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "27137:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "27148:3:136",
                        "nodeType": "YulLiteral",
                        "src": "27148:3:136",
                        "type": "",
                        "value": "128"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "27133:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "27133:3:136"
                    },
                    "nativeSrc": "27133:19:136",
                    "nodeType": "YulFunctionCall",
                    "src": "27133:19:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "27125:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "27125:4:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_stringliteral_79d228fa71a751ad8e734cf47bae8cbc208746d64ffd9076b12d509d7a13b1c2__to_t_string_memory_ptr__fromStack_reversed",
            "nativeSrc": "26742:416:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "26893:9:136",
                "nodeType": "YulTypedName",
                "src": "26893:9:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "26907:4:136",
                "nodeType": "YulTypedName",
                "src": "26907:4:136",
                "type": ""
              }
            ],
            "src": "26742:416:136"
          },
          {
            "body": {
              "nativeSrc": "27337:295:136",
              "nodeType": "YulBlock",
              "src": "27337:295:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "27354:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "27354:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "27365:2:136",
                        "nodeType": "YulLiteral",
                        "src": "27365:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "27347:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "27347:6:136"
                    },
                    "nativeSrc": "27347:21:136",
                    "nodeType": "YulFunctionCall",
                    "src": "27347:21:136"
                  },
                  "nativeSrc": "27347:21:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "27347:21:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "27388:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "27388:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "27399:2:136",
                            "nodeType": "YulLiteral",
                            "src": "27399:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "27384:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "27384:3:136"
                        },
                        "nativeSrc": "27384:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "27384:18:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "27404:2:136",
                        "nodeType": "YulLiteral",
                        "src": "27404:2:136",
                        "type": "",
                        "value": "65"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "27377:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "27377:6:136"
                    },
                    "nativeSrc": "27377:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "27377:30:136"
                  },
                  "nativeSrc": "27377:30:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "27377:30:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "27427:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "27427:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "27438:2:136",
                            "nodeType": "YulLiteral",
                            "src": "27438:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "27423:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "27423:3:136"
                        },
                        "nativeSrc": "27423:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "27423:18:136"
                      },
                      {
                        "hexValue": "5769744f7261636c655261646f6e456e636f64696e674c69623a20696e76616c",
                        "kind": "string",
                        "nativeSrc": "27443:34:136",
                        "nodeType": "YulLiteral",
                        "src": "27443:34:136",
                        "type": "",
                        "value": "WitOracleRadonEncodingLib: inval"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "27416:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "27416:6:136"
                    },
                    "nativeSrc": "27416:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "27416:62:136"
                  },
                  "nativeSrc": "27416:62:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "27416:62:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "27498:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "27498:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "27509:2:136",
                            "nodeType": "YulLiteral",
                            "src": "27509:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "27494:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "27494:3:136"
                        },
                        "nativeSrc": "27494:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "27494:18:136"
                      },
                      {
                        "hexValue": "696420534c413a20746f6f206d616e79207769746e657373657320283e313237",
                        "kind": "string",
                        "nativeSrc": "27514:34:136",
                        "nodeType": "YulLiteral",
                        "src": "27514:34:136",
                        "type": "",
                        "value": "id SLA: too many witnesses (>127"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "27487:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "27487:6:136"
                    },
                    "nativeSrc": "27487:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "27487:62:136"
                  },
                  "nativeSrc": "27487:62:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "27487:62:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "27569:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "27569:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "27580:3:136",
                            "nodeType": "YulLiteral",
                            "src": "27580:3:136",
                            "type": "",
                            "value": "128"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "27565:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "27565:3:136"
                        },
                        "nativeSrc": "27565:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "27565:19:136"
                      },
                      {
                        "hexValue": "29",
                        "kind": "string",
                        "nativeSrc": "27586:3:136",
                        "nodeType": "YulLiteral",
                        "src": "27586:3:136",
                        "type": "",
                        "value": ")"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "27558:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "27558:6:136"
                    },
                    "nativeSrc": "27558:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "27558:32:136"
                  },
                  "nativeSrc": "27558:32:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "27558:32:136"
                },
                {
                  "nativeSrc": "27599:27:136",
                  "nodeType": "YulAssignment",
                  "src": "27599:27:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "27611:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "27611:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "27622:3:136",
                        "nodeType": "YulLiteral",
                        "src": "27622:3:136",
                        "type": "",
                        "value": "160"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "27607:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "27607:3:136"
                    },
                    "nativeSrc": "27607:19:136",
                    "nodeType": "YulFunctionCall",
                    "src": "27607:19:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "27599:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "27599:4:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_stringliteral_42f3a6e356b0c1db9a0fae77d82b65ad778b2afa7e75476e6353ce66757adcd5__to_t_string_memory_ptr__fromStack_reversed",
            "nativeSrc": "27163:469:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "27314:9:136",
                "nodeType": "YulTypedName",
                "src": "27314:9:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "27328:4:136",
                "nodeType": "YulTypedName",
                "src": "27328:4:136",
                "type": ""
              }
            ],
            "src": "27163:469:136"
          },
          {
            "body": {
              "nativeSrc": "27811:303:136",
              "nodeType": "YulBlock",
              "src": "27811:303:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "27828:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "27828:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "27839:2:136",
                        "nodeType": "YulLiteral",
                        "src": "27839:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "27821:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "27821:6:136"
                    },
                    "nativeSrc": "27821:21:136",
                    "nodeType": "YulFunctionCall",
                    "src": "27821:21:136"
                  },
                  "nativeSrc": "27821:21:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "27821:21:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "27862:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "27862:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "27873:2:136",
                            "nodeType": "YulLiteral",
                            "src": "27873:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "27858:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "27858:3:136"
                        },
                        "nativeSrc": "27858:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "27858:18:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "27878:2:136",
                        "nodeType": "YulLiteral",
                        "src": "27878:2:136",
                        "type": "",
                        "value": "73"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "27851:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "27851:6:136"
                    },
                    "nativeSrc": "27851:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "27851:30:136"
                  },
                  "nativeSrc": "27851:30:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "27851:30:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "27901:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "27901:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "27912:2:136",
                            "nodeType": "YulLiteral",
                            "src": "27912:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "27897:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "27897:3:136"
                        },
                        "nativeSrc": "27897:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "27897:18:136"
                      },
                      {
                        "hexValue": "5769744f7261636c655261646f6e456e636f64696e674c69623a20696e76616c",
                        "kind": "string",
                        "nativeSrc": "27917:34:136",
                        "nodeType": "YulLiteral",
                        "src": "27917:34:136",
                        "type": "",
                        "value": "WitOracleRadonEncodingLib: inval"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "27890:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "27890:6:136"
                    },
                    "nativeSrc": "27890:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "27890:62:136"
                  },
                  "nativeSrc": "27890:62:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "27890:62:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "27972:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "27972:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "27983:2:136",
                            "nodeType": "YulLiteral",
                            "src": "27983:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "27968:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "27968:3:136"
                        },
                        "nativeSrc": "27968:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "27968:18:136"
                      },
                      {
                        "hexValue": "696420534c413a20636f6e73656e7375732070657263656e74616765206f7574",
                        "kind": "string",
                        "nativeSrc": "27988:34:136",
                        "nodeType": "YulLiteral",
                        "src": "27988:34:136",
                        "type": "",
                        "value": "id SLA: consensus percentage out"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "27961:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "27961:6:136"
                    },
                    "nativeSrc": "27961:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "27961:62:136"
                  },
                  "nativeSrc": "27961:62:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "27961:62:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "28043:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "28043:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "28054:3:136",
                            "nodeType": "YulLiteral",
                            "src": "28054:3:136",
                            "type": "",
                            "value": "128"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "28039:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "28039:3:136"
                        },
                        "nativeSrc": "28039:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "28039:19:136"
                      },
                      {
                        "hexValue": "206f662072616e6765",
                        "kind": "string",
                        "nativeSrc": "28060:11:136",
                        "nodeType": "YulLiteral",
                        "src": "28060:11:136",
                        "type": "",
                        "value": " of range"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "28032:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "28032:6:136"
                    },
                    "nativeSrc": "28032:40:136",
                    "nodeType": "YulFunctionCall",
                    "src": "28032:40:136"
                  },
                  "nativeSrc": "28032:40:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "28032:40:136"
                },
                {
                  "nativeSrc": "28081:27:136",
                  "nodeType": "YulAssignment",
                  "src": "28081:27:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "28093:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "28093:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "28104:3:136",
                        "nodeType": "YulLiteral",
                        "src": "28104:3:136",
                        "type": "",
                        "value": "160"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "28089:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "28089:3:136"
                    },
                    "nativeSrc": "28089:19:136",
                    "nodeType": "YulFunctionCall",
                    "src": "28089:19:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "28081:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "28081:4:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_stringliteral_faa6f1e8fde9a6c84dd64770c1b479dec3d0221e2cc74699b10e27d46a7149c5__to_t_string_memory_ptr__fromStack_reversed",
            "nativeSrc": "27637:477:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "27788:9:136",
                "nodeType": "YulTypedName",
                "src": "27788:9:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "27802:4:136",
                "nodeType": "YulTypedName",
                "src": "27802:4:136",
                "type": ""
              }
            ],
            "src": "27637:477:136"
          },
          {
            "body": {
              "nativeSrc": "28293:243:136",
              "nodeType": "YulBlock",
              "src": "28293:243:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "28310:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "28310:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "28321:2:136",
                        "nodeType": "YulLiteral",
                        "src": "28321:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "28303:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "28303:6:136"
                    },
                    "nativeSrc": "28303:21:136",
                    "nodeType": "YulFunctionCall",
                    "src": "28303:21:136"
                  },
                  "nativeSrc": "28303:21:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "28303:21:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "28344:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "28344:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "28355:2:136",
                            "nodeType": "YulLiteral",
                            "src": "28355:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "28340:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "28340:3:136"
                        },
                        "nativeSrc": "28340:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "28340:18:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "28360:2:136",
                        "nodeType": "YulLiteral",
                        "src": "28360:2:136",
                        "type": "",
                        "value": "53"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "28333:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "28333:6:136"
                    },
                    "nativeSrc": "28333:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "28333:30:136"
                  },
                  "nativeSrc": "28333:30:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "28333:30:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "28383:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "28383:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "28394:2:136",
                            "nodeType": "YulLiteral",
                            "src": "28394:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "28379:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "28379:3:136"
                        },
                        "nativeSrc": "28379:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "28379:18:136"
                      },
                      {
                        "hexValue": "5769744f7261636c655261646f6e456e636f64696e674c69623a20696e76616c",
                        "kind": "string",
                        "nativeSrc": "28399:34:136",
                        "nodeType": "YulLiteral",
                        "src": "28399:34:136",
                        "type": "",
                        "value": "WitOracleRadonEncodingLib: inval"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "28372:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "28372:6:136"
                    },
                    "nativeSrc": "28372:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "28372:62:136"
                  },
                  "nativeSrc": "28372:62:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "28372:62:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "28454:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "28454:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "28465:2:136",
                            "nodeType": "YulLiteral",
                            "src": "28465:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "28450:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "28450:3:136"
                        },
                        "nativeSrc": "28450:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "28450:18:136"
                      },
                      {
                        "hexValue": "696420534c413a206e6f20636f6c6c61746572616c",
                        "kind": "string",
                        "nativeSrc": "28470:23:136",
                        "nodeType": "YulLiteral",
                        "src": "28470:23:136",
                        "type": "",
                        "value": "id SLA: no collateral"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "28443:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "28443:6:136"
                    },
                    "nativeSrc": "28443:51:136",
                    "nodeType": "YulFunctionCall",
                    "src": "28443:51:136"
                  },
                  "nativeSrc": "28443:51:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "28443:51:136"
                },
                {
                  "nativeSrc": "28503:27:136",
                  "nodeType": "YulAssignment",
                  "src": "28503:27:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "28515:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "28515:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "28526:3:136",
                        "nodeType": "YulLiteral",
                        "src": "28526:3:136",
                        "type": "",
                        "value": "128"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "28511:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "28511:3:136"
                    },
                    "nativeSrc": "28511:19:136",
                    "nodeType": "YulFunctionCall",
                    "src": "28511:19:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "28503:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "28503:4:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_stringliteral_285f73ea2ef8e7a5d3d55eae8c4057b055c55ddec0573447c8accd8035be360f__to_t_string_memory_ptr__fromStack_reversed",
            "nativeSrc": "28119:417:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "28270:9:136",
                "nodeType": "YulTypedName",
                "src": "28270:9:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "28284:4:136",
                "nodeType": "YulTypedName",
                "src": "28284:4:136",
                "type": ""
              }
            ],
            "src": "28119:417:136"
          },
          {
            "body": {
              "nativeSrc": "28573:95:136",
              "nodeType": "YulBlock",
              "src": "28573:95:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "28590:1:136",
                        "nodeType": "YulLiteral",
                        "src": "28590:1:136",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "28597:3:136",
                            "nodeType": "YulLiteral",
                            "src": "28597:3:136",
                            "type": "",
                            "value": "224"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "28602:10:136",
                            "nodeType": "YulLiteral",
                            "src": "28602:10:136",
                            "type": "",
                            "value": "0x4e487b71"
                          }
                        ],
                        "functionName": {
                          "name": "shl",
                          "nativeSrc": "28593:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "28593:3:136"
                        },
                        "nativeSrc": "28593:20:136",
                        "nodeType": "YulFunctionCall",
                        "src": "28593:20:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "28583:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "28583:6:136"
                    },
                    "nativeSrc": "28583:31:136",
                    "nodeType": "YulFunctionCall",
                    "src": "28583:31:136"
                  },
                  "nativeSrc": "28583:31:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "28583:31:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "28630:1:136",
                        "nodeType": "YulLiteral",
                        "src": "28630:1:136",
                        "type": "",
                        "value": "4"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "28633:4:136",
                        "nodeType": "YulLiteral",
                        "src": "28633:4:136",
                        "type": "",
                        "value": "0x12"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "28623:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "28623:6:136"
                    },
                    "nativeSrc": "28623:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "28623:15:136"
                  },
                  "nativeSrc": "28623:15:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "28623:15:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "kind": "number",
                        "nativeSrc": "28654:1:136",
                        "nodeType": "YulLiteral",
                        "src": "28654:1:136",
                        "type": "",
                        "value": "0"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "28657:4:136",
                        "nodeType": "YulLiteral",
                        "src": "28657:4:136",
                        "type": "",
                        "value": "0x24"
                      }
                    ],
                    "functionName": {
                      "name": "revert",
                      "nativeSrc": "28647:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "28647:6:136"
                    },
                    "nativeSrc": "28647:15:136",
                    "nodeType": "YulFunctionCall",
                    "src": "28647:15:136"
                  },
                  "nativeSrc": "28647:15:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "28647:15:136"
                }
              ]
            },
            "name": "panic_error_0x12",
            "nativeSrc": "28541:127:136",
            "nodeType": "YulFunctionDefinition",
            "src": "28541:127:136"
          },
          {
            "body": {
              "nativeSrc": "28718:149:136",
              "nodeType": "YulBlock",
              "src": "28718:149:136",
              "statements": [
                {
                  "nativeSrc": "28728:37:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "28728:37:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "y",
                        "nativeSrc": "28743:1:136",
                        "nodeType": "YulIdentifier",
                        "src": "28743:1:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "28746:18:136",
                        "nodeType": "YulLiteral",
                        "src": "28746:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "and",
                      "nativeSrc": "28739:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "28739:3:136"
                    },
                    "nativeSrc": "28739:26:136",
                    "nodeType": "YulFunctionCall",
                    "src": "28739:26:136"
                  },
                  "variables": [
                    {
                      "name": "y_1",
                      "nativeSrc": "28732:3:136",
                      "nodeType": "YulTypedName",
                      "src": "28732:3:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "28789:22:136",
                    "nodeType": "YulBlock",
                    "src": "28789:22:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x12",
                            "nativeSrc": "28791:16:136",
                            "nodeType": "YulIdentifier",
                            "src": "28791:16:136"
                          },
                          "nativeSrc": "28791:18:136",
                          "nodeType": "YulFunctionCall",
                          "src": "28791:18:136"
                        },
                        "nativeSrc": "28791:18:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "28791:18:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "y_1",
                        "nativeSrc": "28784:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "28784:3:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "28777:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "28777:6:136"
                    },
                    "nativeSrc": "28777:11:136",
                    "nodeType": "YulFunctionCall",
                    "src": "28777:11:136"
                  },
                  "nativeSrc": "28774:37:136",
                  "nodeType": "YulIf",
                  "src": "28774:37:136"
                },
                {
                  "nativeSrc": "28820:41:136",
                  "nodeType": "YulAssignment",
                  "src": "28820:41:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "x",
                            "nativeSrc": "28833:1:136",
                            "nodeType": "YulIdentifier",
                            "src": "28833:1:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "28836:18:136",
                            "nodeType": "YulLiteral",
                            "src": "28836:18:136",
                            "type": "",
                            "value": "0xffffffffffffffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "28829:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "28829:3:136"
                        },
                        "nativeSrc": "28829:26:136",
                        "nodeType": "YulFunctionCall",
                        "src": "28829:26:136"
                      },
                      {
                        "name": "y_1",
                        "nativeSrc": "28857:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "28857:3:136"
                      }
                    ],
                    "functionName": {
                      "name": "div",
                      "nativeSrc": "28825:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "28825:3:136"
                    },
                    "nativeSrc": "28825:36:136",
                    "nodeType": "YulFunctionCall",
                    "src": "28825:36:136"
                  },
                  "variableNames": [
                    {
                      "name": "r",
                      "nativeSrc": "28820:1:136",
                      "nodeType": "YulIdentifier",
                      "src": "28820:1:136"
                    }
                  ]
                }
              ]
            },
            "name": "checked_div_t_uint64",
            "nativeSrc": "28673:194:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "x",
                "nativeSrc": "28703:1:136",
                "nodeType": "YulTypedName",
                "src": "28703:1:136",
                "type": ""
              },
              {
                "name": "y",
                "nativeSrc": "28706:1:136",
                "nodeType": "YulTypedName",
                "src": "28706:1:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "r",
                "nativeSrc": "28712:1:136",
                "nodeType": "YulTypedName",
                "src": "28712:1:136",
                "type": ""
              }
            ],
            "src": "28673:194:136"
          },
          {
            "body": {
              "nativeSrc": "29046:309:136",
              "nodeType": "YulBlock",
              "src": "29046:309:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "29063:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "29063:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "29074:2:136",
                        "nodeType": "YulLiteral",
                        "src": "29074:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "29056:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "29056:6:136"
                    },
                    "nativeSrc": "29056:21:136",
                    "nodeType": "YulFunctionCall",
                    "src": "29056:21:136"
                  },
                  "nativeSrc": "29056:21:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "29056:21:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "29097:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "29097:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "29108:2:136",
                            "nodeType": "YulLiteral",
                            "src": "29108:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "29093:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "29093:3:136"
                        },
                        "nativeSrc": "29093:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "29093:18:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "29113:2:136",
                        "nodeType": "YulLiteral",
                        "src": "29113:2:136",
                        "type": "",
                        "value": "79"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "29086:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "29086:6:136"
                    },
                    "nativeSrc": "29086:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "29086:30:136"
                  },
                  "nativeSrc": "29086:30:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "29086:30:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "29136:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "29136:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "29147:2:136",
                            "nodeType": "YulLiteral",
                            "src": "29147:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "29132:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "29132:3:136"
                        },
                        "nativeSrc": "29132:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "29132:18:136"
                      },
                      {
                        "hexValue": "5769744f7261636c655261646f6e456e636f64696e674c69623a20696e76616c",
                        "kind": "string",
                        "nativeSrc": "29152:34:136",
                        "nodeType": "YulLiteral",
                        "src": "29152:34:136",
                        "type": "",
                        "value": "WitOracleRadonEncodingLib: inval"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "29125:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "29125:6:136"
                    },
                    "nativeSrc": "29125:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "29125:62:136"
                  },
                  "nativeSrc": "29125:62:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "29125:62:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "29207:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "29207:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "29218:2:136",
                            "nodeType": "YulLiteral",
                            "src": "29218:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "29203:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "29203:3:136"
                        },
                        "nativeSrc": "29203:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "29203:18:136"
                      },
                      {
                        "hexValue": "696420534c413a20636f6c6c61746572616c2f72657761726420726174696f20",
                        "kind": "string",
                        "nativeSrc": "29223:34:136",
                        "nodeType": "YulLiteral",
                        "src": "29223:34:136",
                        "type": "",
                        "value": "id SLA: collateral/reward ratio "
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "29196:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "29196:6:136"
                    },
                    "nativeSrc": "29196:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "29196:62:136"
                  },
                  "nativeSrc": "29196:62:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "29196:62:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "29278:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "29278:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "29289:3:136",
                            "nodeType": "YulLiteral",
                            "src": "29289:3:136",
                            "type": "",
                            "value": "128"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "29274:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "29274:3:136"
                        },
                        "nativeSrc": "29274:19:136",
                        "nodeType": "YulFunctionCall",
                        "src": "29274:19:136"
                      },
                      {
                        "hexValue": "746f6f206869676820283e31323729",
                        "kind": "string",
                        "nativeSrc": "29295:17:136",
                        "nodeType": "YulLiteral",
                        "src": "29295:17:136",
                        "type": "",
                        "value": "too high (>127)"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "29267:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "29267:6:136"
                    },
                    "nativeSrc": "29267:46:136",
                    "nodeType": "YulFunctionCall",
                    "src": "29267:46:136"
                  },
                  "nativeSrc": "29267:46:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "29267:46:136"
                },
                {
                  "nativeSrc": "29322:27:136",
                  "nodeType": "YulAssignment",
                  "src": "29322:27:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "29334:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "29334:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "29345:3:136",
                        "nodeType": "YulLiteral",
                        "src": "29345:3:136",
                        "type": "",
                        "value": "160"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "29330:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "29330:3:136"
                    },
                    "nativeSrc": "29330:19:136",
                    "nodeType": "YulFunctionCall",
                    "src": "29330:19:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "29322:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "29322:4:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_stringliteral_189c7783cae88dbb1922dd90187c54d41b5d3f8f4e78ec8279bd6292363dc2c8__to_t_string_memory_ptr__fromStack_reversed",
            "nativeSrc": "28872:483:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "29023:9:136",
                "nodeType": "YulTypedName",
                "src": "29023:9:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "29037:4:136",
                "nodeType": "YulTypedName",
                "src": "29037:4:136",
                "type": ""
              }
            ],
            "src": "28872:483:136"
          },
          {
            "body": {
              "nativeSrc": "29521:129:136",
              "nodeType": "YulBlock",
              "src": "29521:129:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "29538:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "29538:3:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "29551:3:136",
                                "nodeType": "YulLiteral",
                                "src": "29551:3:136",
                                "type": "",
                                "value": "248"
                              },
                              {
                                "name": "value0",
                                "nativeSrc": "29556:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "29556:6:136"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "29547:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "29547:3:136"
                            },
                            "nativeSrc": "29547:16:136",
                            "nodeType": "YulFunctionCall",
                            "src": "29547:16:136"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "29569:3:136",
                                "nodeType": "YulLiteral",
                                "src": "29569:3:136",
                                "type": "",
                                "value": "248"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "29574:3:136",
                                "nodeType": "YulLiteral",
                                "src": "29574:3:136",
                                "type": "",
                                "value": "255"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "29565:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "29565:3:136"
                            },
                            "nativeSrc": "29565:13:136",
                            "nodeType": "YulFunctionCall",
                            "src": "29565:13:136"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "29543:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "29543:3:136"
                        },
                        "nativeSrc": "29543:36:136",
                        "nodeType": "YulFunctionCall",
                        "src": "29543:36:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "29531:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "29531:6:136"
                    },
                    "nativeSrc": "29531:49:136",
                    "nodeType": "YulFunctionCall",
                    "src": "29531:49:136"
                  },
                  "nativeSrc": "29531:49:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "29531:49:136"
                },
                {
                  "nativeSrc": "29589:55:136",
                  "nodeType": "YulAssignment",
                  "src": "29589:55:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value1",
                        "nativeSrc": "29624:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "29624:6:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "pos",
                            "nativeSrc": "29636:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "29636:3:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "29641:1:136",
                            "nodeType": "YulLiteral",
                            "src": "29641:1:136",
                            "type": "",
                            "value": "1"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "29632:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "29632:3:136"
                        },
                        "nativeSrc": "29632:11:136",
                        "nodeType": "YulFunctionCall",
                        "src": "29632:11:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes_memory_ptr",
                      "nativeSrc": "29596:27:136",
                      "nodeType": "YulIdentifier",
                      "src": "29596:27:136"
                    },
                    "nativeSrc": "29596:48:136",
                    "nodeType": "YulFunctionCall",
                    "src": "29596:48:136"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "29589:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "29589:3:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_packed_t_uint8_t_bytes_memory_ptr__to_t_uint8_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed",
            "nativeSrc": "29360:290:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "29489:3:136",
                "nodeType": "YulTypedName",
                "src": "29489:3:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "29494:6:136",
                "nodeType": "YulTypedName",
                "src": "29494:6:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "29502:6:136",
                "nodeType": "YulTypedName",
                "src": "29502:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "29513:3:136",
                "nodeType": "YulTypedName",
                "src": "29513:3:136",
                "type": ""
              }
            ],
            "src": "29360:290:136"
          },
          {
            "body": {
              "nativeSrc": "29770:92:136",
              "nodeType": "YulBlock",
              "src": "29770:92:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "29787:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "29787:3:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "29800:3:136",
                                "nodeType": "YulLiteral",
                                "src": "29800:3:136",
                                "type": "",
                                "value": "248"
                              },
                              {
                                "name": "value0",
                                "nativeSrc": "29805:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "29805:6:136"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "29796:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "29796:3:136"
                            },
                            "nativeSrc": "29796:16:136",
                            "nodeType": "YulFunctionCall",
                            "src": "29796:16:136"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "29818:3:136",
                                "nodeType": "YulLiteral",
                                "src": "29818:3:136",
                                "type": "",
                                "value": "248"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "29823:3:136",
                                "nodeType": "YulLiteral",
                                "src": "29823:3:136",
                                "type": "",
                                "value": "255"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "29814:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "29814:3:136"
                            },
                            "nativeSrc": "29814:13:136",
                            "nodeType": "YulFunctionCall",
                            "src": "29814:13:136"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "29792:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "29792:3:136"
                        },
                        "nativeSrc": "29792:36:136",
                        "nodeType": "YulFunctionCall",
                        "src": "29792:36:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "29780:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "29780:6:136"
                    },
                    "nativeSrc": "29780:49:136",
                    "nodeType": "YulFunctionCall",
                    "src": "29780:49:136"
                  },
                  "nativeSrc": "29780:49:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "29780:49:136"
                },
                {
                  "nativeSrc": "29838:18:136",
                  "nodeType": "YulAssignment",
                  "src": "29838:18:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "29849:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "29849:3:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "29854:1:136",
                        "nodeType": "YulLiteral",
                        "src": "29854:1:136",
                        "type": "",
                        "value": "1"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "29845:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "29845:3:136"
                    },
                    "nativeSrc": "29845:11:136",
                    "nodeType": "YulFunctionCall",
                    "src": "29845:11:136"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "29838:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "29838:3:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_packed_t_uint8__to_t_uint8__nonPadded_inplace_fromStack_reversed",
            "nativeSrc": "29655:207:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "29746:3:136",
                "nodeType": "YulTypedName",
                "src": "29746:3:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "29751:6:136",
                "nodeType": "YulTypedName",
                "src": "29751:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "29762:3:136",
                "nodeType": "YulTypedName",
                "src": "29762:3:136",
                "type": ""
              }
            ],
            "src": "29655:207:136"
          },
          {
            "body": {
              "nativeSrc": "29984:94:136",
              "nodeType": "YulBlock",
              "src": "29984:94:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "30001:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "30001:3:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "30014:3:136",
                                "nodeType": "YulLiteral",
                                "src": "30014:3:136",
                                "type": "",
                                "value": "240"
                              },
                              {
                                "name": "value0",
                                "nativeSrc": "30019:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "30019:6:136"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "30010:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "30010:3:136"
                            },
                            "nativeSrc": "30010:16:136",
                            "nodeType": "YulFunctionCall",
                            "src": "30010:16:136"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "30032:3:136",
                                "nodeType": "YulLiteral",
                                "src": "30032:3:136",
                                "type": "",
                                "value": "240"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "30037:5:136",
                                "nodeType": "YulLiteral",
                                "src": "30037:5:136",
                                "type": "",
                                "value": "65535"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "30028:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "30028:3:136"
                            },
                            "nativeSrc": "30028:15:136",
                            "nodeType": "YulFunctionCall",
                            "src": "30028:15:136"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "30006:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "30006:3:136"
                        },
                        "nativeSrc": "30006:38:136",
                        "nodeType": "YulFunctionCall",
                        "src": "30006:38:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "29994:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "29994:6:136"
                    },
                    "nativeSrc": "29994:51:136",
                    "nodeType": "YulFunctionCall",
                    "src": "29994:51:136"
                  },
                  "nativeSrc": "29994:51:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "29994:51:136"
                },
                {
                  "nativeSrc": "30054:18:136",
                  "nodeType": "YulAssignment",
                  "src": "30054:18:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "30065:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "30065:3:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "30070:1:136",
                        "nodeType": "YulLiteral",
                        "src": "30070:1:136",
                        "type": "",
                        "value": "2"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "30061:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "30061:3:136"
                    },
                    "nativeSrc": "30061:11:136",
                    "nodeType": "YulFunctionCall",
                    "src": "30061:11:136"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "30054:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "30054:3:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_packed_t_uint16__to_t_uint16__nonPadded_inplace_fromStack_reversed",
            "nativeSrc": "29867:211:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "29960:3:136",
                "nodeType": "YulTypedName",
                "src": "29960:3:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "29965:6:136",
                "nodeType": "YulTypedName",
                "src": "29965:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "29976:3:136",
                "nodeType": "YulTypedName",
                "src": "29976:3:136",
                "type": ""
              }
            ],
            "src": "29867:211:136"
          },
          {
            "body": {
              "nativeSrc": "30200:99:136",
              "nodeType": "YulBlock",
              "src": "30200:99:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "30217:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "30217:3:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "30230:3:136",
                                "nodeType": "YulLiteral",
                                "src": "30230:3:136",
                                "type": "",
                                "value": "224"
                              },
                              {
                                "name": "value0",
                                "nativeSrc": "30235:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "30235:6:136"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "30226:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "30226:3:136"
                            },
                            "nativeSrc": "30226:16:136",
                            "nodeType": "YulFunctionCall",
                            "src": "30226:16:136"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "30248:3:136",
                                "nodeType": "YulLiteral",
                                "src": "30248:3:136",
                                "type": "",
                                "value": "224"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "30253:10:136",
                                "nodeType": "YulLiteral",
                                "src": "30253:10:136",
                                "type": "",
                                "value": "0xffffffff"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "30244:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "30244:3:136"
                            },
                            "nativeSrc": "30244:20:136",
                            "nodeType": "YulFunctionCall",
                            "src": "30244:20:136"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "30222:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "30222:3:136"
                        },
                        "nativeSrc": "30222:43:136",
                        "nodeType": "YulFunctionCall",
                        "src": "30222:43:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "30210:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "30210:6:136"
                    },
                    "nativeSrc": "30210:56:136",
                    "nodeType": "YulFunctionCall",
                    "src": "30210:56:136"
                  },
                  "nativeSrc": "30210:56:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "30210:56:136"
                },
                {
                  "nativeSrc": "30275:18:136",
                  "nodeType": "YulAssignment",
                  "src": "30275:18:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "30286:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "30286:3:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "30291:1:136",
                        "nodeType": "YulLiteral",
                        "src": "30291:1:136",
                        "type": "",
                        "value": "4"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "30282:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "30282:3:136"
                    },
                    "nativeSrc": "30282:11:136",
                    "nodeType": "YulFunctionCall",
                    "src": "30282:11:136"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "30275:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "30275:3:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_packed_t_uint32__to_t_uint32__nonPadded_inplace_fromStack_reversed",
            "nativeSrc": "30083:216:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "30176:3:136",
                "nodeType": "YulTypedName",
                "src": "30176:3:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "30181:6:136",
                "nodeType": "YulTypedName",
                "src": "30181:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "30192:3:136",
                "nodeType": "YulTypedName",
                "src": "30192:3:136",
                "type": ""
              }
            ],
            "src": "30083:216:136"
          },
          {
            "body": {
              "nativeSrc": "30421:107:136",
              "nodeType": "YulBlock",
              "src": "30421:107:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "30438:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "30438:3:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "30451:3:136",
                                "nodeType": "YulLiteral",
                                "src": "30451:3:136",
                                "type": "",
                                "value": "192"
                              },
                              {
                                "name": "value0",
                                "nativeSrc": "30456:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "30456:6:136"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "30447:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "30447:3:136"
                            },
                            "nativeSrc": "30447:16:136",
                            "nodeType": "YulFunctionCall",
                            "src": "30447:16:136"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "30469:3:136",
                                "nodeType": "YulLiteral",
                                "src": "30469:3:136",
                                "type": "",
                                "value": "192"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "30474:18:136",
                                "nodeType": "YulLiteral",
                                "src": "30474:18:136",
                                "type": "",
                                "value": "0xffffffffffffffff"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "30465:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "30465:3:136"
                            },
                            "nativeSrc": "30465:28:136",
                            "nodeType": "YulFunctionCall",
                            "src": "30465:28:136"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "30443:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "30443:3:136"
                        },
                        "nativeSrc": "30443:51:136",
                        "nodeType": "YulFunctionCall",
                        "src": "30443:51:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "30431:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "30431:6:136"
                    },
                    "nativeSrc": "30431:64:136",
                    "nodeType": "YulFunctionCall",
                    "src": "30431:64:136"
                  },
                  "nativeSrc": "30431:64:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "30431:64:136"
                },
                {
                  "nativeSrc": "30504:18:136",
                  "nodeType": "YulAssignment",
                  "src": "30504:18:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "30515:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "30515:3:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "30520:1:136",
                        "nodeType": "YulLiteral",
                        "src": "30520:1:136",
                        "type": "",
                        "value": "8"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "30511:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "30511:3:136"
                    },
                    "nativeSrc": "30511:11:136",
                    "nodeType": "YulFunctionCall",
                    "src": "30511:11:136"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "30504:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "30504:3:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_packed_t_uint64__to_t_uint64__nonPadded_inplace_fromStack_reversed",
            "nativeSrc": "30304:224:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "30397:3:136",
                "nodeType": "YulTypedName",
                "src": "30397:3:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "30402:6:136",
                "nodeType": "YulTypedName",
                "src": "30402:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "30413:3:136",
                "nodeType": "YulTypedName",
                "src": "30413:3:136",
                "type": ""
              }
            ],
            "src": "30304:224:136"
          },
          {
            "body": {
              "nativeSrc": "30740:166:136",
              "nodeType": "YulBlock",
              "src": "30740:166:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "pos",
                        "nativeSrc": "30757:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "30757:3:136"
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "30770:3:136",
                                "nodeType": "YulLiteral",
                                "src": "30770:3:136",
                                "type": "",
                                "value": "248"
                              },
                              {
                                "name": "value0",
                                "nativeSrc": "30775:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "30775:6:136"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "30766:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "30766:3:136"
                            },
                            "nativeSrc": "30766:16:136",
                            "nodeType": "YulFunctionCall",
                            "src": "30766:16:136"
                          },
                          {
                            "arguments": [
                              {
                                "kind": "number",
                                "nativeSrc": "30788:3:136",
                                "nodeType": "YulLiteral",
                                "src": "30788:3:136",
                                "type": "",
                                "value": "248"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "30793:3:136",
                                "nodeType": "YulLiteral",
                                "src": "30793:3:136",
                                "type": "",
                                "value": "255"
                              }
                            ],
                            "functionName": {
                              "name": "shl",
                              "nativeSrc": "30784:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "30784:3:136"
                            },
                            "nativeSrc": "30784:13:136",
                            "nodeType": "YulFunctionCall",
                            "src": "30784:13:136"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "30762:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "30762:3:136"
                        },
                        "nativeSrc": "30762:36:136",
                        "nodeType": "YulFunctionCall",
                        "src": "30762:36:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "30750:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "30750:6:136"
                    },
                    "nativeSrc": "30750:49:136",
                    "nodeType": "YulFunctionCall",
                    "src": "30750:49:136"
                  },
                  "nativeSrc": "30750:49:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "30750:49:136"
                },
                {
                  "nativeSrc": "30808:92:136",
                  "nodeType": "YulAssignment",
                  "src": "30808:92:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value2",
                        "nativeSrc": "30843:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "30843:6:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value1",
                            "nativeSrc": "30879:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "30879:6:136"
                          },
                          {
                            "arguments": [
                              {
                                "name": "pos",
                                "nativeSrc": "30891:3:136",
                                "nodeType": "YulIdentifier",
                                "src": "30891:3:136"
                              },
                              {
                                "kind": "number",
                                "nativeSrc": "30896:1:136",
                                "nodeType": "YulLiteral",
                                "src": "30896:1:136",
                                "type": "",
                                "value": "1"
                              }
                            ],
                            "functionName": {
                              "name": "add",
                              "nativeSrc": "30887:3:136",
                              "nodeType": "YulIdentifier",
                              "src": "30887:3:136"
                            },
                            "nativeSrc": "30887:11:136",
                            "nodeType": "YulFunctionCall",
                            "src": "30887:11:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_encode_bytes_memory_ptr",
                          "nativeSrc": "30851:27:136",
                          "nodeType": "YulIdentifier",
                          "src": "30851:27:136"
                        },
                        "nativeSrc": "30851:48:136",
                        "nodeType": "YulFunctionCall",
                        "src": "30851:48:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes_memory_ptr",
                      "nativeSrc": "30815:27:136",
                      "nodeType": "YulIdentifier",
                      "src": "30815:27:136"
                    },
                    "nativeSrc": "30815:85:136",
                    "nodeType": "YulFunctionCall",
                    "src": "30815:85:136"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "30808:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "30808:3:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_packed_t_uint8_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_uint8_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed",
            "nativeSrc": "30533:373:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "30700:3:136",
                "nodeType": "YulTypedName",
                "src": "30700:3:136",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "30705:6:136",
                "nodeType": "YulTypedName",
                "src": "30705:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "30713:6:136",
                "nodeType": "YulTypedName",
                "src": "30713:6:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "30721:6:136",
                "nodeType": "YulTypedName",
                "src": "30721:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "30732:3:136",
                "nodeType": "YulTypedName",
                "src": "30732:3:136",
                "type": ""
              }
            ],
            "src": "30533:373:136"
          },
          {
            "body": {
              "nativeSrc": "31054:152:136",
              "nodeType": "YulBlock",
              "src": "31054:152:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "31071:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "31071:9:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "31086:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "31086:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "31094:4:136",
                            "nodeType": "YulLiteral",
                            "src": "31094:4:136",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "31082:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "31082:3:136"
                        },
                        "nativeSrc": "31082:17:136",
                        "nodeType": "YulFunctionCall",
                        "src": "31082:17:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "31064:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "31064:6:136"
                    },
                    "nativeSrc": "31064:36:136",
                    "nodeType": "YulFunctionCall",
                    "src": "31064:36:136"
                  },
                  "nativeSrc": "31064:36:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "31064:36:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "31120:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "31120:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "31131:2:136",
                            "nodeType": "YulLiteral",
                            "src": "31131:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "31116:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "31116:3:136"
                        },
                        "nativeSrc": "31116:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "31116:18:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "31136:2:136",
                        "nodeType": "YulLiteral",
                        "src": "31136:2:136",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "31109:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "31109:6:136"
                    },
                    "nativeSrc": "31109:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "31109:30:136"
                  },
                  "nativeSrc": "31109:30:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "31109:30:136"
                },
                {
                  "nativeSrc": "31148:52:136",
                  "nodeType": "YulAssignment",
                  "src": "31148:52:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value1",
                        "nativeSrc": "31173:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "31173:6:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "31185:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "31185:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "31196:2:136",
                            "nodeType": "YulLiteral",
                            "src": "31196:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "31181:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "31181:3:136"
                        },
                        "nativeSrc": "31181:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "31181:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes",
                      "nativeSrc": "31156:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "31156:16:136"
                    },
                    "nativeSrc": "31156:44:136",
                    "nodeType": "YulFunctionCall",
                    "src": "31156:44:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "31148:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "31148:4:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint8_t_bytes_memory_ptr__to_t_uint8_t_bytes_memory_ptr__fromStack_reversed",
            "nativeSrc": "30911:295:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "31015:9:136",
                "nodeType": "YulTypedName",
                "src": "31015:9:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "31026:6:136",
                "nodeType": "YulTypedName",
                "src": "31026:6:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "31034:6:136",
                "nodeType": "YulTypedName",
                "src": "31034:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "31045:4:136",
                "nodeType": "YulTypedName",
                "src": "31045:4:136",
                "type": ""
              }
            ],
            "src": "30911:295:136"
          },
          {
            "body": {
              "nativeSrc": "31308:87:136",
              "nodeType": "YulBlock",
              "src": "31308:87:136",
              "statements": [
                {
                  "nativeSrc": "31318:26:136",
                  "nodeType": "YulAssignment",
                  "src": "31318:26:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "31330:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "31330:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "31341:2:136",
                        "nodeType": "YulLiteral",
                        "src": "31341:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "31326:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "31326:3:136"
                    },
                    "nativeSrc": "31326:18:136",
                    "nodeType": "YulFunctionCall",
                    "src": "31326:18:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "31318:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "31318:4:136"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "31360:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "31360:9:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "31375:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "31375:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "31383:4:136",
                            "nodeType": "YulLiteral",
                            "src": "31383:4:136",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "31371:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "31371:3:136"
                        },
                        "nativeSrc": "31371:17:136",
                        "nodeType": "YulFunctionCall",
                        "src": "31371:17:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "31353:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "31353:6:136"
                    },
                    "nativeSrc": "31353:36:136",
                    "nodeType": "YulFunctionCall",
                    "src": "31353:36:136"
                  },
                  "nativeSrc": "31353:36:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "31353:36:136"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed",
            "nativeSrc": "31211:184:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "31277:9:136",
                "nodeType": "YulTypedName",
                "src": "31277:9:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "31288:6:136",
                "nodeType": "YulTypedName",
                "src": "31288:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "31299:4:136",
                "nodeType": "YulTypedName",
                "src": "31299:4:136",
                "type": ""
              }
            ],
            "src": "31211:184:136"
          },
          {
            "body": {
              "nativeSrc": "31721:211:136",
              "nodeType": "YulBlock",
              "src": "31721:211:136",
              "statements": [
                {
                  "nativeSrc": "31731:195:136",
                  "nodeType": "YulAssignment",
                  "src": "31731:195:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value4",
                        "nativeSrc": "31766:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "31766:6:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value3",
                            "nativeSrc": "31802:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "31802:6:136"
                          },
                          {
                            "arguments": [
                              {
                                "name": "value2",
                                "nativeSrc": "31838:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "31838:6:136"
                              },
                              {
                                "arguments": [
                                  {
                                    "name": "value1",
                                    "nativeSrc": "31874:6:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "31874:6:136"
                                  },
                                  {
                                    "arguments": [
                                      {
                                        "name": "value0",
                                        "nativeSrc": "31910:6:136",
                                        "nodeType": "YulIdentifier",
                                        "src": "31910:6:136"
                                      },
                                      {
                                        "name": "pos",
                                        "nativeSrc": "31918:3:136",
                                        "nodeType": "YulIdentifier",
                                        "src": "31918:3:136"
                                      }
                                    ],
                                    "functionName": {
                                      "name": "abi_encode_bytes_memory_ptr",
                                      "nativeSrc": "31882:27:136",
                                      "nodeType": "YulIdentifier",
                                      "src": "31882:27:136"
                                    },
                                    "nativeSrc": "31882:40:136",
                                    "nodeType": "YulFunctionCall",
                                    "src": "31882:40:136"
                                  }
                                ],
                                "functionName": {
                                  "name": "abi_encode_bytes_memory_ptr",
                                  "nativeSrc": "31846:27:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "31846:27:136"
                                },
                                "nativeSrc": "31846:77:136",
                                "nodeType": "YulFunctionCall",
                                "src": "31846:77:136"
                              }
                            ],
                            "functionName": {
                              "name": "abi_encode_bytes_memory_ptr",
                              "nativeSrc": "31810:27:136",
                              "nodeType": "YulIdentifier",
                              "src": "31810:27:136"
                            },
                            "nativeSrc": "31810:114:136",
                            "nodeType": "YulFunctionCall",
                            "src": "31810:114:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_encode_bytes_memory_ptr",
                          "nativeSrc": "31774:27:136",
                          "nodeType": "YulIdentifier",
                          "src": "31774:27:136"
                        },
                        "nativeSrc": "31774:151:136",
                        "nodeType": "YulFunctionCall",
                        "src": "31774:151:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes_memory_ptr",
                      "nativeSrc": "31738:27:136",
                      "nodeType": "YulIdentifier",
                      "src": "31738:27:136"
                    },
                    "nativeSrc": "31738:188:136",
                    "nodeType": "YulFunctionCall",
                    "src": "31738:188:136"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "31731:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "31731:3:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed",
            "nativeSrc": "31400:532:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "31665:3:136",
                "nodeType": "YulTypedName",
                "src": "31665:3:136",
                "type": ""
              },
              {
                "name": "value4",
                "nativeSrc": "31670:6:136",
                "nodeType": "YulTypedName",
                "src": "31670:6:136",
                "type": ""
              },
              {
                "name": "value3",
                "nativeSrc": "31678:6:136",
                "nodeType": "YulTypedName",
                "src": "31678:6:136",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "31686:6:136",
                "nodeType": "YulTypedName",
                "src": "31686:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "31694:6:136",
                "nodeType": "YulTypedName",
                "src": "31694:6:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "31702:6:136",
                "nodeType": "YulTypedName",
                "src": "31702:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "31713:3:136",
                "nodeType": "YulTypedName",
                "src": "31713:3:136",
                "type": ""
              }
            ],
            "src": "31400:532:136"
          },
          {
            "body": {
              "nativeSrc": "32089:104:136",
              "nodeType": "YulBlock",
              "src": "32089:104:136",
              "statements": [
                {
                  "nativeSrc": "32099:88:136",
                  "nodeType": "YulAssignment",
                  "src": "32099:88:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "32157:5:136",
                        "nodeType": "YulIdentifier",
                        "src": "32157:5:136"
                      },
                      {
                        "name": "length",
                        "nativeSrc": "32164:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "32164:6:136"
                      },
                      {
                        "arguments": [],
                        "functionName": {
                          "name": "calldatasize",
                          "nativeSrc": "32172:12:136",
                          "nodeType": "YulIdentifier",
                          "src": "32172:12:136"
                        },
                        "nativeSrc": "32172:14:136",
                        "nodeType": "YulFunctionCall",
                        "src": "32172:14:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_decode_available_length_array_string_dyn",
                      "nativeSrc": "32112:44:136",
                      "nodeType": "YulIdentifier",
                      "src": "32112:44:136"
                    },
                    "nativeSrc": "32112:75:136",
                    "nodeType": "YulFunctionCall",
                    "src": "32112:75:136"
                  },
                  "variableNames": [
                    {
                      "name": "converted",
                      "nativeSrc": "32099:9:136",
                      "nodeType": "YulIdentifier",
                      "src": "32099:9:136"
                    }
                  ]
                }
              ]
            },
            "name": "convert_array_t_array$_t_string_calldata_ptr_$dyn_calldata_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr",
            "nativeSrc": "31937:256:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "value",
                "nativeSrc": "32057:5:136",
                "nodeType": "YulTypedName",
                "src": "32057:5:136",
                "type": ""
              },
              {
                "name": "length",
                "nativeSrc": "32064:6:136",
                "nodeType": "YulTypedName",
                "src": "32064:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "converted",
                "nativeSrc": "32075:9:136",
                "nodeType": "YulTypedName",
                "src": "32075:9:136",
                "type": ""
              }
            ],
            "src": "31937:256:136"
          },
          {
            "body": {
              "nativeSrc": "32473:174:136",
              "nodeType": "YulBlock",
              "src": "32473:174:136",
              "statements": [
                {
                  "nativeSrc": "32483:158:136",
                  "nodeType": "YulAssignment",
                  "src": "32483:158:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value3",
                        "nativeSrc": "32518:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "32518:6:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value2",
                            "nativeSrc": "32554:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "32554:6:136"
                          },
                          {
                            "arguments": [
                              {
                                "name": "value1",
                                "nativeSrc": "32590:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "32590:6:136"
                              },
                              {
                                "arguments": [
                                  {
                                    "name": "value0",
                                    "nativeSrc": "32626:6:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "32626:6:136"
                                  },
                                  {
                                    "name": "pos",
                                    "nativeSrc": "32634:3:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "32634:3:136"
                                  }
                                ],
                                "functionName": {
                                  "name": "abi_encode_bytes_memory_ptr",
                                  "nativeSrc": "32598:27:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "32598:27:136"
                                },
                                "nativeSrc": "32598:40:136",
                                "nodeType": "YulFunctionCall",
                                "src": "32598:40:136"
                              }
                            ],
                            "functionName": {
                              "name": "abi_encode_bytes_memory_ptr",
                              "nativeSrc": "32562:27:136",
                              "nodeType": "YulIdentifier",
                              "src": "32562:27:136"
                            },
                            "nativeSrc": "32562:77:136",
                            "nodeType": "YulFunctionCall",
                            "src": "32562:77:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_encode_bytes_memory_ptr",
                          "nativeSrc": "32526:27:136",
                          "nodeType": "YulIdentifier",
                          "src": "32526:27:136"
                        },
                        "nativeSrc": "32526:114:136",
                        "nodeType": "YulFunctionCall",
                        "src": "32526:114:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes_memory_ptr",
                      "nativeSrc": "32490:27:136",
                      "nodeType": "YulIdentifier",
                      "src": "32490:27:136"
                    },
                    "nativeSrc": "32490:151:136",
                    "nodeType": "YulFunctionCall",
                    "src": "32490:151:136"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "32483:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "32483:3:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed",
            "nativeSrc": "32198:449:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "32425:3:136",
                "nodeType": "YulTypedName",
                "src": "32425:3:136",
                "type": ""
              },
              {
                "name": "value3",
                "nativeSrc": "32430:6:136",
                "nodeType": "YulTypedName",
                "src": "32430:6:136",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "32438:6:136",
                "nodeType": "YulTypedName",
                "src": "32438:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "32446:6:136",
                "nodeType": "YulTypedName",
                "src": "32446:6:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "32454:6:136",
                "nodeType": "YulTypedName",
                "src": "32454:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "32465:3:136",
                "nodeType": "YulTypedName",
                "src": "32465:3:136",
                "type": ""
              }
            ],
            "src": "32198:449:136"
          },
          {
            "body": {
              "nativeSrc": "32881:137:136",
              "nodeType": "YulBlock",
              "src": "32881:137:136",
              "statements": [
                {
                  "nativeSrc": "32891:121:136",
                  "nodeType": "YulAssignment",
                  "src": "32891:121:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value2",
                        "nativeSrc": "32926:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "32926:6:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value1",
                            "nativeSrc": "32962:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "32962:6:136"
                          },
                          {
                            "arguments": [
                              {
                                "name": "value0",
                                "nativeSrc": "32998:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "32998:6:136"
                              },
                              {
                                "name": "pos",
                                "nativeSrc": "33006:3:136",
                                "nodeType": "YulIdentifier",
                                "src": "33006:3:136"
                              }
                            ],
                            "functionName": {
                              "name": "abi_encode_bytes_memory_ptr",
                              "nativeSrc": "32970:27:136",
                              "nodeType": "YulIdentifier",
                              "src": "32970:27:136"
                            },
                            "nativeSrc": "32970:40:136",
                            "nodeType": "YulFunctionCall",
                            "src": "32970:40:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_encode_bytes_memory_ptr",
                          "nativeSrc": "32934:27:136",
                          "nodeType": "YulIdentifier",
                          "src": "32934:27:136"
                        },
                        "nativeSrc": "32934:77:136",
                        "nodeType": "YulFunctionCall",
                        "src": "32934:77:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes_memory_ptr",
                      "nativeSrc": "32898:27:136",
                      "nodeType": "YulIdentifier",
                      "src": "32898:27:136"
                    },
                    "nativeSrc": "32898:114:136",
                    "nodeType": "YulFunctionCall",
                    "src": "32898:114:136"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "32891:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "32891:3:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed",
            "nativeSrc": "32652:366:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "32841:3:136",
                "nodeType": "YulTypedName",
                "src": "32841:3:136",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "32846:6:136",
                "nodeType": "YulTypedName",
                "src": "32846:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "32854:6:136",
                "nodeType": "YulTypedName",
                "src": "32854:6:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "32862:6:136",
                "nodeType": "YulTypedName",
                "src": "32862:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "32873:3:136",
                "nodeType": "YulTypedName",
                "src": "32873:3:136",
                "type": ""
              }
            ],
            "src": "32652:366:136"
          },
          {
            "body": {
              "nativeSrc": "33071:77:136",
              "nodeType": "YulBlock",
              "src": "33071:77:136",
              "statements": [
                {
                  "nativeSrc": "33081:16:136",
                  "nodeType": "YulAssignment",
                  "src": "33081:16:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "x",
                        "nativeSrc": "33092:1:136",
                        "nodeType": "YulIdentifier",
                        "src": "33092:1:136"
                      },
                      {
                        "name": "y",
                        "nativeSrc": "33095:1:136",
                        "nodeType": "YulIdentifier",
                        "src": "33095:1:136"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "33088:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "33088:3:136"
                    },
                    "nativeSrc": "33088:9:136",
                    "nodeType": "YulFunctionCall",
                    "src": "33088:9:136"
                  },
                  "variableNames": [
                    {
                      "name": "sum",
                      "nativeSrc": "33081:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "33081:3:136"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "33120:22:136",
                    "nodeType": "YulBlock",
                    "src": "33120:22:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x11",
                            "nativeSrc": "33122:16:136",
                            "nodeType": "YulIdentifier",
                            "src": "33122:16:136"
                          },
                          "nativeSrc": "33122:18:136",
                          "nodeType": "YulFunctionCall",
                          "src": "33122:18:136"
                        },
                        "nativeSrc": "33122:18:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "33122:18:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "x",
                        "nativeSrc": "33112:1:136",
                        "nodeType": "YulIdentifier",
                        "src": "33112:1:136"
                      },
                      {
                        "name": "sum",
                        "nativeSrc": "33115:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "33115:3:136"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "33109:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "33109:2:136"
                    },
                    "nativeSrc": "33109:10:136",
                    "nodeType": "YulFunctionCall",
                    "src": "33109:10:136"
                  },
                  "nativeSrc": "33106:36:136",
                  "nodeType": "YulIf",
                  "src": "33106:36:136"
                }
              ]
            },
            "name": "checked_add_t_uint256",
            "nativeSrc": "33023:125:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "x",
                "nativeSrc": "33054:1:136",
                "nodeType": "YulTypedName",
                "src": "33054:1:136",
                "type": ""
              },
              {
                "name": "y",
                "nativeSrc": "33057:1:136",
                "nodeType": "YulTypedName",
                "src": "33057:1:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "sum",
                "nativeSrc": "33063:3:136",
                "nodeType": "YulTypedName",
                "src": "33063:3:136",
                "type": ""
              }
            ],
            "src": "33023:125:136"
          },
          {
            "body": {
              "nativeSrc": "33520:248:136",
              "nodeType": "YulBlock",
              "src": "33520:248:136",
              "statements": [
                {
                  "nativeSrc": "33530:232:136",
                  "nodeType": "YulAssignment",
                  "src": "33530:232:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value5",
                        "nativeSrc": "33565:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "33565:6:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value4",
                            "nativeSrc": "33601:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "33601:6:136"
                          },
                          {
                            "arguments": [
                              {
                                "name": "value3",
                                "nativeSrc": "33637:6:136",
                                "nodeType": "YulIdentifier",
                                "src": "33637:6:136"
                              },
                              {
                                "arguments": [
                                  {
                                    "name": "value2",
                                    "nativeSrc": "33673:6:136",
                                    "nodeType": "YulIdentifier",
                                    "src": "33673:6:136"
                                  },
                                  {
                                    "arguments": [
                                      {
                                        "name": "value1",
                                        "nativeSrc": "33709:6:136",
                                        "nodeType": "YulIdentifier",
                                        "src": "33709:6:136"
                                      },
                                      {
                                        "arguments": [
                                          {
                                            "name": "value0",
                                            "nativeSrc": "33745:6:136",
                                            "nodeType": "YulIdentifier",
                                            "src": "33745:6:136"
                                          },
                                          {
                                            "name": "pos",
                                            "nativeSrc": "33753:3:136",
                                            "nodeType": "YulIdentifier",
                                            "src": "33753:3:136"
                                          }
                                        ],
                                        "functionName": {
                                          "name": "abi_encode_bytes_memory_ptr",
                                          "nativeSrc": "33717:27:136",
                                          "nodeType": "YulIdentifier",
                                          "src": "33717:27:136"
                                        },
                                        "nativeSrc": "33717:40:136",
                                        "nodeType": "YulFunctionCall",
                                        "src": "33717:40:136"
                                      }
                                    ],
                                    "functionName": {
                                      "name": "abi_encode_bytes_memory_ptr",
                                      "nativeSrc": "33681:27:136",
                                      "nodeType": "YulIdentifier",
                                      "src": "33681:27:136"
                                    },
                                    "nativeSrc": "33681:77:136",
                                    "nodeType": "YulFunctionCall",
                                    "src": "33681:77:136"
                                  }
                                ],
                                "functionName": {
                                  "name": "abi_encode_bytes_memory_ptr",
                                  "nativeSrc": "33645:27:136",
                                  "nodeType": "YulIdentifier",
                                  "src": "33645:27:136"
                                },
                                "nativeSrc": "33645:114:136",
                                "nodeType": "YulFunctionCall",
                                "src": "33645:114:136"
                              }
                            ],
                            "functionName": {
                              "name": "abi_encode_bytes_memory_ptr",
                              "nativeSrc": "33609:27:136",
                              "nodeType": "YulIdentifier",
                              "src": "33609:27:136"
                            },
                            "nativeSrc": "33609:151:136",
                            "nodeType": "YulFunctionCall",
                            "src": "33609:151:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_encode_bytes_memory_ptr",
                          "nativeSrc": "33573:27:136",
                          "nodeType": "YulIdentifier",
                          "src": "33573:27:136"
                        },
                        "nativeSrc": "33573:188:136",
                        "nodeType": "YulFunctionCall",
                        "src": "33573:188:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes_memory_ptr",
                      "nativeSrc": "33537:27:136",
                      "nodeType": "YulIdentifier",
                      "src": "33537:27:136"
                    },
                    "nativeSrc": "33537:225:136",
                    "nodeType": "YulFunctionCall",
                    "src": "33537:225:136"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "33530:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "33530:3:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed",
            "nativeSrc": "33153:615:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "33456:3:136",
                "nodeType": "YulTypedName",
                "src": "33456:3:136",
                "type": ""
              },
              {
                "name": "value5",
                "nativeSrc": "33461:6:136",
                "nodeType": "YulTypedName",
                "src": "33461:6:136",
                "type": ""
              },
              {
                "name": "value4",
                "nativeSrc": "33469:6:136",
                "nodeType": "YulTypedName",
                "src": "33469:6:136",
                "type": ""
              },
              {
                "name": "value3",
                "nativeSrc": "33477:6:136",
                "nodeType": "YulTypedName",
                "src": "33477:6:136",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "33485:6:136",
                "nodeType": "YulTypedName",
                "src": "33485:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "33493:6:136",
                "nodeType": "YulTypedName",
                "src": "33493:6:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "33501:6:136",
                "nodeType": "YulTypedName",
                "src": "33501:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "33512:3:136",
                "nodeType": "YulTypedName",
                "src": "33512:3:136",
                "type": ""
              }
            ],
            "src": "33153:615:136"
          },
          {
            "body": {
              "nativeSrc": "33822:79:136",
              "nodeType": "YulBlock",
              "src": "33822:79:136",
              "statements": [
                {
                  "nativeSrc": "33832:17:136",
                  "nodeType": "YulAssignment",
                  "src": "33832:17:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "x",
                        "nativeSrc": "33844:1:136",
                        "nodeType": "YulIdentifier",
                        "src": "33844:1:136"
                      },
                      {
                        "name": "y",
                        "nativeSrc": "33847:1:136",
                        "nodeType": "YulIdentifier",
                        "src": "33847:1:136"
                      }
                    ],
                    "functionName": {
                      "name": "sub",
                      "nativeSrc": "33840:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "33840:3:136"
                    },
                    "nativeSrc": "33840:9:136",
                    "nodeType": "YulFunctionCall",
                    "src": "33840:9:136"
                  },
                  "variableNames": [
                    {
                      "name": "diff",
                      "nativeSrc": "33832:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "33832:4:136"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "33873:22:136",
                    "nodeType": "YulBlock",
                    "src": "33873:22:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x11",
                            "nativeSrc": "33875:16:136",
                            "nodeType": "YulIdentifier",
                            "src": "33875:16:136"
                          },
                          "nativeSrc": "33875:18:136",
                          "nodeType": "YulFunctionCall",
                          "src": "33875:18:136"
                        },
                        "nativeSrc": "33875:18:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "33875:18:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "diff",
                        "nativeSrc": "33864:4:136",
                        "nodeType": "YulIdentifier",
                        "src": "33864:4:136"
                      },
                      {
                        "name": "x",
                        "nativeSrc": "33870:1:136",
                        "nodeType": "YulIdentifier",
                        "src": "33870:1:136"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "33861:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "33861:2:136"
                    },
                    "nativeSrc": "33861:11:136",
                    "nodeType": "YulFunctionCall",
                    "src": "33861:11:136"
                  },
                  "nativeSrc": "33858:37:136",
                  "nodeType": "YulIf",
                  "src": "33858:37:136"
                }
              ]
            },
            "name": "checked_sub_t_uint256",
            "nativeSrc": "33773:128:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "x",
                "nativeSrc": "33804:1:136",
                "nodeType": "YulTypedName",
                "src": "33804:1:136",
                "type": ""
              },
              {
                "name": "y",
                "nativeSrc": "33807:1:136",
                "nodeType": "YulTypedName",
                "src": "33807:1:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "diff",
                "nativeSrc": "33813:4:136",
                "nodeType": "YulTypedName",
                "src": "33813:4:136",
                "type": ""
              }
            ],
            "src": "33773:128:136"
          },
          {
            "body": {
              "nativeSrc": "34080:229:136",
              "nodeType": "YulBlock",
              "src": "34080:229:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "34097:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "34097:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "34108:2:136",
                        "nodeType": "YulLiteral",
                        "src": "34108:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "34090:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "34090:6:136"
                    },
                    "nativeSrc": "34090:21:136",
                    "nodeType": "YulFunctionCall",
                    "src": "34090:21:136"
                  },
                  "nativeSrc": "34090:21:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "34090:21:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "34131:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "34131:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "34142:2:136",
                            "nodeType": "YulLiteral",
                            "src": "34142:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "34127:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "34127:3:136"
                        },
                        "nativeSrc": "34127:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "34127:18:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "34147:2:136",
                        "nodeType": "YulLiteral",
                        "src": "34147:2:136",
                        "type": "",
                        "value": "39"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "34120:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "34120:6:136"
                    },
                    "nativeSrc": "34120:30:136",
                    "nodeType": "YulFunctionCall",
                    "src": "34120:30:136"
                  },
                  "nativeSrc": "34120:30:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "34120:30:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "34170:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "34170:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "34181:2:136",
                            "nodeType": "YulLiteral",
                            "src": "34181:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "34166:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "34166:3:136"
                        },
                        "nativeSrc": "34166:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "34166:18:136"
                      },
                      {
                        "hexValue": "5769746e657443424f522e736b69703a20756e737570706f72746564206d616a",
                        "kind": "string",
                        "nativeSrc": "34186:34:136",
                        "nodeType": "YulLiteral",
                        "src": "34186:34:136",
                        "type": "",
                        "value": "WitnetCBOR.skip: unsupported maj"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "34159:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "34159:6:136"
                    },
                    "nativeSrc": "34159:62:136",
                    "nodeType": "YulFunctionCall",
                    "src": "34159:62:136"
                  },
                  "nativeSrc": "34159:62:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "34159:62:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "34241:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "34241:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "34252:2:136",
                            "nodeType": "YulLiteral",
                            "src": "34252:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "34237:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "34237:3:136"
                        },
                        "nativeSrc": "34237:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "34237:18:136"
                      },
                      {
                        "hexValue": "6f722074797065",
                        "kind": "string",
                        "nativeSrc": "34257:9:136",
                        "nodeType": "YulLiteral",
                        "src": "34257:9:136",
                        "type": "",
                        "value": "or type"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "34230:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "34230:6:136"
                    },
                    "nativeSrc": "34230:37:136",
                    "nodeType": "YulFunctionCall",
                    "src": "34230:37:136"
                  },
                  "nativeSrc": "34230:37:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "34230:37:136"
                },
                {
                  "nativeSrc": "34276:27:136",
                  "nodeType": "YulAssignment",
                  "src": "34276:27:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "34288:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "34288:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "34299:3:136",
                        "nodeType": "YulLiteral",
                        "src": "34299:3:136",
                        "type": "",
                        "value": "128"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "34284:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "34284:3:136"
                    },
                    "nativeSrc": "34284:19:136",
                    "nodeType": "YulFunctionCall",
                    "src": "34284:19:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "34276:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "34276:4:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_t_stringliteral_92a4e60c9c8a6bab113d51719bd32c972951c92a48fb0ef633db4f8d512f86fe__to_t_string_memory_ptr__fromStack_reversed",
            "nativeSrc": "33906:403:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "34057:9:136",
                "nodeType": "YulTypedName",
                "src": "34057:9:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "34071:4:136",
                "nodeType": "YulTypedName",
                "src": "34071:4:136",
                "type": ""
              }
            ],
            "src": "33906:403:136"
          },
          {
            "body": {
              "nativeSrc": "34485:195:136",
              "nodeType": "YulBlock",
              "src": "34485:195:136",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "34502:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "34502:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "34513:2:136",
                        "nodeType": "YulLiteral",
                        "src": "34513:2:136",
                        "type": "",
                        "value": "96"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "34495:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "34495:6:136"
                    },
                    "nativeSrc": "34495:21:136",
                    "nodeType": "YulFunctionCall",
                    "src": "34495:21:136"
                  },
                  "nativeSrc": "34495:21:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "34495:21:136"
                },
                {
                  "nativeSrc": "34525:52:136",
                  "nodeType": "YulAssignment",
                  "src": "34525:52:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value0",
                        "nativeSrc": "34550:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "34550:6:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "34562:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "34562:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "34573:2:136",
                            "nodeType": "YulLiteral",
                            "src": "34573:2:136",
                            "type": "",
                            "value": "96"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "34558:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "34558:3:136"
                        },
                        "nativeSrc": "34558:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "34558:18:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes",
                      "nativeSrc": "34533:16:136",
                      "nodeType": "YulIdentifier",
                      "src": "34533:16:136"
                    },
                    "nativeSrc": "34533:44:136",
                    "nodeType": "YulFunctionCall",
                    "src": "34533:44:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "34525:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "34525:4:136"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "34597:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "34597:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "34608:2:136",
                            "nodeType": "YulLiteral",
                            "src": "34608:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "34593:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "34593:3:136"
                        },
                        "nativeSrc": "34593:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "34593:18:136"
                      },
                      {
                        "name": "value1",
                        "nativeSrc": "34613:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "34613:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "34586:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "34586:6:136"
                    },
                    "nativeSrc": "34586:34:136",
                    "nodeType": "YulFunctionCall",
                    "src": "34586:34:136"
                  },
                  "nativeSrc": "34586:34:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "34586:34:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "34640:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "34640:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "34651:2:136",
                            "nodeType": "YulLiteral",
                            "src": "34651:2:136",
                            "type": "",
                            "value": "64"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "34636:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "34636:3:136"
                        },
                        "nativeSrc": "34636:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "34636:18:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value2",
                            "nativeSrc": "34660:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "34660:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "34668:4:136",
                            "nodeType": "YulLiteral",
                            "src": "34668:4:136",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "34656:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "34656:3:136"
                        },
                        "nativeSrc": "34656:17:136",
                        "nodeType": "YulFunctionCall",
                        "src": "34656:17:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "34629:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "34629:6:136"
                    },
                    "nativeSrc": "34629:45:136",
                    "nodeType": "YulFunctionCall",
                    "src": "34629:45:136"
                  },
                  "nativeSrc": "34629:45:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "34629:45:136"
                }
              ]
            },
            "name": "abi_encode_tuple_t_bytes_memory_ptr_t_uint256_t_uint8__to_t_bytes_memory_ptr_t_uint256_t_uint8__fromStack_reversed",
            "nativeSrc": "34314:366:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "34438:9:136",
                "nodeType": "YulTypedName",
                "src": "34438:9:136",
                "type": ""
              },
              {
                "name": "value2",
                "nativeSrc": "34449:6:136",
                "nodeType": "YulTypedName",
                "src": "34449:6:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "34457:6:136",
                "nodeType": "YulTypedName",
                "src": "34457:6:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "34465:6:136",
                "nodeType": "YulTypedName",
                "src": "34465:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "34476:4:136",
                "nodeType": "YulTypedName",
                "src": "34476:4:136",
                "type": ""
              }
            ],
            "src": "34314:366:136"
          },
          {
            "body": {
              "nativeSrc": "34810:141:136",
              "nodeType": "YulBlock",
              "src": "34810:141:136",
              "statements": [
                {
                  "nativeSrc": "34820:26:136",
                  "nodeType": "YulAssignment",
                  "src": "34820:26:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "34832:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "34832:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "34843:2:136",
                        "nodeType": "YulLiteral",
                        "src": "34843:2:136",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "34828:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "34828:3:136"
                    },
                    "nativeSrc": "34828:18:136",
                    "nodeType": "YulFunctionCall",
                    "src": "34828:18:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "34820:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "34820:4:136"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "34862:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "34862:9:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "34877:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "34877:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "34885:4:136",
                            "nodeType": "YulLiteral",
                            "src": "34885:4:136",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "34873:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "34873:3:136"
                        },
                        "nativeSrc": "34873:17:136",
                        "nodeType": "YulFunctionCall",
                        "src": "34873:17:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "34855:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "34855:6:136"
                    },
                    "nativeSrc": "34855:36:136",
                    "nodeType": "YulFunctionCall",
                    "src": "34855:36:136"
                  },
                  "nativeSrc": "34855:36:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "34855:36:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "34911:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "34911:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "34922:2:136",
                            "nodeType": "YulLiteral",
                            "src": "34922:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "34907:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "34907:3:136"
                        },
                        "nativeSrc": "34907:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "34907:18:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value1",
                            "nativeSrc": "34931:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "34931:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "34939:4:136",
                            "nodeType": "YulLiteral",
                            "src": "34939:4:136",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "34927:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "34927:3:136"
                        },
                        "nativeSrc": "34927:17:136",
                        "nodeType": "YulFunctionCall",
                        "src": "34927:17:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "34900:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "34900:6:136"
                    },
                    "nativeSrc": "34900:45:136",
                    "nodeType": "YulFunctionCall",
                    "src": "34900:45:136"
                  },
                  "nativeSrc": "34900:45:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "34900:45:136"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint8_t_uint8__to_t_uint256_t_uint256__fromStack_reversed",
            "nativeSrc": "34685:266:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "34771:9:136",
                "nodeType": "YulTypedName",
                "src": "34771:9:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "34782:6:136",
                "nodeType": "YulTypedName",
                "src": "34782:6:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "34790:6:136",
                "nodeType": "YulTypedName",
                "src": "34790:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "34801:4:136",
                "nodeType": "YulTypedName",
                "src": "34801:4:136",
                "type": ""
              }
            ],
            "src": "34685:266:136"
          },
          {
            "body": {
              "nativeSrc": "35003:88:136",
              "nodeType": "YulBlock",
              "src": "35003:88:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "35034:22:136",
                    "nodeType": "YulBlock",
                    "src": "35034:22:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x11",
                            "nativeSrc": "35036:16:136",
                            "nodeType": "YulIdentifier",
                            "src": "35036:16:136"
                          },
                          "nativeSrc": "35036:18:136",
                          "nodeType": "YulFunctionCall",
                          "src": "35036:18:136"
                        },
                        "nativeSrc": "35036:18:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "35036:18:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "35019:5:136",
                        "nodeType": "YulIdentifier",
                        "src": "35019:5:136"
                      },
                      {
                        "arguments": [
                          {
                            "kind": "number",
                            "nativeSrc": "35030:1:136",
                            "nodeType": "YulLiteral",
                            "src": "35030:1:136",
                            "type": "",
                            "value": "0"
                          }
                        ],
                        "functionName": {
                          "name": "not",
                          "nativeSrc": "35026:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "35026:3:136"
                        },
                        "nativeSrc": "35026:6:136",
                        "nodeType": "YulFunctionCall",
                        "src": "35026:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "eq",
                      "nativeSrc": "35016:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "35016:2:136"
                    },
                    "nativeSrc": "35016:17:136",
                    "nodeType": "YulFunctionCall",
                    "src": "35016:17:136"
                  },
                  "nativeSrc": "35013:43:136",
                  "nodeType": "YulIf",
                  "src": "35013:43:136"
                },
                {
                  "nativeSrc": "35065:20:136",
                  "nodeType": "YulAssignment",
                  "src": "35065:20:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value",
                        "nativeSrc": "35076:5:136",
                        "nodeType": "YulIdentifier",
                        "src": "35076:5:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "35083:1:136",
                        "nodeType": "YulLiteral",
                        "src": "35083:1:136",
                        "type": "",
                        "value": "1"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "35072:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "35072:3:136"
                    },
                    "nativeSrc": "35072:13:136",
                    "nodeType": "YulFunctionCall",
                    "src": "35072:13:136"
                  },
                  "variableNames": [
                    {
                      "name": "ret",
                      "nativeSrc": "35065:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "35065:3:136"
                    }
                  ]
                }
              ]
            },
            "name": "increment_t_uint256",
            "nativeSrc": "34956:135:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "value",
                "nativeSrc": "34985:5:136",
                "nodeType": "YulTypedName",
                "src": "34985:5:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "ret",
                "nativeSrc": "34995:3:136",
                "nodeType": "YulTypedName",
                "src": "34995:3:136",
                "type": ""
              }
            ],
            "src": "34956:135:136"
          },
          {
            "body": {
              "nativeSrc": "35195:87:136",
              "nodeType": "YulBlock",
              "src": "35195:87:136",
              "statements": [
                {
                  "nativeSrc": "35205:26:136",
                  "nodeType": "YulAssignment",
                  "src": "35205:26:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "35217:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "35217:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "35228:2:136",
                        "nodeType": "YulLiteral",
                        "src": "35228:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "35213:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "35213:3:136"
                    },
                    "nativeSrc": "35213:18:136",
                    "nodeType": "YulFunctionCall",
                    "src": "35213:18:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "35205:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "35205:4:136"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "35247:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "35247:9:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "35262:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "35262:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "35270:4:136",
                            "nodeType": "YulLiteral",
                            "src": "35270:4:136",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "35258:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "35258:3:136"
                        },
                        "nativeSrc": "35258:17:136",
                        "nodeType": "YulFunctionCall",
                        "src": "35258:17:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "35240:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "35240:6:136"
                    },
                    "nativeSrc": "35240:36:136",
                    "nodeType": "YulFunctionCall",
                    "src": "35240:36:136"
                  },
                  "nativeSrc": "35240:36:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "35240:36:136"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint8__to_t_uint256__fromStack_reversed",
            "nativeSrc": "35096:186:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "35164:9:136",
                "nodeType": "YulTypedName",
                "src": "35164:9:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "35175:6:136",
                "nodeType": "YulTypedName",
                "src": "35175:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "35186:4:136",
                "nodeType": "YulTypedName",
                "src": "35186:4:136",
                "type": ""
              }
            ],
            "src": "35096:186:136"
          },
          {
            "body": {
              "nativeSrc": "35472:100:136",
              "nodeType": "YulBlock",
              "src": "35472:100:136",
              "statements": [
                {
                  "nativeSrc": "35482:84:136",
                  "nodeType": "YulAssignment",
                  "src": "35482:84:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "value1",
                        "nativeSrc": "35517:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "35517:6:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "35553:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "35553:6:136"
                          },
                          {
                            "name": "pos",
                            "nativeSrc": "35561:3:136",
                            "nodeType": "YulIdentifier",
                            "src": "35561:3:136"
                          }
                        ],
                        "functionName": {
                          "name": "abi_encode_bytes_memory_ptr",
                          "nativeSrc": "35525:27:136",
                          "nodeType": "YulIdentifier",
                          "src": "35525:27:136"
                        },
                        "nativeSrc": "35525:40:136",
                        "nodeType": "YulFunctionCall",
                        "src": "35525:40:136"
                      }
                    ],
                    "functionName": {
                      "name": "abi_encode_bytes_memory_ptr",
                      "nativeSrc": "35489:27:136",
                      "nodeType": "YulIdentifier",
                      "src": "35489:27:136"
                    },
                    "nativeSrc": "35489:77:136",
                    "nodeType": "YulFunctionCall",
                    "src": "35489:77:136"
                  },
                  "variableNames": [
                    {
                      "name": "end",
                      "nativeSrc": "35482:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "35482:3:136"
                    }
                  ]
                }
              ]
            },
            "name": "abi_encode_tuple_packed_t_string_memory_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed",
            "nativeSrc": "35287:285:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "pos",
                "nativeSrc": "35440:3:136",
                "nodeType": "YulTypedName",
                "src": "35440:3:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "35445:6:136",
                "nodeType": "YulTypedName",
                "src": "35445:6:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "35453:6:136",
                "nodeType": "YulTypedName",
                "src": "35453:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "end",
                "nativeSrc": "35464:3:136",
                "nodeType": "YulTypedName",
                "src": "35464:3:136",
                "type": ""
              }
            ],
            "src": "35287:285:136"
          },
          {
            "body": {
              "nativeSrc": "35706:119:136",
              "nodeType": "YulBlock",
              "src": "35706:119:136",
              "statements": [
                {
                  "nativeSrc": "35716:26:136",
                  "nodeType": "YulAssignment",
                  "src": "35716:26:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "35728:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "35728:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "35739:2:136",
                        "nodeType": "YulLiteral",
                        "src": "35739:2:136",
                        "type": "",
                        "value": "64"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "35724:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "35724:3:136"
                    },
                    "nativeSrc": "35724:18:136",
                    "nodeType": "YulFunctionCall",
                    "src": "35724:18:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "35716:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "35716:4:136"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "35758:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "35758:9:136"
                      },
                      {
                        "name": "value0",
                        "nativeSrc": "35769:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "35769:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "35751:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "35751:6:136"
                    },
                    "nativeSrc": "35751:25:136",
                    "nodeType": "YulFunctionCall",
                    "src": "35751:25:136"
                  },
                  "nativeSrc": "35751:25:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "35751:25:136"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "headStart",
                            "nativeSrc": "35796:9:136",
                            "nodeType": "YulIdentifier",
                            "src": "35796:9:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "35807:2:136",
                            "nodeType": "YulLiteral",
                            "src": "35807:2:136",
                            "type": "",
                            "value": "32"
                          }
                        ],
                        "functionName": {
                          "name": "add",
                          "nativeSrc": "35792:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "35792:3:136"
                        },
                        "nativeSrc": "35792:18:136",
                        "nodeType": "YulFunctionCall",
                        "src": "35792:18:136"
                      },
                      {
                        "name": "value1",
                        "nativeSrc": "35812:6:136",
                        "nodeType": "YulIdentifier",
                        "src": "35812:6:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "35785:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "35785:6:136"
                    },
                    "nativeSrc": "35785:34:136",
                    "nodeType": "YulFunctionCall",
                    "src": "35785:34:136"
                  },
                  "nativeSrc": "35785:34:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "35785:34:136"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint256_t_uint256__to_t_uint256_t_uint256__fromStack_reversed",
            "nativeSrc": "35577:248:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "35667:9:136",
                "nodeType": "YulTypedName",
                "src": "35667:9:136",
                "type": ""
              },
              {
                "name": "value1",
                "nativeSrc": "35678:6:136",
                "nodeType": "YulTypedName",
                "src": "35678:6:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "35686:6:136",
                "nodeType": "YulTypedName",
                "src": "35686:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "35697:4:136",
                "nodeType": "YulTypedName",
                "src": "35697:4:136",
                "type": ""
              }
            ],
            "src": "35577:248:136"
          },
          {
            "body": {
              "nativeSrc": "35877:104:136",
              "nodeType": "YulBlock",
              "src": "35877:104:136",
              "statements": [
                {
                  "nativeSrc": "35887:39:136",
                  "nodeType": "YulAssignment",
                  "src": "35887:39:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "x",
                            "nativeSrc": "35903:1:136",
                            "nodeType": "YulIdentifier",
                            "src": "35903:1:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "35906:4:136",
                            "nodeType": "YulLiteral",
                            "src": "35906:4:136",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "35899:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "35899:3:136"
                        },
                        "nativeSrc": "35899:12:136",
                        "nodeType": "YulFunctionCall",
                        "src": "35899:12:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "y",
                            "nativeSrc": "35917:1:136",
                            "nodeType": "YulIdentifier",
                            "src": "35917:1:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "35920:4:136",
                            "nodeType": "YulLiteral",
                            "src": "35920:4:136",
                            "type": "",
                            "value": "0xff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "35913:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "35913:3:136"
                        },
                        "nativeSrc": "35913:12:136",
                        "nodeType": "YulFunctionCall",
                        "src": "35913:12:136"
                      }
                    ],
                    "functionName": {
                      "name": "sub",
                      "nativeSrc": "35895:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "35895:3:136"
                    },
                    "nativeSrc": "35895:31:136",
                    "nodeType": "YulFunctionCall",
                    "src": "35895:31:136"
                  },
                  "variableNames": [
                    {
                      "name": "diff",
                      "nativeSrc": "35887:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "35887:4:136"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "35953:22:136",
                    "nodeType": "YulBlock",
                    "src": "35953:22:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x11",
                            "nativeSrc": "35955:16:136",
                            "nodeType": "YulIdentifier",
                            "src": "35955:16:136"
                          },
                          "nativeSrc": "35955:18:136",
                          "nodeType": "YulFunctionCall",
                          "src": "35955:18:136"
                        },
                        "nativeSrc": "35955:18:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "35955:18:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "diff",
                        "nativeSrc": "35941:4:136",
                        "nodeType": "YulIdentifier",
                        "src": "35941:4:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "35947:4:136",
                        "nodeType": "YulLiteral",
                        "src": "35947:4:136",
                        "type": "",
                        "value": "0xff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "35938:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "35938:2:136"
                    },
                    "nativeSrc": "35938:14:136",
                    "nodeType": "YulFunctionCall",
                    "src": "35938:14:136"
                  },
                  "nativeSrc": "35935:40:136",
                  "nodeType": "YulIf",
                  "src": "35935:40:136"
                }
              ]
            },
            "name": "checked_sub_t_uint8",
            "nativeSrc": "35830:151:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "x",
                "nativeSrc": "35859:1:136",
                "nodeType": "YulTypedName",
                "src": "35859:1:136",
                "type": ""
              },
              {
                "name": "y",
                "nativeSrc": "35862:1:136",
                "nodeType": "YulTypedName",
                "src": "35862:1:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "diff",
                "nativeSrc": "35868:4:136",
                "nodeType": "YulTypedName",
                "src": "35868:4:136",
                "type": ""
              }
            ],
            "src": "35830:151:136"
          },
          {
            "body": {
              "nativeSrc": "36033:144:136",
              "nodeType": "YulBlock",
              "src": "36033:144:136",
              "statements": [
                {
                  "nativeSrc": "36043:66:136",
                  "nodeType": "YulAssignment",
                  "src": "36043:66:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "x",
                            "nativeSrc": "36058:1:136",
                            "nodeType": "YulIdentifier",
                            "src": "36058:1:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "36061:18:136",
                            "nodeType": "YulLiteral",
                            "src": "36061:18:136",
                            "type": "",
                            "value": "0xffffffffffffffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "36054:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "36054:3:136"
                        },
                        "nativeSrc": "36054:26:136",
                        "nodeType": "YulFunctionCall",
                        "src": "36054:26:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "y",
                            "nativeSrc": "36086:1:136",
                            "nodeType": "YulIdentifier",
                            "src": "36086:1:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "36089:18:136",
                            "nodeType": "YulLiteral",
                            "src": "36089:18:136",
                            "type": "",
                            "value": "0xffffffffffffffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "36082:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "36082:3:136"
                        },
                        "nativeSrc": "36082:26:136",
                        "nodeType": "YulFunctionCall",
                        "src": "36082:26:136"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "36050:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "36050:3:136"
                    },
                    "nativeSrc": "36050:59:136",
                    "nodeType": "YulFunctionCall",
                    "src": "36050:59:136"
                  },
                  "variableNames": [
                    {
                      "name": "sum",
                      "nativeSrc": "36043:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "36043:3:136"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "36149:22:136",
                    "nodeType": "YulBlock",
                    "src": "36149:22:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x11",
                            "nativeSrc": "36151:16:136",
                            "nodeType": "YulIdentifier",
                            "src": "36151:16:136"
                          },
                          "nativeSrc": "36151:18:136",
                          "nodeType": "YulFunctionCall",
                          "src": "36151:18:136"
                        },
                        "nativeSrc": "36151:18:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "36151:18:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "sum",
                        "nativeSrc": "36124:3:136",
                        "nodeType": "YulIdentifier",
                        "src": "36124:3:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "36129:18:136",
                        "nodeType": "YulLiteral",
                        "src": "36129:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "gt",
                      "nativeSrc": "36121:2:136",
                      "nodeType": "YulIdentifier",
                      "src": "36121:2:136"
                    },
                    "nativeSrc": "36121:27:136",
                    "nodeType": "YulFunctionCall",
                    "src": "36121:27:136"
                  },
                  "nativeSrc": "36118:53:136",
                  "nodeType": "YulIf",
                  "src": "36118:53:136"
                }
              ]
            },
            "name": "checked_add_t_uint64",
            "nativeSrc": "35986:191:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "x",
                "nativeSrc": "36016:1:136",
                "nodeType": "YulTypedName",
                "src": "36016:1:136",
                "type": ""
              },
              {
                "name": "y",
                "nativeSrc": "36019:1:136",
                "nodeType": "YulTypedName",
                "src": "36019:1:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "sum",
                "nativeSrc": "36025:3:136",
                "nodeType": "YulTypedName",
                "src": "36025:3:136",
                "type": ""
              }
            ],
            "src": "35986:191:136"
          },
          {
            "body": {
              "nativeSrc": "36282:101:136",
              "nodeType": "YulBlock",
              "src": "36282:101:136",
              "statements": [
                {
                  "nativeSrc": "36292:26:136",
                  "nodeType": "YulAssignment",
                  "src": "36292:26:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "36304:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "36304:9:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "36315:2:136",
                        "nodeType": "YulLiteral",
                        "src": "36315:2:136",
                        "type": "",
                        "value": "32"
                      }
                    ],
                    "functionName": {
                      "name": "add",
                      "nativeSrc": "36300:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "36300:3:136"
                    },
                    "nativeSrc": "36300:18:136",
                    "nodeType": "YulFunctionCall",
                    "src": "36300:18:136"
                  },
                  "variableNames": [
                    {
                      "name": "tail",
                      "nativeSrc": "36292:4:136",
                      "nodeType": "YulIdentifier",
                      "src": "36292:4:136"
                    }
                  ]
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "name": "headStart",
                        "nativeSrc": "36334:9:136",
                        "nodeType": "YulIdentifier",
                        "src": "36334:9:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "value0",
                            "nativeSrc": "36349:6:136",
                            "nodeType": "YulIdentifier",
                            "src": "36349:6:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "36357:18:136",
                            "nodeType": "YulLiteral",
                            "src": "36357:18:136",
                            "type": "",
                            "value": "0xffffffffffffffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "36345:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "36345:3:136"
                        },
                        "nativeSrc": "36345:31:136",
                        "nodeType": "YulFunctionCall",
                        "src": "36345:31:136"
                      }
                    ],
                    "functionName": {
                      "name": "mstore",
                      "nativeSrc": "36327:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "36327:6:136"
                    },
                    "nativeSrc": "36327:50:136",
                    "nodeType": "YulFunctionCall",
                    "src": "36327:50:136"
                  },
                  "nativeSrc": "36327:50:136",
                  "nodeType": "YulExpressionStatement",
                  "src": "36327:50:136"
                }
              ]
            },
            "name": "abi_encode_tuple_t_uint64__to_t_uint256__fromStack_reversed",
            "nativeSrc": "36182:201:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "headStart",
                "nativeSrc": "36251:9:136",
                "nodeType": "YulTypedName",
                "src": "36251:9:136",
                "type": ""
              },
              {
                "name": "value0",
                "nativeSrc": "36262:6:136",
                "nodeType": "YulTypedName",
                "src": "36262:6:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "tail",
                "nativeSrc": "36273:4:136",
                "nodeType": "YulTypedName",
                "src": "36273:4:136",
                "type": ""
              }
            ],
            "src": "36182:201:136"
          },
          {
            "body": {
              "nativeSrc": "36439:217:136",
              "nodeType": "YulBlock",
              "src": "36439:217:136",
              "statements": [
                {
                  "nativeSrc": "36449:78:136",
                  "nodeType": "YulVariableDeclaration",
                  "src": "36449:78:136",
                  "value": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "x",
                            "nativeSrc": "36476:1:136",
                            "nodeType": "YulIdentifier",
                            "src": "36476:1:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "36479:18:136",
                            "nodeType": "YulLiteral",
                            "src": "36479:18:136",
                            "type": "",
                            "value": "0xffffffffffffffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "36472:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "36472:3:136"
                        },
                        "nativeSrc": "36472:26:136",
                        "nodeType": "YulFunctionCall",
                        "src": "36472:26:136"
                      },
                      {
                        "arguments": [
                          {
                            "name": "y",
                            "nativeSrc": "36504:1:136",
                            "nodeType": "YulIdentifier",
                            "src": "36504:1:136"
                          },
                          {
                            "kind": "number",
                            "nativeSrc": "36507:18:136",
                            "nodeType": "YulLiteral",
                            "src": "36507:18:136",
                            "type": "",
                            "value": "0xffffffffffffffff"
                          }
                        ],
                        "functionName": {
                          "name": "and",
                          "nativeSrc": "36500:3:136",
                          "nodeType": "YulIdentifier",
                          "src": "36500:3:136"
                        },
                        "nativeSrc": "36500:26:136",
                        "nodeType": "YulFunctionCall",
                        "src": "36500:26:136"
                      }
                    ],
                    "functionName": {
                      "name": "mul",
                      "nativeSrc": "36468:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "36468:3:136"
                    },
                    "nativeSrc": "36468:59:136",
                    "nodeType": "YulFunctionCall",
                    "src": "36468:59:136"
                  },
                  "variables": [
                    {
                      "name": "product_raw",
                      "nativeSrc": "36453:11:136",
                      "nodeType": "YulTypedName",
                      "src": "36453:11:136",
                      "type": ""
                    }
                  ]
                },
                {
                  "nativeSrc": "36536:47:136",
                  "nodeType": "YulAssignment",
                  "src": "36536:47:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "product_raw",
                        "nativeSrc": "36551:11:136",
                        "nodeType": "YulIdentifier",
                        "src": "36551:11:136"
                      },
                      {
                        "kind": "number",
                        "nativeSrc": "36564:18:136",
                        "nodeType": "YulLiteral",
                        "src": "36564:18:136",
                        "type": "",
                        "value": "0xffffffffffffffff"
                      }
                    ],
                    "functionName": {
                      "name": "and",
                      "nativeSrc": "36547:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "36547:3:136"
                    },
                    "nativeSrc": "36547:36:136",
                    "nodeType": "YulFunctionCall",
                    "src": "36547:36:136"
                  },
                  "variableNames": [
                    {
                      "name": "product",
                      "nativeSrc": "36536:7:136",
                      "nodeType": "YulIdentifier",
                      "src": "36536:7:136"
                    }
                  ]
                },
                {
                  "body": {
                    "nativeSrc": "36628:22:136",
                    "nodeType": "YulBlock",
                    "src": "36628:22:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x11",
                            "nativeSrc": "36630:16:136",
                            "nodeType": "YulIdentifier",
                            "src": "36630:16:136"
                          },
                          "nativeSrc": "36630:18:136",
                          "nodeType": "YulFunctionCall",
                          "src": "36630:18:136"
                        },
                        "nativeSrc": "36630:18:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "36630:18:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "name": "product",
                            "nativeSrc": "36605:7:136",
                            "nodeType": "YulIdentifier",
                            "src": "36605:7:136"
                          },
                          {
                            "name": "product_raw",
                            "nativeSrc": "36614:11:136",
                            "nodeType": "YulIdentifier",
                            "src": "36614:11:136"
                          }
                        ],
                        "functionName": {
                          "name": "eq",
                          "nativeSrc": "36602:2:136",
                          "nodeType": "YulIdentifier",
                          "src": "36602:2:136"
                        },
                        "nativeSrc": "36602:24:136",
                        "nodeType": "YulFunctionCall",
                        "src": "36602:24:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "36595:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "36595:6:136"
                    },
                    "nativeSrc": "36595:32:136",
                    "nodeType": "YulFunctionCall",
                    "src": "36595:32:136"
                  },
                  "nativeSrc": "36592:58:136",
                  "nodeType": "YulIf",
                  "src": "36592:58:136"
                }
              ]
            },
            "name": "checked_mul_t_uint64",
            "nativeSrc": "36388:268:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "x",
                "nativeSrc": "36418:1:136",
                "nodeType": "YulTypedName",
                "src": "36418:1:136",
                "type": ""
              },
              {
                "name": "y",
                "nativeSrc": "36421:1:136",
                "nodeType": "YulTypedName",
                "src": "36421:1:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "product",
                "nativeSrc": "36427:7:136",
                "nodeType": "YulTypedName",
                "src": "36427:7:136",
                "type": ""
              }
            ],
            "src": "36388:268:136"
          },
          {
            "body": {
              "nativeSrc": "36699:74:136",
              "nodeType": "YulBlock",
              "src": "36699:74:136",
              "statements": [
                {
                  "body": {
                    "nativeSrc": "36722:22:136",
                    "nodeType": "YulBlock",
                    "src": "36722:22:136",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [],
                          "functionName": {
                            "name": "panic_error_0x12",
                            "nativeSrc": "36724:16:136",
                            "nodeType": "YulIdentifier",
                            "src": "36724:16:136"
                          },
                          "nativeSrc": "36724:18:136",
                          "nodeType": "YulFunctionCall",
                          "src": "36724:18:136"
                        },
                        "nativeSrc": "36724:18:136",
                        "nodeType": "YulExpressionStatement",
                        "src": "36724:18:136"
                      }
                    ]
                  },
                  "condition": {
                    "arguments": [
                      {
                        "name": "y",
                        "nativeSrc": "36719:1:136",
                        "nodeType": "YulIdentifier",
                        "src": "36719:1:136"
                      }
                    ],
                    "functionName": {
                      "name": "iszero",
                      "nativeSrc": "36712:6:136",
                      "nodeType": "YulIdentifier",
                      "src": "36712:6:136"
                    },
                    "nativeSrc": "36712:9:136",
                    "nodeType": "YulFunctionCall",
                    "src": "36712:9:136"
                  },
                  "nativeSrc": "36709:35:136",
                  "nodeType": "YulIf",
                  "src": "36709:35:136"
                },
                {
                  "nativeSrc": "36753:14:136",
                  "nodeType": "YulAssignment",
                  "src": "36753:14:136",
                  "value": {
                    "arguments": [
                      {
                        "name": "x",
                        "nativeSrc": "36762:1:136",
                        "nodeType": "YulIdentifier",
                        "src": "36762:1:136"
                      },
                      {
                        "name": "y",
                        "nativeSrc": "36765:1:136",
                        "nodeType": "YulIdentifier",
                        "src": "36765:1:136"
                      }
                    ],
                    "functionName": {
                      "name": "mod",
                      "nativeSrc": "36758:3:136",
                      "nodeType": "YulIdentifier",
                      "src": "36758:3:136"
                    },
                    "nativeSrc": "36758:9:136",
                    "nodeType": "YulFunctionCall",
                    "src": "36758:9:136"
                  },
                  "variableNames": [
                    {
                      "name": "r",
                      "nativeSrc": "36753:1:136",
                      "nodeType": "YulIdentifier",
                      "src": "36753:1:136"
                    }
                  ]
                }
              ]
            },
            "name": "mod_t_uint256",
            "nativeSrc": "36661:112:136",
            "nodeType": "YulFunctionDefinition",
            "parameters": [
              {
                "name": "x",
                "nativeSrc": "36684:1:136",
                "nodeType": "YulTypedName",
                "src": "36684:1:136",
                "type": ""
              },
              {
                "name": "y",
                "nativeSrc": "36687:1:136",
                "nodeType": "YulTypedName",
                "src": "36687:1:136",
                "type": ""
              }
            ],
            "returnVariables": [
              {
                "name": "r",
                "nativeSrc": "36693:1:136",
                "nodeType": "YulTypedName",
                "src": "36693:1:136",
                "type": ""
              }
            ],
            "src": "36661:112:136"
          }
        ]
      },
      "contents": "{\n    { }\n    function abi_decode_enum_RadonDataTypes(offset) -> value\n    {\n        value := calldataload(offset)\n        if iszero(lt(value, 20)) { revert(0, 0) }\n    }\n    function abi_decode_uint16(offset) -> value\n    {\n        value := calldataload(offset)\n        if iszero(eq(value, and(value, 0xffff))) { revert(0, 0) }\n    }\n    function abi_decode_tuple_t_enum$_RadonDataTypes_$37720t_uint16(headStart, dataEnd) -> value0, value1\n    {\n        if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n        value0 := abi_decode_enum_RadonDataTypes(headStart)\n        value1 := abi_decode_uint16(add(headStart, 32))\n    }\n    function abi_encode_tuple_t_uint16__to_t_uint16__fromStack_library_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        mstore(headStart, and(value0, 0xffff))\n    }\n    function panic_error_0x41()\n    {\n        mstore(0, shl(224, 0x4e487b71))\n        mstore(4, 0x41)\n        revert(0, 0x24)\n    }\n    function allocate_memory_4557() -> memPtr\n    {\n        memPtr := mload(0x40)\n        let newFreePtr := add(memPtr, 0x40)\n        if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n        mstore(0x40, newFreePtr)\n    }\n    function allocate_memory_4563() -> memPtr\n    {\n        memPtr := mload(64)\n        let newFreePtr := add(memPtr, 0xe0)\n        if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n        mstore(64, newFreePtr)\n    }\n    function allocate_memory(size) -> memPtr\n    {\n        memPtr := mload(64)\n        let newFreePtr := add(memPtr, and(add(size, 31), not(31)))\n        if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n        mstore(64, newFreePtr)\n    }\n    function abi_decode_bytes(offset, end) -> array\n    {\n        if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n        let length := calldataload(offset)\n        let src := add(offset, 0x20)\n        let array_1 := 0\n        let size := 0\n        if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n        size := add(and(add(length, 31), not(31)), 0x20)\n        array_1 := allocate_memory(size)\n        mstore(array_1, length)\n        if gt(add(src, length), end) { revert(0, 0) }\n        calldatacopy(add(array_1, 0x20), src, length)\n        mstore(add(add(array_1, length), 0x20), 0)\n        array := array_1\n    }\n    function abi_decode_tuple_t_bytes_memory_ptr(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        let offset := calldataload(headStart)\n        if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n        value0 := abi_decode_bytes(add(headStart, offset), dataEnd)\n    }\n    function abi_encode_bytes(value, pos) -> end\n    {\n        let length := mload(value)\n        mstore(pos, length)\n        mcopy(add(pos, 0x20), add(value, 0x20), length)\n        mstore(add(add(pos, length), 0x20), 0)\n        end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n    }\n    function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n    {\n        mstore(headStart, 32)\n        tail := abi_encode_bytes(value0, add(headStart, 32))\n    }\n    function abi_decode_enum_RadonReduceOpcodes(offset) -> value\n    {\n        value := calldataload(offset)\n        if iszero(lt(value, 12)) { revert(0, 0) }\n    }\n    function array_allocation_size_array_struct_RadonFilter_dyn(length) -> size\n    {\n        if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n        size := add(shl(5, length), 0x20)\n    }\n    function abi_decode_struct_RadonFilter(headStart, end) -> value\n    {\n        if slt(sub(end, headStart), 0x40) { revert(0, 0) }\n        value := allocate_memory_4557()\n        let value_1 := calldataload(headStart)\n        if iszero(lt(value_1, 10)) { revert(0, 0) }\n        mstore(value, value_1)\n        let offset := calldataload(add(headStart, 32))\n        if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n        mstore(add(value, 32), abi_decode_bytes(add(headStart, offset), end))\n    }\n    function abi_decode_tuple_t_struct$_RadonReducer_$37748_memory_ptr(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        let offset := calldataload(headStart)\n        if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n        let _1 := add(headStart, offset)\n        if slt(sub(dataEnd, _1), 0x40) { revert(0, 0) }\n        let value := allocate_memory_4557()\n        mstore(value, abi_decode_enum_RadonReduceOpcodes(_1))\n        let offset_1 := calldataload(add(_1, 32))\n        if gt(offset_1, 0xffffffffffffffff) { revert(0, 0) }\n        let _2 := add(_1, offset_1)\n        if iszero(slt(add(_2, 0x1f), dataEnd)) { revert(0, 0) }\n        let length := calldataload(_2)\n        let dst := allocate_memory(array_allocation_size_array_struct_RadonFilter_dyn(length))\n        let array := dst\n        mstore(dst, length)\n        dst := add(dst, 32)\n        let srcEnd := add(add(_2, shl(5, length)), 32)\n        if gt(srcEnd, dataEnd) { revert(0, 0) }\n        let src := add(_2, 32)\n        for { } lt(src, srcEnd) { src := add(src, 32) }\n        {\n            let innerOffset := calldataload(src)\n            if gt(innerOffset, 0xffffffffffffffff) { revert(0, 0) }\n            mstore(dst, abi_decode_struct_RadonFilter(add(add(_2, innerOffset), 32), dataEnd))\n            dst := add(dst, 32)\n        }\n        mstore(add(value, 32), array)\n        value0 := value\n    }\n    function abi_decode_uint8(offset) -> value\n    {\n        value := calldataload(offset)\n        if iszero(eq(value, and(value, 0xff))) { revert(0, 0) }\n    }\n    function abi_decode_tuple_t_bytes_memory_ptrt_uint8t_string_memory_ptr(headStart, dataEnd) -> value0, value1, value2\n    {\n        if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n        let offset := calldataload(headStart)\n        if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n        value0 := abi_decode_bytes(add(headStart, offset), dataEnd)\n        value1 := abi_decode_uint8(add(headStart, 32))\n        let offset_1 := calldataload(add(headStart, 64))\n        if gt(offset_1, 0xffffffffffffffff) { revert(0, 0) }\n        value2 := abi_decode_bytes(add(headStart, offset_1), dataEnd)\n    }\n    function abi_decode_enum_RadonRetrievalMethods(offset) -> value\n    {\n        value := calldataload(offset)\n        if iszero(lt(value, 5)) { revert(0, 0) }\n    }\n    function abi_decode_array_array_string_dyn(offset, end) -> array\n    {\n        if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n        let length := calldataload(offset)\n        let dst := allocate_memory(array_allocation_size_array_struct_RadonFilter_dyn(length))\n        let array_1 := dst\n        mstore(dst, length)\n        dst := add(dst, 0x20)\n        let srcEnd := add(add(offset, shl(5, length)), 0x20)\n        if gt(srcEnd, end) { revert(0, 0) }\n        let src := add(offset, 0x20)\n        for { } lt(src, srcEnd) { src := add(src, 0x20) }\n        {\n            let innerOffset := calldataload(src)\n            if gt(innerOffset, 0xffffffffffffffff) { revert(0, 0) }\n            let _1 := add(offset, innerOffset)\n            if iszero(slt(add(_1, 63), end)) { revert(0, 0) }\n            let dst_1 := allocate_memory_4557()\n            let array_2 := dst_1\n            let srcEnd_1 := add(_1, 96)\n            if gt(srcEnd_1, end) { revert(0, 0) }\n            let src_1 := add(_1, 0x20)\n            for { } lt(src_1, srcEnd_1) { src_1 := add(src_1, 0x20) }\n            {\n                let innerOffset_1 := calldataload(src_1)\n                if gt(innerOffset_1, 0xffffffffffffffff) { revert(0, 0) }\n                mstore(dst_1, abi_decode_bytes(add(add(_1, innerOffset_1), 0x20), end))\n                dst_1 := add(dst_1, 0x20)\n            }\n            mstore(dst, array_2)\n            dst := add(dst, 0x20)\n        }\n        array := array_1\n    }\n    function abi_decode_struct_RadonRetrieval(headStart, end) -> value\n    {\n        if slt(sub(end, headStart), 0xe0) { revert(0, 0) }\n        value := allocate_memory_4563()\n        mstore(value, abi_decode_uint8(headStart))\n        mstore(add(value, 32), abi_decode_enum_RadonRetrievalMethods(add(headStart, 32)))\n        mstore(add(value, 64), abi_decode_enum_RadonDataTypes(add(headStart, 64)))\n        let offset := calldataload(add(headStart, 96))\n        if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n        mstore(add(value, 96), abi_decode_bytes(add(headStart, offset), end))\n        let offset_1 := calldataload(add(headStart, 128))\n        if gt(offset_1, 0xffffffffffffffff) { revert(0, 0) }\n        mstore(add(value, 128), abi_decode_bytes(add(headStart, offset_1), end))\n        let offset_2 := calldataload(add(headStart, 160))\n        if gt(offset_2, 0xffffffffffffffff) { revert(0, 0) }\n        mstore(add(value, 160), abi_decode_array_array_string_dyn(add(headStart, offset_2), end))\n        let offset_3 := calldataload(add(headStart, 192))\n        if gt(offset_3, 0xffffffffffffffff) { revert(0, 0) }\n        mstore(add(value, 192), abi_decode_bytes(add(headStart, offset_3), end))\n    }\n    function abi_decode_tuple_t_struct$_RadonRetrieval_$37795_memory_ptrt_uint8t_string_memory_ptr(headStart, dataEnd) -> value0, value1, value2\n    {\n        if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n        let offset := calldataload(headStart)\n        if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n        value0 := abi_decode_struct_RadonRetrieval(add(headStart, offset), dataEnd)\n        value1 := abi_decode_uint8(add(headStart, 32))\n        let offset_1 := calldataload(add(headStart, 64))\n        if gt(offset_1, 0xffffffffffffffff) { revert(0, 0) }\n        value2 := abi_decode_bytes(add(headStart, offset_1), dataEnd)\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_enum_RadonRetrievalMethods(value, pos)\n    {\n        if iszero(lt(value, 5)) { panic_error_0x21() }\n        mstore(pos, value)\n    }\n    function abi_encode_enum_RadonDataTypes(value, pos)\n    {\n        if iszero(lt(value, 20)) { panic_error_0x21() }\n        mstore(pos, value)\n    }\n    function abi_encode_array_array_string_dyn(value, pos) -> end\n    {\n        let pos_1 := pos\n        let length := mload(value)\n        mstore(pos, length)\n        pos := add(pos, 0x20)\n        let tail := add(add(pos_1, shl(5, length)), 0x20)\n        let srcPtr := add(value, 0x20)\n        let i := 0\n        for { } lt(i, length) { i := add(i, 1) }\n        {\n            mstore(pos, add(sub(tail, pos_1), not(31)))\n            let _1 := mload(srcPtr)\n            let pos_2 := tail\n            pos_2 := tail\n            let tail_1 := add(tail, 64)\n            let srcPtr_1 := _1\n            let i_1 := 0\n            for { } lt(i_1, 0x02) { i_1 := add(i_1, 1) }\n            {\n                mstore(pos_2, sub(tail_1, tail))\n                tail_1 := abi_encode_bytes(mload(srcPtr_1), tail_1)\n                srcPtr_1 := add(srcPtr_1, 0x20)\n                pos_2 := add(pos_2, 0x20)\n            }\n            tail := tail_1\n            srcPtr := add(srcPtr, 0x20)\n            pos := add(pos, 0x20)\n        }\n        end := tail\n    }\n    function abi_encode_tuple_t_struct$_RadonRetrieval_$37795_memory_ptr__to_t_struct$_RadonRetrieval_$37795_memory_ptr__fromStack_library_reversed(headStart, value0) -> tail\n    {\n        mstore(headStart, 32)\n        mstore(add(headStart, 32), and(mload(value0), 0xff))\n        let memberValue0 := mload(add(value0, 32))\n        abi_encode_enum_RadonRetrievalMethods(memberValue0, add(headStart, 64))\n        let memberValue0_1 := mload(add(value0, 64))\n        abi_encode_enum_RadonDataTypes(memberValue0_1, add(headStart, 96))\n        let memberValue0_2 := mload(add(value0, 96))\n        mstore(add(headStart, 128), 0xe0)\n        let tail_1 := abi_encode_bytes(memberValue0_2, add(headStart, 256))\n        let memberValue0_3 := mload(add(value0, 128))\n        mstore(add(headStart, 160), add(sub(tail_1, headStart), not(31)))\n        let tail_2 := abi_encode_bytes(memberValue0_3, tail_1)\n        let memberValue0_4 := mload(add(value0, 160))\n        mstore(add(headStart, 192), add(sub(tail_2, headStart), not(31)))\n        let tail_3 := abi_encode_array_array_string_dyn(memberValue0_4, tail_2)\n        let memberValue0_5 := mload(add(value0, 192))\n        mstore(add(headStart, 0xe0), add(sub(tail_3, headStart), not(31)))\n        tail := abi_encode_bytes(memberValue0_5, tail_3)\n    }\n    function abi_decode_tuple_t_enum$_RadonRetrievalMethods_$37802t_string_memory_ptrt_string_memory_ptrt_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptrt_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4\n    {\n        if slt(sub(dataEnd, headStart), 160) { revert(0, 0) }\n        value0 := abi_decode_enum_RadonRetrievalMethods(headStart)\n        let offset := calldataload(add(headStart, 32))\n        if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n        value1 := abi_decode_bytes(add(headStart, offset), dataEnd)\n        let offset_1 := calldataload(add(headStart, 64))\n        if gt(offset_1, 0xffffffffffffffff) { revert(0, 0) }\n        value2 := abi_decode_bytes(add(headStart, offset_1), dataEnd)\n        let offset_2 := calldataload(add(headStart, 96))\n        if gt(offset_2, 0xffffffffffffffff) { revert(0, 0) }\n        value3 := abi_decode_array_array_string_dyn(add(headStart, offset_2), dataEnd)\n        let offset_3 := calldataload(add(headStart, 128))\n        if gt(offset_3, 0xffffffffffffffff) { revert(0, 0) }\n        value4 := abi_decode_bytes(add(headStart, offset_3), dataEnd)\n    }\n    function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        mstore(headStart, value0)\n    }\n    function abi_decode_available_length_array_string_dyn(offset, length, end) -> array\n    {\n        array := allocate_memory(array_allocation_size_array_struct_RadonFilter_dyn(length))\n        let dst := array\n        mstore(array, length)\n        dst := add(array, 0x20)\n        let srcEnd := add(offset, shl(5, length))\n        if gt(srcEnd, end) { revert(0, 0) }\n        let src := offset\n        for { } lt(src, srcEnd) { src := add(src, 0x20) }\n        {\n            let innerOffset := calldataload(src)\n            if gt(innerOffset, 0xffffffffffffffff) { revert(0, 0) }\n            mstore(dst, abi_decode_bytes(add(offset, innerOffset), end))\n            dst := add(dst, 0x20)\n        }\n    }\n    function abi_decode_array_string_dyn(offset, end) -> array\n    {\n        if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n        array := abi_decode_available_length_array_string_dyn(add(offset, 0x20), calldataload(offset), end)\n    }\n    function abi_decode_tuple_t_struct$_RadonRetrieval_$37795_memory_ptrt_array$_t_string_memory_ptr_$dyn_memory_ptr(headStart, dataEnd) -> value0, value1\n    {\n        if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n        let offset := calldataload(headStart)\n        if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n        value0 := abi_decode_struct_RadonRetrieval(add(headStart, offset), dataEnd)\n        let offset_1 := calldataload(add(headStart, 32))\n        if gt(offset_1, 0xffffffffffffffff) { revert(0, 0) }\n        value1 := abi_decode_array_string_dyn(add(headStart, offset_1), dataEnd)\n    }\n    function abi_decode_tuple_t_enum$_RadonReduceOpcodes_$37762(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        value0 := abi_decode_enum_RadonReduceOpcodes(headStart)\n    }\n    function abi_decode_tuple_t_string_memory_ptr(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        let offset := calldataload(headStart)\n        if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n        value0 := abi_decode_bytes(add(headStart, offset), dataEnd)\n    }\n    function abi_decode_uint64(offset) -> value\n    {\n        value := calldataload(offset)\n        if iszero(eq(value, and(value, 0xffffffffffffffff))) { revert(0, 0) }\n    }\n    function abi_decode_tuple_t_struct$_RadonSLAv1_$37814_memory_ptr(headStart, dataEnd) -> value0\n    {\n        let _1 := slt(sub(dataEnd, headStart), 160)\n        if _1 { revert(0, 0) }\n        _1 := 0\n        let memPtr := 0\n        memPtr := mload(64)\n        let newFreePtr := add(memPtr, 160)\n        if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n        mstore(64, newFreePtr)\n        mstore(memPtr, abi_decode_uint8(headStart))\n        mstore(add(memPtr, 32), abi_decode_uint8(add(headStart, 32)))\n        mstore(add(memPtr, 64), abi_decode_uint64(add(headStart, 64)))\n        mstore(add(memPtr, 96), abi_decode_uint64(add(headStart, 96)))\n        mstore(add(memPtr, 128), abi_decode_uint64(add(headStart, 128)))\n        value0 := memPtr\n    }\n    function abi_decode_tuple_t_bytes_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1\n    {\n        if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n        let offset := calldataload(headStart)\n        if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n        value0 := abi_decode_bytes(add(headStart, offset), dataEnd)\n        value1 := calldataload(add(headStart, 32))\n    }\n    function abi_decode_tuple_t_struct$_RadonFilter_$37727_memory_ptr(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        let offset := calldataload(headStart)\n        if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n        value0 := abi_decode_struct_RadonFilter(add(headStart, offset), dataEnd)\n    }\n    function abi_decode_tuple_t_uint64t_bytes1(headStart, dataEnd) -> value0, value1\n    {\n        if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n        value0 := abi_decode_uint64(headStart)\n        let value := calldataload(add(headStart, 32))\n        if iszero(eq(value, and(value, shl(248, 255)))) { revert(0, 0) }\n        value1 := value\n    }\n    function abi_decode_array_struct_RadonRetrieval_dyn(offset, end) -> array\n    {\n        if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n        let length := calldataload(offset)\n        let dst := allocate_memory(array_allocation_size_array_struct_RadonFilter_dyn(length))\n        let array_1 := dst\n        mstore(dst, length)\n        dst := add(dst, 0x20)\n        let srcEnd := add(add(offset, shl(5, length)), 0x20)\n        if gt(srcEnd, end) { revert(0, 0) }\n        let src := add(offset, 0x20)\n        for { } lt(src, srcEnd) { src := add(src, 0x20) }\n        {\n            let innerOffset := calldataload(src)\n            if gt(innerOffset, 0xffffffffffffffff) { revert(0, 0) }\n            mstore(dst, abi_decode_struct_RadonRetrieval(add(add(offset, innerOffset), 0x20), end))\n            dst := add(dst, 0x20)\n        }\n        array := array_1\n    }\n    function abi_decode_tuple_t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptrt_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptrt_bytes_memory_ptrt_bytes_memory_ptrt_uint16(headStart, dataEnd) -> value0, value1, value2, value3, value4\n    {\n        if slt(sub(dataEnd, headStart), 160) { revert(0, 0) }\n        let offset := calldataload(headStart)\n        if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n        value0 := abi_decode_array_struct_RadonRetrieval_dyn(add(headStart, offset), dataEnd)\n        let offset_1 := calldataload(add(headStart, 32))\n        if gt(offset_1, 0xffffffffffffffff) { revert(0, 0) }\n        let _1 := add(headStart, offset_1)\n        if iszero(slt(add(_1, 0x1f), dataEnd)) { revert(0, 0) }\n        let length := calldataload(_1)\n        let dst := allocate_memory(array_allocation_size_array_struct_RadonFilter_dyn(length))\n        let array := dst\n        mstore(dst, length)\n        dst := add(dst, 32)\n        let srcEnd := add(add(_1, shl(5, length)), 32)\n        if gt(srcEnd, dataEnd) { revert(0, 0) }\n        let src := add(_1, 32)\n        for { } lt(src, srcEnd) { src := add(src, 32) }\n        {\n            let innerOffset := calldataload(src)\n            if gt(innerOffset, 0xffffffffffffffff) { revert(0, 0) }\n            mstore(dst, abi_decode_array_string_dyn(add(add(_1, innerOffset), 32), dataEnd))\n            dst := add(dst, 32)\n        }\n        value1 := array\n        let offset_2 := calldataload(add(headStart, 64))\n        if gt(offset_2, 0xffffffffffffffff) { revert(0, 0) }\n        value2 := abi_decode_bytes(add(headStart, offset_2), dataEnd)\n        let offset_3 := calldataload(add(headStart, 96))\n        if gt(offset_3, 0xffffffffffffffff) { revert(0, 0) }\n        value3 := abi_decode_bytes(add(headStart, offset_3), dataEnd)\n        value4 := abi_decode_uint16(add(headStart, 128))\n    }\n    function abi_decode_tuple_t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptrt_array$_t_string_calldata_ptr_$dyn_calldata_ptrt_bytes_memory_ptrt_bytes_memory_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4\n    {\n        if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n        let offset := calldataload(headStart)\n        if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n        value0 := abi_decode_array_struct_RadonRetrieval_dyn(add(headStart, offset), dataEnd)\n        let offset_1 := calldataload(add(headStart, 32))\n        if gt(offset_1, 0xffffffffffffffff) { revert(0, 0) }\n        let _1 := add(headStart, offset_1)\n        if iszero(slt(add(_1, 0x1f), dataEnd)) { revert(0, 0) }\n        let length := calldataload(_1)\n        if gt(length, 0xffffffffffffffff) { revert(0, 0) }\n        if gt(add(add(_1, shl(5, length)), 32), dataEnd) { revert(0, 0) }\n        value1 := add(_1, 32)\n        value2 := length\n        let offset_2 := calldataload(add(headStart, 64))\n        if gt(offset_2, 0xffffffffffffffff) { revert(0, 0) }\n        value3 := abi_decode_bytes(add(headStart, offset_2), dataEnd)\n        let offset_3 := calldataload(add(headStart, 96))\n        if gt(offset_3, 0xffffffffffffffff) { revert(0, 0) }\n        value4 := abi_decode_bytes(add(headStart, offset_3), dataEnd)\n    }\n    function abi_decode_tuple_t_bytes_memory_ptrt_array$_t_string_memory_ptr_$dyn_memory_ptr(headStart, dataEnd) -> value0, value1\n    {\n        if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n        let offset := calldataload(headStart)\n        if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n        value0 := abi_decode_bytes(add(headStart, offset), dataEnd)\n        let offset_1 := calldataload(add(headStart, 32))\n        if gt(offset_1, 0xffffffffffffffff) { revert(0, 0) }\n        value1 := abi_decode_array_string_dyn(add(headStart, offset_1), dataEnd)\n    }\n    function abi_encode_tuple_t_enum$_RadonDataTypes_$37720__to_t_uint8__fromStack_library_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        abi_encode_enum_RadonDataTypes(value0, headStart)\n    }\n    function abi_decode_tuple_t_struct$_RadonRetrieval_$37795_memory_ptr(headStart, dataEnd) -> value0\n    {\n        if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n        let offset := calldataload(headStart)\n        if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n        value0 := abi_decode_struct_RadonRetrieval(add(headStart, offset), dataEnd)\n    }\n    function abi_encode_tuple_t_uint8_t_uint16__to_t_uint8_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, 0xffff))\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_add_t_uint16(x, y) -> sum\n    {\n        sum := add(and(x, 0xffff), and(y, 0xffff))\n        if gt(sum, 0xffff) { panic_error_0x11() }\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_bytes_memory_ptr(value, pos) -> end\n    {\n        let length := mload(value)\n        mcopy(pos, add(value, 0x20), length)\n        let _1 := add(pos, length)\n        mstore(_1, 0)\n        end := _1\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        end := abi_encode_bytes_memory_ptr(value1, abi_encode_bytes_memory_ptr(value0, pos))\n    }\n    function abi_encode_tuple_t_uint8_t_string_memory_ptr_t_string_memory_ptr_t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr__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__fromStack_reversed(headStart, value3, value2, value1, value0) -> tail\n    {\n        mstore(headStart, and(value0, 0xff))\n        mstore(add(headStart, 32), 128)\n        let tail_1 := abi_encode_bytes(value1, add(headStart, 128))\n        mstore(add(headStart, 64), sub(tail_1, headStart))\n        let tail_2 := abi_encode_bytes(value2, tail_1)\n        mstore(add(headStart, 96), sub(tail_2, headStart))\n        tail := abi_encode_array_array_string_dyn(value3, tail_2)\n    }\n    function abi_encode_tuple_t_enum$_RadonRetrievalMethods_$37802_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__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, value4, value3, value2, value1, value0) -> tail\n    {\n        abi_encode_enum_RadonRetrievalMethods(value0, headStart)\n        mstore(add(headStart, 32), 160)\n        let tail_1 := abi_encode_bytes(value1, add(headStart, 160))\n        mstore(add(headStart, 64), sub(tail_1, headStart))\n        let tail_2 := abi_encode_bytes(value2, tail_1)\n        mstore(add(headStart, 96), sub(tail_2, headStart))\n        let tail_3 := abi_encode_array_array_string_dyn(value3, tail_2)\n        mstore(add(headStart, 128), sub(tail_3, headStart))\n        tail := abi_encode_bytes(value4, tail_3)\n    }\n    function abi_encode_tuple_t_stringliteral_04f8ba16d0c093b5f8aeedbd38b89b45db1cae931e9ce6b7857ab483f725335d__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n    {\n        mstore(headStart, 32)\n        mstore(add(headStart, 32), 49)\n        mstore(add(headStart, 64), \"WitOracleRadonEncodingLib: inval\")\n        mstore(add(headStart, 96), \"id SLA: no reward\")\n        tail := add(headStart, 128)\n    }\n    function abi_encode_tuple_t_stringliteral_79d228fa71a751ad8e734cf47bae8cbc208746d64ffd9076b12d509d7a13b1c2__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n    {\n        mstore(headStart, 32)\n        mstore(add(headStart, 32), 52)\n        mstore(add(headStart, 64), \"WitOracleRadonEncodingLib: inval\")\n        mstore(add(headStart, 96), \"id SLA: no witnesses\")\n        tail := add(headStart, 128)\n    }\n    function abi_encode_tuple_t_stringliteral_42f3a6e356b0c1db9a0fae77d82b65ad778b2afa7e75476e6353ce66757adcd5__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n    {\n        mstore(headStart, 32)\n        mstore(add(headStart, 32), 65)\n        mstore(add(headStart, 64), \"WitOracleRadonEncodingLib: inval\")\n        mstore(add(headStart, 96), \"id SLA: too many witnesses (>127\")\n        mstore(add(headStart, 128), \")\")\n        tail := add(headStart, 160)\n    }\n    function abi_encode_tuple_t_stringliteral_faa6f1e8fde9a6c84dd64770c1b479dec3d0221e2cc74699b10e27d46a7149c5__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n    {\n        mstore(headStart, 32)\n        mstore(add(headStart, 32), 73)\n        mstore(add(headStart, 64), \"WitOracleRadonEncodingLib: inval\")\n        mstore(add(headStart, 96), \"id SLA: consensus percentage out\")\n        mstore(add(headStart, 128), \" of range\")\n        tail := add(headStart, 160)\n    }\n    function abi_encode_tuple_t_stringliteral_285f73ea2ef8e7a5d3d55eae8c4057b055c55ddec0573447c8accd8035be360f__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n    {\n        mstore(headStart, 32)\n        mstore(add(headStart, 32), 53)\n        mstore(add(headStart, 64), \"WitOracleRadonEncodingLib: inval\")\n        mstore(add(headStart, 96), \"id SLA: no collateral\")\n        tail := add(headStart, 128)\n    }\n    function panic_error_0x12()\n    {\n        mstore(0, shl(224, 0x4e487b71))\n        mstore(4, 0x12)\n        revert(0, 0x24)\n    }\n    function checked_div_t_uint64(x, y) -> r\n    {\n        let y_1 := and(y, 0xffffffffffffffff)\n        if iszero(y_1) { panic_error_0x12() }\n        r := div(and(x, 0xffffffffffffffff), y_1)\n    }\n    function abi_encode_tuple_t_stringliteral_189c7783cae88dbb1922dd90187c54d41b5d3f8f4e78ec8279bd6292363dc2c8__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n    {\n        mstore(headStart, 32)\n        mstore(add(headStart, 32), 79)\n        mstore(add(headStart, 64), \"WitOracleRadonEncodingLib: inval\")\n        mstore(add(headStart, 96), \"id SLA: collateral/reward ratio \")\n        mstore(add(headStart, 128), \"too high (>127)\")\n        tail := add(headStart, 160)\n    }\n    function abi_encode_tuple_packed_t_uint8_t_bytes_memory_ptr__to_t_uint8_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n    {\n        mstore(pos, and(shl(248, value0), shl(248, 255)))\n        end := abi_encode_bytes_memory_ptr(value1, add(pos, 1))\n    }\n    function abi_encode_tuple_packed_t_uint8__to_t_uint8__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n    {\n        mstore(pos, and(shl(248, value0), shl(248, 255)))\n        end := add(pos, 1)\n    }\n    function abi_encode_tuple_packed_t_uint16__to_t_uint16__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n    {\n        mstore(pos, and(shl(240, value0), shl(240, 65535)))\n        end := add(pos, 2)\n    }\n    function abi_encode_tuple_packed_t_uint32__to_t_uint32__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n    {\n        mstore(pos, and(shl(224, value0), shl(224, 0xffffffff)))\n        end := add(pos, 4)\n    }\n    function abi_encode_tuple_packed_t_uint64__to_t_uint64__nonPadded_inplace_fromStack_reversed(pos, value0) -> end\n    {\n        mstore(pos, and(shl(192, value0), shl(192, 0xffffffffffffffff)))\n        end := add(pos, 8)\n    }\n    function abi_encode_tuple_packed_t_uint8_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_uint8_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value2, value1, value0) -> end\n    {\n        mstore(pos, and(shl(248, value0), shl(248, 255)))\n        end := abi_encode_bytes_memory_ptr(value2, abi_encode_bytes_memory_ptr(value1, add(pos, 1)))\n    }\n    function abi_encode_tuple_t_uint8_t_bytes_memory_ptr__to_t_uint8_t_bytes_memory_ptr__fromStack_reversed(headStart, value1, value0) -> tail\n    {\n        mstore(headStart, and(value0, 0xff))\n        mstore(add(headStart, 32), 64)\n        tail := abi_encode_bytes(value1, add(headStart, 64))\n    }\n    function abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed(headStart, value0) -> tail\n    {\n        tail := add(headStart, 32)\n        mstore(headStart, and(value0, 0xff))\n    }\n    function abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value4, value3, value2, value1, value0) -> end\n    {\n        end := abi_encode_bytes_memory_ptr(value4, abi_encode_bytes_memory_ptr(value3, abi_encode_bytes_memory_ptr(value2, abi_encode_bytes_memory_ptr(value1, abi_encode_bytes_memory_ptr(value0, pos)))))\n    }\n    function convert_array_t_array$_t_string_calldata_ptr_$dyn_calldata_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr(value, length) -> converted\n    {\n        converted := abi_decode_available_length_array_string_dyn(value, length, calldatasize())\n    }\n    function abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value3, value2, value1, value0) -> end\n    {\n        end := abi_encode_bytes_memory_ptr(value3, abi_encode_bytes_memory_ptr(value2, abi_encode_bytes_memory_ptr(value1, abi_encode_bytes_memory_ptr(value0, pos))))\n    }\n    function abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value2, value1, value0) -> end\n    {\n        end := abi_encode_bytes_memory_ptr(value2, abi_encode_bytes_memory_ptr(value1, abi_encode_bytes_memory_ptr(value0, pos)))\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_packed_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value5, value4, value3, value2, value1, value0) -> end\n    {\n        end := abi_encode_bytes_memory_ptr(value5, abi_encode_bytes_memory_ptr(value4, abi_encode_bytes_memory_ptr(value3, abi_encode_bytes_memory_ptr(value2, abi_encode_bytes_memory_ptr(value1, abi_encode_bytes_memory_ptr(value0, pos))))))\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_stringliteral_92a4e60c9c8a6bab113d51719bd32c972951c92a48fb0ef633db4f8d512f86fe__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n    {\n        mstore(headStart, 32)\n        mstore(add(headStart, 32), 39)\n        mstore(add(headStart, 64), \"WitnetCBOR.skip: unsupported maj\")\n        mstore(add(headStart, 96), \"or type\")\n        tail := add(headStart, 128)\n    }\n    function abi_encode_tuple_t_bytes_memory_ptr_t_uint256_t_uint8__to_t_bytes_memory_ptr_t_uint256_t_uint8__fromStack_reversed(headStart, value2, value1, value0) -> tail\n    {\n        mstore(headStart, 96)\n        tail := abi_encode_bytes(value0, add(headStart, 96))\n        mstore(add(headStart, 32), value1)\n        mstore(add(headStart, 64), and(value2, 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 increment_t_uint256(value) -> ret\n    {\n        if eq(value, not(0)) { panic_error_0x11() }\n        ret := add(value, 1)\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_packed_t_string_memory_ptr_t_bytes_memory_ptr__to_t_string_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n    {\n        end := abi_encode_bytes_memory_ptr(value1, abi_encode_bytes_memory_ptr(value0, pos))\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 checked_sub_t_uint8(x, y) -> diff\n    {\n        diff := sub(and(x, 0xff), and(y, 0xff))\n        if gt(diff, 0xff) { panic_error_0x11() }\n    }\n    function checked_add_t_uint64(x, y) -> sum\n    {\n        sum := add(and(x, 0xffffffffffffffff), and(y, 0xffffffffffffffff))\n        if gt(sum, 0xffffffffffffffff) { panic_error_0x11() }\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    function checked_mul_t_uint64(x, y) -> product\n    {\n        let product_raw := mul(and(x, 0xffffffffffffffff), and(y, 0xffffffffffffffff))\n        product := and(product_raw, 0xffffffffffffffff)\n        if iszero(eq(product, product_raw)) { panic_error_0x11() }\n    }\n    function mod_t_uint256(x, y) -> r\n    {\n        if iszero(y) { panic_error_0x12() }\n        r := mod(x, y)\n    }\n}",
      "id": 136,
      "language": "Yul",
      "name": "#utility.yul"
    }
  ],
  "sourceMap": "189:22642:114:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;189:22642:114;;;;;;;;;;;;;;;;;",
  "deployedSourceMap": "189:22642:114:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15150:1175;;;;;;:::i;:::-;;:::i;:::-;;;816:6:136;804:19;;;786:38;;774:2;759:18;15150:1175:114;;;;;;;;3963:158;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;9505:731::-;;;;;;:::i;:::-;;:::i;11523:609::-;;;;;;:::i;:::-;;:::i;12713:723::-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;14087:1051::-;;;;;;:::i;:::-;;:::i;:::-;;;13898:25:136;;;13886:2;13871:18;14087:1051:114;13744:185:136;13444:635:114;;;;;;:::i;:::-;;:::i;10841:180::-;;;;;;:::i;:::-;;:::i;4260:167::-;;;;;;:::i;:::-;;:::i;18327:1012::-;;;;;;:::i;:::-;;:::i;:::-;;2812:1042;;;;;;:::i;:::-;;:::i;16333:849::-;;;;;;:::i;:::-;;:::i;4655:886::-;;;;;;:::i;:::-;;:::i;8638:859::-;;;;;;:::i;:::-;;:::i;11029:486::-;;;;;;:::i;:::-;;:::i;10244:589::-;;;;;;:::i;:::-;;:::i;7781:845::-;;;;;;:::i;:::-;;:::i;17190:1129::-;;;;;;:::i;:::-;;:::i;12140:565::-;;;;;;:::i;:::-;;:::i;19347:261::-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;5552:2221::-;;;;;;:::i;:::-;;:::i;15150:1175::-;15296:6;;15338:8;:37;;;;;;;;:::i;:::-;;:98;;;-1:-1:-1;15408:28:114;15396:8;:40;;;;;;;;:::i;:::-;;15338:98;:158;;;-1:-1:-1;15469:27:114;15457:8;:39;;;;;;;;:::i;:::-;;15338:158;:218;;;-1:-1:-1;15529:27:114;15517:8;:39;;;;;;;;:::i;:::-;;15338:218;:276;;;-1:-1:-1;15589:25:114;15577:8;:37;;;;;;;;:::i;:::-;;15338:276;15320:998;;;15645:11;:16;;15660:1;15645:16;15641:179;;15742:8;15736:15;;;;;;;;:::i;:::-;15689:115;;-1:-1:-1;;;15689:115:114;;23620:4:136;23608:17;;;15689:115:114;;;23590:36:136;23674:6;23662:19;;23642:18;;;23635:47;23563:18;;15689:115:114;;;;;;;;15641:179;15841:15;:11;15855:1;15841:15;:::i;:::-;15834:22;;;;15320:998;15966:29;15954:8;:41;;;;;;;;:::i;:::-;;:101;;;-1:-1:-1;16028:27:114;16016:8;:39;;;;;;;;:::i;:::-;;15954:101;:160;;;-1:-1:-1;16088:26:114;16076:8;:38;;;;;;;;:::i;:::-;;15954:160;15936:382;;;-1:-1:-1;16148:1:114;16141:8;;15936:382;16249:8;16243:15;;;;;;;;:::i;:::-;16277:14;16282:8;16277:4;:14::i;:::-;16200:106;;-1:-1:-1;;;16200:106:114;;23620:4:136;23608:17;;;16200:106:114;;;23590:36:136;23674:6;23662:19;23642:18;;;23635:47;23563:18;;16200:106:114;23421:267:136;15936:382:114;15150:1175;;;;:::o;3963:158::-;4036:12;4073:40;4080:3;1071:1:118;4073:6:114;:40::i;9505:731::-;9596:21;9690:7;9685:216;9708:7;:15;;;:22;9703:2;:27;9685:216;;;9808:8;9839:27;9846:7;:15;;;9862:2;9846:19;;;;;;;;:::i;:::-;;;;;;;9839:6;:27::i;:::-;9769:116;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;9769:116:114;;;;;;;;;;-1:-1:-1;9732:5:114;;9685:216;;;;9961:8;9988:22;9995:7;:14;;;9988:6;:22::i;:::-;9926:99;;;;;;;;;:::i;:::-;;;;;;;;;;;;;9915:110;;9505:731;;;:::o;11523:609::-;11708:12;11738:27;11768:26;11789:4;11768:20;:26::i;:::-;11738:56;;11805:286;2152:11:118;;:16;;:23;2130:18;;;;;:45;;11805:286:114;;1121:1:118;11844:46:114;;:4;:14;;;:46;;;11840:240;;11911:46;11932:4;11938:8;11948;11911:20;:46::i;:::-;11983:13;:4;:11;:13::i;:::-;11976:20;;11805:286;;11840:240;12044:20;:11;:4;:9;:11::i;:::-;:18;:20::i;11805:286::-;12108:11;:16;;11523:609;-1:-1:-1;;;;11523:609:114:o;12713:723::-;12853:28;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12853:28:114;12910:50;12931:4;:8;;;12941;12951;12910:20;:50::i;:::-;12899:8;;;:61;13004:9;;;;12983:51;;13015:8;13025;12983:20;:51::i;:::-;12971:9;;;:63;13092:16;;;;13064:65;;13110:8;13120;13064:27;:65::i;:::-;13045:16;;;:84;13145:8;13140:267;13166:4;:12;;;:19;13160:3;:25;13140:267;;;13233:62;13254:4;:12;;;13267:3;13254:17;;;;;;;;:::i;:::-;;;;;;;13272:1;13254:20;;;;;;;:::i;:::-;;;;;13276:8;13286;13233:20;:62::i;:::-;13210:4;:12;;;13223:3;13210:17;;;;;;;;:::i;:::-;;;;;;;13228:1;13210:20;;;;;;;:::i;:::-;;;;:85;;;;13333:62;13354:4;:12;;;13367:3;13354:17;;;;;;;;:::i;:::-;;;;;;;13372:1;13354:20;;;;;;;:::i;13333:62::-;13310:4;:12;;;13323:3;13310:17;;;;;;;;:::i;:::-;;;;;;;13328:1;13310:20;;;;;;;:::i;:::-;;;;:85;13187:6;;13140:267;;;-1:-1:-1;13424:4:114;;12713:723;-1:-1:-1;;;12713:723:114:o;14087:1051::-;14345:7;14400:37;14390:6;:47;;;;;;;;:::i;:::-;;:139;;;-1:-1:-1;14465:36:114;14455:6;:46;;;;;;;;:::i;:::-;;:73;;;;-1:-1:-1;14505:18:114;;:23;14455:73;14390:232;;;-1:-1:-1;14557:37:114;14547:6;:47;;;;;;;;:::i;:::-;;:74;;;;-1:-1:-1;14598:18:114;;:23;14547:74;14390:473;;;-1:-1:-1;14650:32:114;14640:6;:42;;;;;;;;:::i;:::-;;:85;;;;-1:-1:-1;14703:17:114;;:22;14640:85;:129;;;;-1:-1:-1;14746:18:114;;:23;14640:129;:169;;;;-1:-1:-1;14790:14:114;;:19;14640:169;:208;;;;;14847:1;14830:6;:13;:18;;14640:208;14370:686;;14951:6;14945:13;;;;;;;;:::i;:::-;14977:3;14999:4;15022:7;14898:146;;-1:-1:-1;;;14898:146:114;;;;;;;;;;;:::i;14370:686::-;15094:6;15102:3;15107:4;15113:7;15122:6;15083:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;15073:57;;;;;;15066:64;;14087:1051;;;;;;;:::o;13444:635::-;13566:28;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13566:28:114;13623:36;13644:4;:8;;;13654:4;13623:20;:36::i;:::-;13612:8;;;:47;13703:9;;;;13682:37;;13714:4;13682:20;:37::i;:::-;13670:9;;;:49;13777:16;;;;13749:51;;13795:4;13749:27;:51::i;:::-;13730:16;;;:70;13816:8;13811:239;13837:4;:12;;;:19;13831:3;:25;13811:239;;;13904:48;13925:4;:12;;;13938:3;13925:17;;;;;;;;:::i;:::-;;;;;;;13943:1;13925:20;;;;;;;:::i;:::-;;;;;13947:4;13904:20;:48::i;:::-;13881:4;:12;;;13894:3;13881:17;;;;;;;;:::i;:::-;;;;;;;13899:1;13881:20;;;;;;;:::i;:::-;;;;:71;;;;13990:48;14011:4;:12;;;14024:3;14011:17;;;;;;;;:::i;:::-;;;;;;;14029:1;14011:20;;;;;;;:::i;13990:48::-;13967:4;:12;;;13980:3;13967:17;;;;;;;;:::i;:::-;;;;;;;13985:1;13967:20;;;;;;;:::i;:::-;;;;:71;13858:6;;13811:239;;;-1:-1:-1;14067:4:114;;13444:635;-1:-1:-1;;13444:635:114:o;10841:180::-;10930:12;10977:36;10991:6;10984:14;;;;;;;;:::i;:::-;-1:-1:-1;;;10977:6:114;:36::i;4260:167::-;4334:12;4371:48;4384:3;1121:1:118;4371:6:114;:48::i;18327:1012::-;18416:3;:17;;;-1:-1:-1;;;;;18416:22:114;18437:1;18416:22;18412:114;;18455:59;;-1:-1:-1;;;18455:59:114;;26526:2:136;18455:59:114;;;26508:21:136;26565:2;26545:18;;;26538:30;-1:-1:-1;;;;;;;;;;;26584:18:136;;;26577:62;-1:-1:-1;;;26655:18:136;;;26648:47;26712:19;;18455:59:114;26324:413:136;18412:114:114;18540:16;;:21;;:16;:21;18536:252;;18578:62;;-1:-1:-1;;;18578:62:114;;26944:2:136;18578:62:114;;;26926:21:136;26983:2;26963:18;;;26956:30;-1:-1:-1;;;;;;;;;;;27002:18:136;;;26995:62;-1:-1:-1;;;27073:18:136;;;27066:50;27133:19;;18578:62:114;26742:416:136;18536:252:114;18681:3;18662;:16;;;:22;;;18658:130;;;18701:75;;-1:-1:-1;;;18701:75:114;;27365:2:136;18701:75:114;;;27347:21:136;27404:2;27384:18;;;27377:30;-1:-1:-1;;;;;;;;;;;27423:18:136;;;27416:62;27514:34;27494:18;;;27487:62;-1:-1:-1;;;27565:19:136;;;27558:32;27607:19;;18701:75:114;27163:469:136;18658:130:114;18845:2;18816:3;:26;;;:31;;;:84;;;;18898:2;18869:3;:26;;;:31;;;18816:84;18798:224;;;18927:83;;-1:-1:-1;;;18927:83:114;;27839:2:136;18927:83:114;;;27821:21:136;27878:2;27858:18;;;27851:30;-1:-1:-1;;;;;;;;;;;27897:18:136;;;27890:62;27988:34;27968:18;;;27961:62;-1:-1:-1;;;28039:19:136;;;28032:40;28089:19;;18927:83:114;27637:477:136;18798:224:114;19036:21;;;;-1:-1:-1;;;;;19036:25:114;;19032:121;;19078:63;;-1:-1:-1;;;19078:63:114;;28321:2:136;19078:63:114;;;28303:21:136;28360:2;28340:18;;;28333:30;-1:-1:-1;;;;;;;;;;;28379:18:136;;;28372:62;-1:-1:-1;;;28450:18:136;;;28443:51;28511:19;;19078:63:114;28119:417:136;19032:121:114;19211:3;19191;:17;;;19167:3;:21;;;:41;;;;:::i;:::-;-1:-1:-1;;;;;19167:47:114;;19163:169;;;19231:89;;-1:-1:-1;;;19231:89:114;;29074:2:136;19231:89:114;;;29056:21:136;29113:2;29093:18;;;29086:30;-1:-1:-1;;;;;;;;;;;29132:18:136;;;29125:62;29223:34;29203:18;;;29196:62;-1:-1:-1;;;29274:19:136;;;29267:46;29330:19;;19231:89:114;28872:483:136;19163:169:114;18327:1012;:::o;2812:1042::-;2942:10;;2901:12;;2973:2;2967:8;;2963:884;;;3065:3;3040:29;;3054:1;3041:9;:14;;3040:29;3089:3;2999:108;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2992:115;;;;;2963:884;3173:1;3160:14;;;3191:17;3234:4;3227:11;;3223:492;;3295:28;;-1:-1:-1;;;;;;29818:3:136;29796:16;;;29792:36;3295:28:114;;;29780:49:136;3267:2:114;3259:10;;;;;29845:11:136;;3295:28:114;;;;;;;;;;;;;3288:35;;3223:492;;;3372:6;3365:3;:13;3361:354;;3435:29;;-1:-1:-1;;;;;;30032:3:136;30010:16;;;30006:38;3435:29:114;;;29994:51:136;3407:2:114;3399:10;;;;;30061:11:136;;3435:29:114;29867:211:136;3361:354:114;3497:10;3490:3;:17;3486:229;;3564:29;;-1:-1:-1;;;;;;30248:3:136;30226:16;;;30222:43;3564:29:114;;;30210:56:136;3536:2:114;3528:10;;;;;30282:11:136;;3564:29:114;30083:216:136;3486:229:114;3670:29;;-1:-1:-1;;;;;;30469:3:136;30447:16;;;30443:51;3670:29:114;;;30431:64:136;3642:2:114;3634:10;;;;;30511:11:136;;3670:29:114;;;;;;;;;;;;3663:36;;3486:229;3771:4;3794;3817:3;3736:99;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3729:106;;;;;;;2963:884;2920:934;2812:1042;;;;:::o;16333:849::-;16457:43;16440:13;;:60;;;;;;;;:::i;:::-;;16422:753;;16584:6;:15;;;:22;16610:1;16584:27;16580:140;;16672:13;;16666:20;;;;;;;;:::i;:::-;16688:6;:15;;;16639:65;;-1:-1:-1;;;16639:65:114;;;;;;;;;:::i;16422:753::-;16772:30;16755:13;;:47;;;;;;;;:::i;:::-;;16737:438;;16896:15;;;;:22;:26;16892:139;;16983:13;;16977:20;;;;;;;;:::i;16737:438::-;17148:13;;17142:20;;;;;;;;:::i;:::-;17113:50;;-1:-1:-1;;;17113:50:114;;31383:4:136;31371:17;;;17113:50:114;;;31353:36:136;31326:18;;17113:50:114;31211:184:136;4655:886:114;4730:16;4957:1;4991;5007:100;5020:4;5014:3;-1:-1:-1;;;;;5014:10:114;;5007:100;;;5058:1;5051:3;-1:-1:-1;;;;;5051:8:114;;;5045:14;;5090:1;5078:13;;;;5007:100;;;5137:8;-1:-1:-1;;;;;5127:19:114;-1:-1:-1;;;;;5127:19:114;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5127:19:114;;5121:25;;5167:1;5161:7;;5192:1;5183:3;5187:1;5183:6;;;;;;;;:::i;:::-;;;;:10;-1:-1:-1;;;;;5183:10:114;;;;;;;;-1:-1:-1;5224:1:114;5208:222;5231:8;-1:-1:-1;;;;;5227:12:114;:1;-1:-1:-1;;;;;5227:12:114;;5208:222;;;5369:3;5375:4;5369:10;5356:4;:24;5349:32;;5340:3;5344:1;-1:-1:-1;;;;;5340:6:114;;;;;;;;;:::i;:::-;;;;:41;-1:-1:-1;;;;;5340:41:114;;;;;;;;-1:-1:-1;5413:1:114;5406:8;;;;;;;5241:3;;5208:222;;;;5518:4;5497:25;;:3;5512:1;5501:8;:12;-1:-1:-1;;;;;5497:17:114;;;;;;;;;:::i;:::-;;;;:25;;;;;-1:-1:-1;;;;;;5497:25:114;;;;;;;;;4764:770;;4655:886;;;;:::o;8638:859::-;8912:12;8942:29;8986:7;:14;-1:-1:-1;;;;;8974:27:114;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8942:59:114;-1:-1:-1;9017:7:114;9012:167;9035:7;:14;9030:2;:19;9012:167;;;9073:39;9090:7;9098:2;9090:11;;;;;;;;:::i;:::-;;;;;;;9103:4;9108:2;9103:8;;;;;;;;:::i;:::-;;;;;;;9073:16;:39::i;:::-;;9148:19;9155:7;9163:2;9155:11;;;;;;;;:::i;:::-;;;;;;;9148:6;:19::i;:::-;9127:14;9142:2;9127:18;;;;;;;;:::i;:::-;;;;;;;;;;:40;9051:5;;9012:167;;;;9227:35;9247:14;9227:19;:35::i;:::-;9291:30;;9277:60;;-1:-1:-1;;;9277:6:114;:60::i;:::-;9352:23;9390:55;9404:18;:25;9439:4;9432:12;;9390:6;:55::i;:::-;9460:18;9196:293;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;9189:300;;;8638:859;;;;;;;:::o;11029:486::-;11114:12;11182:47;11196:3;:17;;;11223:4;11216:12;;11182:6;:47::i;:::-;11258:16;;11244:46;;11251:24;;-1:-1:-1;;;11244:6:114;:46::i;:::-;11319:24;;;;11305:54;;-1:-1:-1;;;11305:6:114;:54::i;:::-;11388:26;;;;11374:56;;11381:34;;-1:-1:-1;;;11374:6:114;:56::i;:::-;11459:21;;;;11445:51;;-1:-1:-1;;;11445:6:114;:51::i;:::-;11151:356;;;;;;;;;;;;:::i;10244:589::-;10333:21;10422:43;10436:6;:13;;;10429:21;;;;;;;;:::i;:::-;-1:-1:-1;;;10422:6:114;:43::i;:::-;10505:1;10480:6;:15;;;:22;:26;:206;;10677:9;;;;;;;;;;;;10480:206;;;10579:15;;;;:22;10565:52;;-1:-1:-1;;;10565:6:114;:52::i;:::-;10640:15;;;;;10526:148;;;;;;;:::i;:::-;;;;;;;;;;;;;10480:206;10391:306;;;;;;;;;:::i;:::-;;;;;;;;;;;;;10380:317;;10746:45;10760:8;:15;10785:4;10778:12;;10746:6;:45::i;:::-;10806:8;10715:110;;;;;;;;;:::i;7781:845::-;8037:12;8067:29;8111:10;:17;-1:-1:-1;;;;;8099:30:114;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8067:62;;8145:7;8140:168;8159:10;:17;8154:2;:22;8140:168;;;8200:38;8217:10;8228:2;8217:14;;;;;;;;:::i;:::-;;;;;;;8233:4;;8200:38;;;;;:::i;:::-;;8274:22;8281:10;8292:2;8281:14;;;;;;;;:::i;8274:22::-;8253:14;8268:2;8253:18;;;;;;;;:::i;:::-;;;;;;;;;;:43;8178:5;;8140:168;;;;8356:35;8376:14;8356:19;:35::i;:::-;8420:30;;8406:60;;-1:-1:-1;;;8406:6:114;:60::i;:::-;8481:23;8519:55;8533:18;:25;8568:4;8561:12;;8519:6;:55::i;:::-;8589:18;8325:293;;;;;;;;;;;;:::i;17190:1129::-;17373:37;17355:14;;:55;;;;;;;;:::i;:::-;;:142;;;-1:-1:-1;17454:43:114;17436:14;;:61;;;;;;;;:::i;:::-;;17355:142;:215;;;-1:-1:-1;17540:30:114;17522:14;;:48;;;;;;;;:::i;:::-;;17355:215;:302;;;-1:-1:-1;17613:44:114;17595:14;;:62;;;;;;;;:::i;:::-;;17355:302;:384;;;-1:-1:-1;17700:39:114;17682:14;;:57;;;;;;;;:::i;:::-;;17355:384;17331:519;;17818:14;;17812:21;;;;;;;;:::i;:::-;17782:52;;-1:-1:-1;;;17782:52:114;;31383:4:136;31371:17;;;17782:52:114;;;31353:36:136;31326:18;;17782:52:114;31211:184:136;17331:519:114;17869:7;17864:118;17887:7;:15;;;:22;17882:2;:27;17864:118;;;17937:29;17946:7;:15;;;17962:2;17946:19;;;;;;;;:::i;:::-;;;;;;;17937:8;:29::i;:::-;17911:5;;17864:118;;;;17190:1129;:::o;12140:565::-;12294:12;12324:27;12354:26;12375:4;12354:20;:26::i;:::-;12324:56;;12391:273;2152:11:118;;:16;;:23;2130:18;;;;;:45;;12391:273:114;;1121:1:118;12430:46:114;;:4;:14;;;:46;;;12426:227;;12497:33;12519:4;12525;12497:21;:33::i;:::-;12556:13;:4;:11;:13::i;:::-;12549:20;;12391:273;;12426:227;12617:20;:11;:4;:9;:11::i;12391:273::-;12681:11;:16;;12140:565;-1:-1:-1;;;12140:565:114:o;19347:261::-;19448:21;19494:106;19541:28;19562:6;19541:20;:28::i;:::-;19584:5;19494:32;:106::i;5552:2221::-;5644:12;5674:27;5704:43;5718:6;:13;;;5711:21;;;;;;;;:::i;5704:43::-;5674:73;;5758:24;5824:1;5803:6;:10;;;5797:24;:28;5793:215;;;5911:10;;;;5905:24;5891:54;;-1:-1:-1;;;5891:6:114;:54::i;:::-;5970:6;:10;;;5856:140;;;;;;;;;:::i;:::-;;;;;;;;;;;;;5842:154;;5793:215;6060:18;;;;:25;6018:27;;6060:29;6056:221;;6172:18;;;;:25;6158:55;;-1:-1:-1;;;6158:6:114;:55::i;:::-;6232:6;:18;;;6123:142;;;;;;;;;:::i;:::-;;;;;;;;;;;;;6106:159;;6056:221;6333:11;;;;6327:25;6287;;6327:29;6323:219;;6443:11;;;;6437:25;6423:55;;-1:-1:-1;;;6423:6:114;:55::i;:::-;6503:6;:11;;;6388:142;;;;;;;;;:::i;:::-;;;;;;;;;;;;;6373:157;;6323:219;6595:14;;;;:21;6552:28;;6595:25;6591:698;;6642:8;6637:641;6662:6;:14;;;:21;6656:3;:27;6637:641;;;6712:21;6775:66;6795:6;:14;;;6810:3;6795:19;;;;;;;;:::i;:::-;;;;;;;6815:1;6795:22;;;;;;;:::i;:::-;;;;;6789:36;-1:-1:-1;;;6775:6:114;:66::i;:::-;6870:6;:14;;;6885:3;6870:19;;;;;;;;:::i;:::-;;;;;;;6890:1;6870:22;;;;;;;:::i;:::-;;;;;6916:66;6936:6;:14;;;6951:3;6936:19;;;;;;;;:::i;:::-;;;;;;;6956:1;6936:22;;;;;;;:::i;:::-;;;;;6930:36;-1:-1:-1;;;6916:6:114;:66::i;:::-;7011:6;:14;;;7026:3;7011:19;;;;;;;;:::i;:::-;;;;;;;7031:1;7011:22;;;;;;;:::i;:::-;;;;;6736:317;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;6712:341;;7129:15;7167:45;7181:8;:15;7206:4;7199:12;;7167:6;:45::i;:::-;7235:8;7090:172;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;7090:172:114;;;;;;;;;;-1:-1:-1;;6685:6:114;;6637:641;;;;6591:698;7299:15;7491;:22;7452:12;:19;7411:14;:21;7373:11;:18;7332:14;:21;:59;;;;:::i;:::-;:100;;;;:::i;:::-;:139;;;;:::i;:::-;:181;;;;:::i;:::-;7299:225;-1:-1:-1;7573:40:114;7299:225;-1:-1:-1;;;7573:6:114;:40::i;:::-;7628:14;7657:11;7683:14;7712:12;7739:15;7542:223;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;7535:230;;;;;;;;5552:2221;;;:::o;2006:387::-;2072:6;2104:29;2095:5;:38;;;;;;;;:::i;:::-;;:91;;;-1:-1:-1;2159:27:114;2150:5;:36;;;;;;;;:::i;:::-;;2095:91;2091:295;;;-1:-1:-1;2220:1:114;;2006:387;-1:-1:-1;2006:387:114:o;2091:295::-;2252:26;2243:5;:35;;;;;;;;:::i;:::-;;2239:147;;-1:-1:-1;2302:1:114;;2006:387;-1:-1:-1;2006:387:114:o;2239:147::-;-1:-1:-1;2372:1:114;;2006:387;-1:-1:-1;2006:387:114:o;2239:147::-;2006:387;;;:::o;2488:204:118:-;2563:11;;:::i;:::-;2622:32;;;;;;;;;;;;2586:33;2622:32;;;;2668:18;2622:32;2668:10;:18::i;:::-;2661:25;2488:204;-1:-1:-1;;;2488:204:118:o;19878:754:114:-;20071:8;;;;20104:11;;:18;;;-1:-1:-1;;;;;20056:23:114;;;;:12;20161:17;20071:4;20161:15;:17::i;:::-;20133:46;;20191:19;20212:18;20234:48;20255:6;20263:8;20273;20234:20;:48::i;:::-;20190:92;;-1:-1:-1;20190:92:114;-1:-1:-1;20297:17:114;;20293:332;;20331:26;20360:22;20374:6;20360;:22::i;:::-;20331:51;-1:-1:-1;20418:16:114;20427:7;20418:6;:16;:::i;:::-;20397:11;;:18;;:37;20486:13;;20449:107;;20486:23;;20502:7;;20486:23;:::i;:::-;20449:11;;;20528:13;20449:18;:107::i;:::-;20593:20;;20571:11;;:18;;:42;;;;20593:20;;20571:42;:::i;:::-;;;-1:-1:-1;;20293:332:114;20045:587;;;;;19878:754;;;:::o;4400:208:118:-;4471:22;;:::i;:::-;2152:11;;:16;;:23;2130:18;;;;;:45;;4505:98;;4549:11;;4538:23;;:10;:23::i;4505:98::-;-1:-1:-1;4591:4:118;4400:208::o;4614:1135::-;4683:22;;:::i;:::-;4729:14;;;;:32;;;;:86;;-1:-1:-1;4774:14:118;;;;:41;;1022:1;4774:41;4729:86;:263;;;-1:-1:-1;4841:14:118;;;;:41;;1320:1;4841:41;:91;;;;;4930:2;4900:4;:26;;;:32;;;;4841:91;:140;;;;;4979:2;4949:4;:26;;;:32;;;;4841:140;4717:1009;;;5031:17;:4;:15;:17::i;:::-;-1:-1:-1;;;;;5009:39:118;:4;:11;;;:18;;:39;;;;;;;:::i;:::-;;;-1:-1:-1;;4591:4:118;4400:208::o;4717:1009::-;5076:14;;;;:35;;1121:1;5076:35;;:84;;-1:-1:-1;5126:14:118;;;;:34;;1071:1;5126:34;5076:84;5062:664;;;5177:10;5190:51;5201:4;:11;;;5214:4;:26;;;5190:10;:51::i;:::-;5177:64;;5272:3;-1:-1:-1;;;;;5250:25:118;:4;:11;;;:18;;:25;;;;;;;:::i;:::-;;;-1:-1:-1;5062:664:118;;-1:-1:-1;5062:664:118;;5301:14;;;;:34;;1170:1;5301:34;;:79;;-1:-1:-1;5348:14:118;;;;:32;;1217:1;5348:32;5301:79;5289:437;;;5409:51;5420:4;:11;;;5433:4;:26;;;5409:10;:51::i;:::-;-1:-1:-1;;;;;5398:62:118;:8;;;:62;-1:-1:-1;4591:4:118;4400:208::o;5289:437::-;5493:14;;;;:41;;1320:1;5493:41;;;:159;;;5560:4;:26;;;:32;;5590:2;5560:32;;:81;;;;;5609:4;:26;;;:32;;5639:2;5609:32;;5560:81;5480:246;;;5669:49;;-1:-1:-1;;;5669:49:118;;34108:2:136;5669:49:118;;;34090:21:136;34147:2;34127:18;;;34120:30;34186:34;34166:18;;;34159:62;-1:-1:-1;;;34237:18:136;;;34230:37;34284:19;;5669:49:118;33906:403:136;24402:249:117;24513:13;24539:25;24570:41;24584:5;24592:8;24602;24570:7;:41::i;:::-;-1:-1:-1;24538:73:117;24402:249;-1:-1:-1;;;;;24402:249:117:o;23812:217::-;23905:13;23931:25;23962:27;23976:5;23984:4;23962:7;:27::i;:::-;-1:-1:-1;23930:59:117;23812:217;-1:-1:-1;;;;23812:217:117:o;1231:1412::-;1490:4;1484:11;1584:2;1572:15;;1353:23;1625:1;1610:814;1634:6;:13;1628:2;:19;1610:814;;1855:2;1847:11;;;1835:24;;1829:31;1921:13;;1829:31;;2004:15;;2040:99;2059:18;2004:15;1921:13;2040:6;:99::i;:::-;-1:-1:-1;2367:37:117;;;;2251:36;;;;;-1:-1:-1;1649:5:117;;1610:814;;;;2500:17;2492:6;2485:33;2617:2;2598:17;2594:26;2587:4;2581:11;2577:44;2571:4;2564:58;2441:190;;1231:1412;;;:::o;20640:710:114:-;20803:8;;;;20836:11;;:18;;;-1:-1:-1;;;;;20788:23:114;;;;:12;20893:17;20803:4;20893:15;:17::i;:::-;20865:46;;20923:19;20944:18;20966:34;20987:6;20995:4;20966:20;:34::i;:::-;20922:78;;-1:-1:-1;20922:78:114;-1:-1:-1;21015:17:114;;21011:332;;21049:26;21078:22;21092:6;21078;:22::i;:::-;21049:51;-1:-1:-1;21136:16:114;21145:7;21136:6;:16;:::i;:::-;21115:11;;:18;;:37;21204:13;;21167:107;;21204:23;;21220:7;;21204:23;:::i;:::-;21167:11;;;21246:13;21167:18;:107::i;:::-;21311:20;;21289:11;;:18;;:42;;;;21311:20;;21289:42;:::i;:::-;;;-1:-1:-1;;21011:332:114;20777:573;;;;;20640:710;;:::o;21362:1464::-;21484:21;1170:1:118;21527:45:114;;:4;:14;;;:45;;;21523:1296;;21589:30;21622:16;:4;:14;:16::i;:::-;21589:49;;21672:1;21657:5;:12;:16;21653:319;;;21701:4;:164;;21802:63;21835:5;21856:1;21841:5;:12;:16;;;;:::i;:::-;21835:23;;;;;;;;:::i;:::-;;;;;;;21860:4;21802:32;:63::i;:::-;21701:164;;;21729:49;21762:5;21768:1;21762:8;;;;;;;;:::i;:::-;;;;;;;21772:5;21729:32;:49::i;:::-;21694:171;;;;;21653:319;21931:25;21924:32;;;;;21523:1296;21993:14;;;;:43;;21989:830;;22079:11;;:18;;;22065:11;22126:15;22079:4;22126:13;:15::i;:::-;-1:-1:-1;;;;;22112:29:114;;;22156:14;22183:33;;;;;;;;;;;;;;;;;:40;22174:6;:49;:141;;22273:33;;;;;;;;;;;;;;;;;22307:6;22273:41;;;;;;;;:::i;:::-;;;;;;;22174:141;;;22243:4;22174:141;22156:174;-1:-1:-1;22366:31:114;22349:49;;;;22345:248;;;22477:11;;:16;22426:151;;-1:-1:-1;;;22426:151:114;;;;22477:16;22516:6;;22551;;22426:151;;;:::i;22345:248::-;22636:8;22614:31;;;;;;;;;;:::i;:::-;22607:38;;;;;;;21989:830;22778:14;;;;;22685:122;;-1:-1:-1;;;22685:122:114;;966:1:118;22685:122:114;;;34855:36:136;34885:4;34927:17;;;34907:18;;;34900:45;34828:18;;22685:122:114;34685:266:136;3010:1033:118;3120:11;;:::i;:::-;1949;;:18;3098:6;;1949:11;:23;1945:79;;1990:26;;-1:-1:-1;;;1990:26:118;;;;;;;;;;;1945:79;3143:17:::1;3185:3;3143:17:::0;-1:-1:-1;;;;;3143:17:118;3293:4:::1;3304:492;3311:8;3304:492;;;3401:18;:6;:16;:18::i;:::-;3387:32:::0;-1:-1:-1;3428:6:118;::::1;::::0;::::1;:::i;:::-;3455:16:::0;3470:1:::1;3455:16:::0;;;;;-1:-1:-1;3518:4:118::1;3504:18:::0;::::1;::::0;-1:-1:-1;3428:6:118;-1:-1:-1;;;;3569:27:118;;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:118::1;3304:492;;;1320:1;3806:35;::::0;::::1;;3802:96;;;3859:31;::::0;-1:-1:-1;;;3859:31:118;;31383:4:136;31371:17;;3859:31:118::1;::::0;::::1;31353:36:136::0;31326:18;;3859:31:118::1;31211:184:136::0;3802:96:118::1;-1:-1:-1::0;3911:126:118::1;::::0;;::::1;::::0;::::1;::::0;;;;;::::1;::::0;;::::1;;::::0;::::1;::::0;;;::::1;::::0;;;;;;;;::::1;::::0;;;;-1:-1:-1;;;;;3911:126:118;;::::1;::::0;;;;::::1;::::0;;;;-1:-1:-1;3911:126:118;;3010:1033;-1:-1:-1;3010:1033:118:o;16224:702::-;16337:18;16298:4;1121:1;1787:8;1769:26;;:4;:14;;;:26;;;1765:101;;1833:14;;;;;1813:45;;-1:-1:-1;;;1813:45:118;;34885:4:136;34873:17;;;1813:45:118;;;34855:36:136;34927:17;;;34907:18;;;34900:45;34828:18;;1813:45:118;34685:266:136;1765:101:118;16378:51:::1;16389:4;:11;;;16402:4;:26;;;16378:10;:51::i;:::-;-1:-1:-1::0;;;;;16367:62:118::1;:8;::::0;::::1;:62:::0;;;-1:-1:-1;;16440:22:118;16436:485:::1;;16473:10;16492:354;16500:5;16492:354;;16518:13;16534:89;16574:4;:11;;;16598:4;:14;;;16534:27;:89::i;:::-;16518:105:::0;-1:-1:-1;;;;;;16638:19:118;;::::1;;16634:203;;;16717:4:::0;16736:32:::1;16757:10;16766:1;16757:6:::0;:10:::1;:::i;:::-;16736:11:::0;;;:20:::1;:32::i;:::-;16686:95;;;;;;;;;:::i;:::-;;;;;;;;;;;;;16672:110;;16634:203;;;16821:4;16813:12;;16634:203;16507:339;16492:354;;;16464:389;16436:485;;;16903:8;::::0;::::1;::::0;16882:11;;:30:::1;::::0;:20:::1;:30::i;:::-;16868:45;;16436:485;16224:702:::0;;;;;:::o;21117:2345:117:-;21227:19;21248:9;21269:7;21279:1;21269:11;;21282:8;21293:1;21282:12;;21301:16;21324:17;21348;21372:18;21398:19;21424:20;21472:1;21457:5;:12;:16;21453:56;;;21492:5;21499:1;21484:17;;;;;;;;;;;;;;21453:56;21603:2;21596:5;21592:14;21576:30;;21665:4;21659:11;21649:21;;21745:2;21737:6;21733:15;21716:32;;21834:2;21824:8;21820:17;21801:36;;21910:8;21904:15;21886:33;;21962:11;21991:1;21976:5;:12;:16;21962:30;;22001:971;22013:6;22008:2;:11;22001:971;;;-1:-1:-1;;;;;;;;22050:25:117;;:5;22056:2;22050:9;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;22050:9:117;:25;:71;;;;;-1:-1:-1;;;;;;;;22092:29:117;;:5;22098:2;22103:1;22098:6;22092:13;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;22092:13:117;:29;22050:71;:116;;;;;-1:-1:-1;;;;;;;;22138:28:117;;:5;22144:2;22149:1;22144:6;22138:13;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;22138:13:117;:28;;22050:116;:161;;;;;-1:-1:-1;;;;;;;;22183:28:117;;:5;22189:2;22194:1;22189:6;22183:13;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;22183:13:117;:28;;22050:161;:231;;;;;22273:8;22228:53;;-1:-1:-1;;;22251:18:117;;22234:5;22240:2;22245:1;22240:6;22234:13;;;;;;;;:::i;:::-;;;;;;;22228:41;:20;:53;;22050:231;22034:929;;;22326:3;22321:2;:8;22306:24;;22352:3;22347:2;:8;22343:292;;;22372:108;22395:13;22425:12;22454:11;22372:6;:108::i;:::-;22495:31;;;22525:1;22495:31;;22541:28;;;;22343:292;;;22620:1;22604:17;;;;22343:292;22647:106;22668:13;22696:15;22726:14;22647:6;:106::i;:::-;22908:7;;;;;22873:1;22867:7;;;;;;;-1:-1:-1;22782:28:117;;;22766:44;;;;;22823:31;;;;22001:971;;22034:929;22946:5;;;;;22001:971;;;-1:-1:-1;22985:12:117;;;-1:-1:-1;23019:16:117;;23015:442;;23055:3;23050:2;:8;23046:162;;;23072:89;23091:13;23117:12;23142:8;23147:3;23142:2;:8;:::i;:::-;23072:6;:89::i;:::-;23189:8;23194:3;23189:2;:8;:::i;:::-;23172:26;;;;:::i;:::-;;;23046:162;23287:12;23279:6;23272:28;23391:2;23377:12;23373:21;23366:4;23360:11;23356:39;23350:4;23343:53;23015:442;;;23440:5;23447:1;23432:17;;;;;;;;;;;;;;23015:442;21262:2200;;;;;;;;21117:2345;;;;;;;:::o;2843:509::-;3020:13;;;;2999:11;;:18;2991:6;;2999:34;;;:::i;:::-;:38;;3036:1;2999:38;:::i;:::-;1012:6;1004:5;:14;1000:75;;;1036:31;;-1:-1:-1;;;1036:31:117;;;;;35751:25:136;;;35792:18;;;35785:34;;;35724:18;;1036:31:117;35577:248:136;1000:75:117;3072:14:::1;::::0;;3084:1:::1;3072:14:::0;;;;;::::1;::::0;;;3049:20:::1;::::0;3072:14:::1;;;;;;;;;;;;;;;;;;;;3049:37;;3104:58;3117:6;3132:1;3142:6;:13;;;3104:4;:58::i;:::-;3093:5;3099:1;3093:8;;;;;;;;:::i;:::-;;;;;;:69;;;;3180:5;3169;3175:1;3169:8;;;;;;;;:::i;:::-;;;;;;:16;;;;3203:109;3216:6;3247;3231;:13;;;:22;;;;:::i;:::-;3283:13;::::0;::::1;::::0;3262:11;;:18;3299:6;;3262:34:::1;::::0;::::1;:::i;:::-;:43;;;;:::i;:::-;3203:4;:109::i;:::-;3192:5;3198:1;3192:8;;;;;;;;:::i;:::-;;;;;;:120;;;;3333:13;3340:5;3333:6;:13::i;:::-;3319:27:::0;;;-1:-1:-1;;;;;2843:509:117:o;5755:348:118:-;5826:6;5877:2;5848:4;:26;;;:31;;;5844:254;;;-1:-1:-1;5897:1:118;;5755:348;-1:-1:-1;5755:348:118:o;5844:254::-;5945:2;5916:4;:26;;;:31;;;5912:186;;;6007:2;5978:4;:26;;;:31;;;;:::i;:::-;5972:38;;:1;:38;;5958:53;;5755:348;;;:::o;5912:186::-;6063:26;;;;6041:49;;-1:-1:-1;;;6041:49:118;;31383:4:136;31371:17;;;6041:49:118;;;31353:36:136;31326:18;;6041:49:118;31211:184:136;8833:697:118;8972:6;9018:2;8994:21;:26;;;8990:77;;;-1:-1:-1;9031:28:118;;;;;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;9318:76::-;9404:21;:27;;9429:2;9404:27;9400:67;;-1:-1:-1;;;;;;9442:17:118;;9400:67;9480:44;;-1:-1:-1;;;9480:44:118;;31383:4:136;31371:17;;9480:44:118;;;31353:36:136;31326:18;;9480:44:118;31211:184:136;18221:2467:117;18313:19;18334:9;18355:7;18365:1;18355:11;;18368:8;18379:1;18368:12;;18387:16;18410:17;18434;18458:18;18487:11;18505:17;18529:18;18575:1;18560:5;:12;:16;18556:56;;;18595:5;18602:1;18587:17;;;;;;;;;;;;;;;18556:56;18768:4;18762:11;18908:12;;18762:11;;-1:-1:-1;18706:2:117;18695:14;;;;-1:-1:-1;18836:15:117;;;-1:-1:-1;;;18908:16:117;18933:1265;18945:6;18940:2;:11;18933:1265;;;-1:-1:-1;;;;;;;;18982:25:117;;:5;18988:2;18982:9;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;18982:9:117;:25;:71;;;;;-1:-1:-1;;;;;;;;19024:29:117;;:5;19030:2;19035:1;19030:6;19024:13;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;19024:13:117;:29;18982:71;:116;;;;;-1:-1:-1;;;;;;;;19070:28:117;;:5;19076:2;19081:1;19076:6;19070:13;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;19070:13:117;:28;;18982:116;:161;;;;;-1:-1:-1;;;;;;;;19115:28:117;;:5;19121:2;19126:1;19121:6;19115:13;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;19115:13:117;:28;;18982:161;18966:1223;;;19188:3;19183:2;:8;19168:24;;19214:3;19209:2;:8;19205:292;;;19234:108;19257:13;19287:12;19316:11;19234:6;:108::i;:::-;19357:31;;;19387:1;19357:31;;19403:28;;;;19205:292;;;19482:1;19466:17;;;;19205:292;19509:7;-1:-1:-1;;;19547:18:117;;19530:5;19536:2;19541:1;19536:6;19530:13;;;;;;;;:::i;:::-;;;;;;;;;19524:20;;:41;19519:47;;19509:57;;19589:4;:11;19583:2;:17;19579:91;;19644:11;;19624:32;;-1:-1:-1;;;19624:32:117;;19641:1;19636:6;;19624:32;;;35751:25:136;35792:18;;;35785:34;;;;35724:18;;19624:32:117;35577:248:136;19579:91:117;19748:1;19744:2;19740:10;19736:2;19732:19;19726:4;19722:30;19716:37;19706:47;;19789:6;19783:13;19767:29;;19839:2;19831:6;19827:15;19810:32;;19881:102;19902:13;19930;19958:12;19881:6;:102::i;:::-;-1:-1:-1;20134:7:117;;;;;20099:1;20093:7;;;;;;;-1:-1:-1;20012:26:117;;;19996:42;;;;;20051:29;;;;18933:1265;;18966:1223;20172:5;;;;;18933:1265;;;-1:-1:-1;20211:12:117;;;-1:-1:-1;20245:16:117;;20241:442;;20281:3;20276:2;:8;20272:162;;;20298:89;20317:13;20343:12;20368:8;20373:3;20368:2;:8;:::i;20298:89::-;20415:8;20420:3;20415:2;:8;:::i;:::-;20398:26;;;;:::i;:::-;;;20272:162;20513:12;20505:6;20498:28;20617:2;20603:12;20599:21;20592:4;20586:11;20582:39;20576:4;20569:53;20241:442;;;20666:5;20673:1;20658:17;;;;;;;;;;;;;;;20241:442;18348:2340;;;;;;;;;18221:2467;;;;;;:::o;26496:622::-;26667:147;26681:2;26674:3;:9;26667:147;;26742:10;;26729:24;;26782:2;26774:10;;;;26795:9;;;;-1:-1:-1;;26685:9:117;26667:147;;;26826:7;;26822:284;;26965:10;;27020:11;;26900:2;:8;;;26892:3;:17;-1:-1:-1;;26892:21:117;26977:10;;26961:27;;;27016:23;;27064:21;27051:35;;26822:284;26496:622;;;:::o;6109:1231:118:-;6220:19;6182:4;1170:1;1787:8;1769:26;;:4;:14;;;:26;;;1765:101;;1833:14;;;;;1813:45;;-1:-1:-1;;;1813:45:118;;34885:4:136;34873:17;;;1813:45:118;;;34855:36:136;34927:17;;;34907:18;;;34900:45;34828:18;;1813:45:118;34685:266:136;1765:101:118;6336:10:::1;6349:51;6360:4;:11;;;6373:4;:26;;;6349:10;:51::i;:::-;6336:64:::0;-1:-1:-1;6426:7:118::1;6336:64:::0;6432:1:::1;6426:7;:::i;:::-;-1:-1:-1::0;;;;;6415:19:118::1;-1:-1:-1::0;;;;;6415:19:118::1;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1::0;6407:27:118;-1:-1:-1;6446:7:118::1;6441:739;6464:3;-1:-1:-1::0;;;;;6459:8:118::1;:2;:8;6441:739;;;6536:13;:4;:11;:13::i;:::-;6529:20;;6635:11;:4;:9;:11::i;:::-;6623:5;6629:2;6623:9;;;;;;;;:::i;:::-;;;;;;:23;;;;1170:1;6659:34;;:4;:14;;;:34;;::::0;6655:518:::1;;6706:23;6732:16;:4;:14;:16::i;:::-;6706:42;;6831:9;6860:1;6841:9;:16;:20;;;;:::i;:::-;6831:31;;;;;;;;:::i;:::-;;;;;;;6824:38;;6695:177;6655:518;;;1217:1;6882:32;;:4;:14;;;:32;;::::0;6878:295:::1;;6927:23;6953:14;:4;:12;:14::i;6878:295::-;7152:11;:4;:9;:11::i;:::-;;6878:295;6469:5;;6441:739;;;;7330:4;7317:5;7323:3;-1:-1:-1::0;;;;;7317:10:118::1;;;;;;;;;:::i;:::-;;;;;;:17;;;;6244:1096;6109:1231:::0;;;;;:::o;17873:211::-;17981:6;17945:4;966:1;1787:8;1769:26;;:4;:14;;;:26;;;1765:101;;1833:14;;;;;1813:45;;-1:-1:-1;;;1813:45:118;;34885:4:136;34873:17;;;1813:45:118;;;34855:36:136;34927:17;;;34907:18;;;34900:45;34828:18;;1813:45:118;34685:266:136;1765:101:118;18006:72:::1;18025:4;:11;;;18045:4;:26;;;18006:10;:72::i;13731:315:117:-:0;13857:11;13808:6;:13;;;13823:6;:11;;;:18;1012:6;1004:5;:14;1000:75;;;1036:31;;-1:-1:-1;;;1036:31:117;;;;;35751:25:136;;;35792:18;;;35785:34;;;35724:18;;1036:31:117;35577:248:136;1000:75:117;13900:11;;13932:13:::1;::::0;::::1;::::0;;13985:25;;;13999:1:::1;13985:25:::0;13979:32;;-1:-1:-1;13932:13:117;;;14024:16:::1;13932:13:::0;14024:16:::1;:::i;:::-;;;::::0;::::1;13873:173;;13731:315:::0;;;;;:::o;19017:541:118:-;19159:10;19181:17;19201:18;:6;:16;:18::i;:::-;19181:38;;19230:11;:19;;19245:4;19230:19;19226:59;;-1:-1:-1;;;;;19260:17:118;;;;;19226:59;19297;19316:6;19331:11;19345:4;19331:18;19297:10;:59::i;:::-;19291:65;-1:-1:-1;;;;;;19367:17:118;;;;19363:190;;19402:26;;-1:-1:-1;;;19402:26:118;;-1:-1:-1;;;;;36345:31:136;;19402:26:118;;;36327:50:136;36300:18;;19402:26:118;36182:201:136;19363:190:118;19460:16;19446:31;;19460:16;19475:1;19460:16;;;;19446:31;19442:111;;19495:50;;-1:-1:-1;;;19495:50:118;;19516:16;19531:1;19516:16;;;;19495:50;;;34855:36:136;19516:16:118;34927:17:136;;34907:18;;;34900:45;34828:18;;19495:50:118;34685:266:136;12423:1074:117;12545:17;12591:6;-1:-1:-1;;;;;12581:17:117;-1:-1:-1;;;;;12581:17:117;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12581:17:117;-1:-1:-1;12574:24:117;-1:-1:-1;12629:12:117;12624:764;12655:6;-1:-1:-1;;;;;12647:14:117;:5;-1:-1:-1;;;;;12647:14:117;;12624:764;;;12684:10;12697:17;12707:6;12697:9;:17::i;:::-;12684:30;-1:-1:-1;12736:4:117;12729:11;;:16;12725:617;;12771:4;12764;:11;;;12760:571;;;12836:17;12846:6;12836:9;:17::i;:::-;12856:4;12836:24;12816:1;12800:4;12807;12800:11;12799:18;;;;:62;12792:69;;12886:1;12876:11;;;;12760:571;;;12918:4;12911;:11;;;12907:424;;;13034:17;13044:6;13034:9;:17::i;:::-;13054:4;13034:24;13014:1;12985:17;12995:6;12985:9;:17::i;:::-;13005:4;12985:24;12984:31;;;;12964:2;12948:4;12955;12948:11;12947:19;;;;:68;:112;12939:120;;13084:1;13074:11;;;;12907:424;;;13266:17;13276:6;13266:9;:17::i;:::-;13286:4;13266:24;13244:1;13215:17;13225:6;13215:9;:17::i;:::-;13235:4;13215:24;13214:31;;13194:2;13165:17;13175:6;13165:9;:17::i;:::-;13185:4;13165:24;13164:32;;;;13144:2;13128:4;13135;13128:11;13127:19;;;;:69;:118;:164;13120:171;;13316:1;13306:11;;;;12907:424;13373:4;13366:12;;13352:4;13357:5;-1:-1:-1;;;;;13352:11:117;;;;;;;;;:::i;:::-;;;;:26;-1:-1:-1;;;;;13352:26:117;;;;;;;;-1:-1:-1;;12663:8:117;;12624:764;;;-1:-1:-1;13456:20:117;;;13463:4;12423:1074;-1:-1:-1;12423:1074:117:o;3828:572::-;4018:12;3967:15;3976:6;3967;:15;:::i;:::-;3984:11;;:18;1004:14;;;1000:75;;;1036:31;;-1:-1:-1;;;1036:31:117;;;;;35751:25:136;;;35792:18;;;35785:34;;;35724:18;;1036:31:117;35577:248:136;1000:75:117;4062:11;;4042:17:::1;4111:6:::0;-1:-1:-1;;;;;4101:17:117;::::1;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;4101:17:117::1;-1:-1:-1::0;4080:38:117;-1:-1:-1;4231:2:117::1;4220:14:::0;;::::1;::::0;4259:26;;;;4298:77:::1;4220:14:::0;4259:26;4362:6;4298::::1;:77::i;:::-;-1:-1:-1::0;4389:5:117;;3828:572;-1:-1:-1;;;;;;;;3828:572:117: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:117;;;;;35751:25:136;;;35792:18;;;35785:34;;;35724:18;;1036:31:117;35577:248:136;1000:75:117;14463:11;;14495:13:::1;::::0;::::1;::::0;;14562:1:::1;14548:25:::0;;;;;14542:32;;-1:-1:-1;14495:13:117;;14587:18:::1;14562:1:::0;14495:13;14587:18:::1;:::i;:::-;::::0;;-1:-1:-1;14288:323:117;;;-1:-1:-1;;;;;14288:323:117: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:117;;;;;35751:25:136;;;35792:18;;;35785:34;;;35724:18;;1036:31:117;35577:248:136;1000:75:117;15028:11;;15060:13:::1;::::0;::::1;::::0;;15127:1:::1;15113:25:::0;;;;;15107:32;;-1:-1:-1;15060:13:117;;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:117;;;;;35751:25:136;;;35792:18;;;35785:34;;;35724:18;;1036:31:117;35577:248:136;1000:75:117;15593:11;;15625:13:::1;::::0;::::1;::::0;;15692:1:::1;15678:25:::0;;;;;15672:32;;-1:-1:-1;15625:13:117;;15717:18:::1;15692:1:::0;15625:13;15717:18:::1;:::i;4049:345:118:-:0;4125:22;;:::i;:::-;4166:222;;;;;;;;;4188:11;;-1:-1:-1;;;;;;;;;;;;;;2776:55:117;;;;;;;;2791:11;;2776:55;;-1:-1:-1;2811:13:117;;;;2776:55;;;;4166:222:118;;;;;;;4228:4;:16;;;4166:222;;;;;;4264:4;:14;;;4166:222;;;;;;4310:4;:26;;;4166:222;;;;;;4350:4;:8;;;-1:-1:-1;;;;;4166:222:118;;;;;4372:4;:8;;;-1:-1:-1;;;;;4166:222:118;;;;4159:229;;4049:345;;;:::o;7346:1309::-;7453:19;7417:4;1217:1;1787:8;1769:26;;:4;:14;;;:26;;;1765:101;;1833:14;;;;;1813:45;;-1:-1:-1;;;1813:45:118;;34885:4:136;34873:17;;;1813:45:118;;;34855:36:136;34927:17;;;34907:18;;;34900:45;34828:18;;1813:45:118;34685:266:136;1765:101:118;7585:10:::1;7598:51;7609:4;:11;;;7622:4;:26;;;7598:10;:51::i;:::-;:55;::::0;7652:1:::1;7598:55;:::i;:::-;7585:68:::0;-1:-1:-1;7679:7:118::1;7585:68:::0;7685:1:::1;7679:7;:::i;:::-;-1:-1:-1::0;;;;;7668:19:118::1;-1:-1:-1::0;;;;;7668:19:118::1;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1::0;7660:27:118;-1:-1:-1;7699:7:118::1;7694:801;7717:3;-1:-1:-1::0;;;;;7712:8:118::1;:2;:8;7694:801;;;7789:13;:4;:11;:13::i;:::-;7782:20;;7888:11;:4;:9;:11::i;:::-;7876:5;7882:2;7876:9;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;:23;7912:6:::1;7917:1;7912:2:::0;:6:::1;:::i;:::-;:11:::0;:50;::::1;;;-1:-1:-1::0;7927:14:118::1;::::0;::::1;::::0;:35:::1;;1121:1;7927:35;;7912:50;7908:580;;;8002:14;::::0;;::::1;::::0;7982:54;;-1:-1:-1;;;7982:54:118;;34885:4:136;34873:17;;;7982:54:118::1;::::0;::::1;34855:36:136::0;1121:1:118::1;34907:18:136::0;;;34900:45;34828:18;;7982:54:118::1;34685:266:136::0;7908:580:118::1;8056:14;::::0;::::1;::::0;:34:::1;;1170:1;8056:34;::::0;:70:::1;;-1:-1:-1::0;8094:14:118::1;::::0;::::1;::::0;:32:::1;;1217:1;8094:32;8056:70;8052:436;;;8166:14;::::0;::::1;::::0;8139:23:::1;::::0;8166:34:::1;;1170:1;8166:34;:96;;8248:14;:4;:12;:14::i;:::-;8166:96;;;8216:16;:4;:14;:16::i;:::-;8139:134;;8363:9;8392:1;8373:9;:16;:20;;;;:::i;:::-;8363:31;;;;;;;;:::i;:::-;;;;;;;8356:38;;8128:276;8052:436;;;8467:11;:4;:9;:11::i;:::-;;8052:436;7722:5;;7694:801;;-1:-1:-1::0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:156:136:-;94:20;;143:2;133:13;;123:41;;160:1;157;150:12;175:159;242:20;;302:6;291:18;;281:29;;271:57;;324:1;321;314:12;339:290;426:6;434;487:2;475:9;466:7;462:23;458:32;455:52;;;503:1;500;493:12;455:52;526:41;557:9;526:41;:::i;:::-;516:51;;586:37;619:2;608:9;604:18;586:37;:::i;:::-;576:47;;339:290;;;;;:::o;835:127::-;896:10;891:3;887:20;884:1;877:31;927:4;924:1;917:15;951:4;948:1;941:15;967:257;1039:4;1033:11;;;1071:17;;-1:-1:-1;;;;;1103:34:136;;1139:22;;;1100:62;1097:88;;;1165:18;;:::i;:::-;1201:4;1194:24;967:257;:::o;1229:253::-;1301:2;1295:9;1343:4;1331:17;;-1:-1:-1;;;;;1363:34:136;;1399:22;;;1360:62;1357:88;;;1425:18;;:::i;1487:275::-;1558:2;1552:9;1623:2;1604:13;;-1:-1:-1;;1600:27:136;1588:40;;-1:-1:-1;;;;;1643:34:136;;1679:22;;;1640:62;1637:88;;;1705:18;;:::i;:::-;1741:2;1734:22;1487:275;;-1:-1:-1;1487:275:136:o;1767:629::-;1809:5;1862:3;1855:4;1847:6;1843:17;1839:27;1829:55;;1880:1;1877;1870:12;1829:55;1920:6;1907:20;1959:4;1951:6;1947:17;1988:1;2010;-1:-1:-1;;;;;2026:6:136;2023:30;2020:56;;;2056:18;;:::i;:::-;-1:-1:-1;2122:2:136;2101:15;;-1:-1:-1;;2097:29:136;2128:4;2093:40;2153:21;2093:40;2153:21;:::i;:::-;2142:32;;;2199:6;2190:7;2183:23;2239:3;2230:6;2225:3;2221:16;2218:25;2215:45;;;2256:1;2253;2246:12;2215:45;2307:6;2302:3;2295:4;2286:7;2282:18;2269:45;2363:1;2334:20;;;2356:4;2330:31;2323:42;;;;-1:-1:-1;2338:7:136;1767:629;-1:-1:-1;;;1767:629:136:o;2401:320::-;2469:6;2522:2;2510:9;2501:7;2497:23;2493:32;2490:52;;;2538:1;2535;2528:12;2490:52;2578:9;2565:23;-1:-1:-1;;;;;2603:6:136;2600:30;2597:50;;;2643:1;2640;2633:12;2597:50;2666:49;2707:7;2698:6;2687:9;2683:22;2666:49;:::i;:::-;2656:59;2401:320;-1:-1:-1;;;;2401:320:136:o;2726:288::-;2767:3;2805:5;2799:12;2832:6;2827:3;2820:19;2888:6;2881:4;2874:5;2870:16;2863:4;2858:3;2854:14;2848:47;2940:1;2933:4;2924:6;2919:3;2915:16;2911:27;2904:38;3003:4;2996:2;2992:7;2987:2;2979:6;2975:15;2971:29;2966:3;2962:39;2958:50;2951:57;;;2726:288;;;;:::o;3019:225::-;3174:2;3163:9;3156:21;3137:4;3194:44;3234:2;3223:9;3219:18;3211:6;3194:44;:::i;3249:160::-;3333:20;;3382:2;3372:13;;3362:41;;3399:1;3396;3389:12;3414:194;3485:4;-1:-1:-1;;;;;3510:6:136;3507:30;3504:56;;;3540:18;;:::i;:::-;-1:-1:-1;3585:1:136;3581:14;3597:4;3577:25;;3414:194::o;3613:496::-;3671:5;3719:4;3707:9;3702:3;3698:19;3694:30;3691:50;;;3737:1;3734;3727:12;3691:50;3759:22;;:::i;:::-;3750:31;;3818:9;3805:23;3859:2;3850:7;3847:15;3837:43;;3876:1;3873;3866:12;3837:43;3889:22;;3962:2;3947:18;;3934:32;-1:-1:-1;;;;;3978:30:136;;3975:50;;;4021:1;4018;4011:12;3975:50;4057:45;4098:3;4089:6;4078:9;4074:22;4057:45;:::i;:::-;4052:2;4045:5;4041:14;4034:69;;3613:496;;;;:::o;4114:1419::-;4204:6;4257:2;4245:9;4236:7;4232:23;4228:32;4225:52;;;4273:1;4270;4263:12;4225:52;4313:9;4300:23;-1:-1:-1;;;;;4338:6:136;4335:30;4332:50;;;4378:1;4375;4368:12;4332:50;4401:22;;4457:4;4439:16;;;4435:27;4432:47;;;4475:1;4472;4465:12;4432:47;4501:22;;:::i;:::-;4546:38;4581:2;4546:38;:::i;:::-;4539:5;4532:53;4631:2;4627;4623:11;4610:25;-1:-1:-1;;;;;4650:8:136;4647:32;4644:52;;;4692:1;4689;4682:12;4644:52;4723:8;4719:2;4715:17;4705:27;;;4770:7;4763:4;4759:2;4755:13;4751:27;4741:55;;4792:1;4789;4782:12;4741:55;4832:2;4819:16;4855:75;4871:58;4922:6;4871:58;:::i;:::-;4855:75;:::i;:::-;4952:3;4976:6;4971:3;4964:19;5008:2;5003:3;4999:12;4992:19;;5063:2;5053:6;5050:1;5046:14;5042:2;5038:23;5034:32;5020:46;;5089:7;5081:6;5078:19;5075:39;;;5110:1;5107;5100:12;5075:39;5142:2;5138;5134:11;5154:311;5170:6;5165:3;5162:15;5154:311;;;5256:3;5243:17;-1:-1:-1;;;;;5279:11:136;5276:35;5273:55;;;5324:1;5321;5314:12;5273:55;5353:69;5414:7;5409:2;5395:11;5391:2;5387:20;5383:29;5353:69;:::i;:::-;5341:82;;-1:-1:-1;5452:2:136;5443:12;;;;5187;5154:311;;;-1:-1:-1;5492:2:136;5481:14;;5474:29;-1:-1:-1;5485:5:136;;4114:1419;-1:-1:-1;;;;;4114:1419:136:o;5538:156::-;5604:20;;5664:4;5653:16;;5643:27;;5633:55;;5684:1;5681;5674:12;5699:605;5793:6;5801;5809;5862:2;5850:9;5841:7;5837:23;5833:32;5830:52;;;5878:1;5875;5868:12;5830:52;5918:9;5905:23;-1:-1:-1;;;;;5943:6:136;5940:30;5937:50;;;5983:1;5980;5973:12;5937:50;6006:49;6047:7;6038:6;6027:9;6023:22;6006:49;:::i;:::-;5996:59;;;6074:36;6106:2;6095:9;6091:18;6074:36;:::i;:::-;6064:46;;6163:2;6152:9;6148:18;6135:32;-1:-1:-1;;;;;6182:8:136;6179:32;6176:52;;;6224:1;6221;6214:12;6176:52;6247:51;6290:7;6279:8;6268:9;6264:24;6247:51;:::i;:::-;6237:61;;;5699:605;;;;;:::o;6309:162::-;6396:20;;6445:1;6435:12;;6425:40;;6461:1;6458;6451:12;6476:1470;6535:5;6588:3;6581:4;6573:6;6569:17;6565:27;6555:55;;6606:1;6603;6596:12;6555:55;6646:6;6633:20;6673:75;6689:58;6740:6;6689:58;:::i;6673:75::-;6772:3;6796:6;6791:3;6784:19;6828:4;6823:3;6819:14;6812:21;;6889:4;6879:6;6876:1;6872:14;6864:6;6860:27;6856:38;6842:52;;6917:3;6909:6;6906:15;6903:35;;;6934:1;6931;6924:12;6903:35;6970:4;6962:6;6958:17;6984:931;7000:6;6995:3;6992:15;6984:931;;;7088:3;7075:17;-1:-1:-1;;;;;7111:11:136;7108:35;7105:55;;;7156:1;7153;7146:12;7105:55;7183:24;;7242:2;7234:11;;7230:21;-1:-1:-1;7220:49:136;;7265:1;7262;7255:12;7220:49;7295:22;;:::i;:::-;7345:5;7387:2;7383;7379:11;7419:3;7409:8;7406:17;7403:37;;;7436:1;7433;7426:12;7403:37;7474:4;7470:2;7466:13;7492:346;7510:8;7503:5;7500:19;7492:346;;;7614:5;7601:19;-1:-1:-1;;;;;7643:13:136;7640:37;7637:57;;;7690:1;7687;7680:12;7637:57;7725:56;7777:3;7770:4;7754:13;7750:2;7746:22;7742:33;7725:56;:::i;:::-;7711:71;;-1:-1:-1;7819:4:136;7808:16;;;;7531;7492:346;;;-1:-1:-1;;7851:20:136;;-1:-1:-1;;7900:4:136;7891:14;;;;7017;6984:931;;7951:1210;8012:5;8060:4;8048:9;8043:3;8039:19;8035:30;8032:50;;;8078:1;8075;8068:12;8032:50;8100:22;;:::i;:::-;8091:31;;8145:27;8162:9;8145:27;:::i;:::-;8138:5;8131:42;8205:57;8258:2;8247:9;8243:18;8205:57;:::i;:::-;8200:2;8193:5;8189:14;8182:81;8295:50;8341:2;8330:9;8326:18;8295:50;:::i;:::-;8290:2;8283:5;8279:14;8272:74;8397:2;8386:9;8382:18;8369:32;-1:-1:-1;;;;;8416:6:136;8413:30;8410:50;;;8456:1;8453;8446:12;8410:50;8492:45;8533:3;8524:6;8513:9;8509:22;8492:45;:::i;:::-;8487:2;8480:5;8476:14;8469:69;;8591:3;8580:9;8576:19;8563:33;-1:-1:-1;;;;;8611:8:136;8608:32;8605:52;;;8653:1;8650;8643:12;8605:52;8690:47;8733:3;8722:8;8711:9;8707:24;8690:47;:::i;:::-;8684:3;8677:5;8673:15;8666:72;;8791:3;8780:9;8776:19;8763:33;-1:-1:-1;;;;;8811:8:136;8808:32;8805:52;;;8853:1;8850;8843:12;8805:52;8890:64;8950:3;8939:8;8928:9;8924:24;8890:64;:::i;:::-;8884:3;8877:5;8873:15;8866:89;;9008:3;8997:9;8993:19;8980:33;-1:-1:-1;;;;;9028:8:136;9025:32;9022:52;;;9070:1;9067;9060:12;9022:52;9107:47;9150:3;9139:8;9128:9;9124:24;9107:47;:::i;:::-;9101:3;9094:5;9090:15;9083:72;;7951:1210;;;;:::o;9166:645::-;9284:6;9292;9300;9353:2;9341:9;9332:7;9328:23;9324:32;9321:52;;;9369:1;9366;9359:12;9321:52;9409:9;9396:23;-1:-1:-1;;;;;9434:6:136;9431:30;9428:50;;;9474:1;9471;9464:12;9428:50;9497:65;9554:7;9545:6;9534:9;9530:22;9497:65;:::i;9816:127::-;9877:10;9872:3;9868:20;9865:1;9858:31;9908:4;9905:1;9898:15;9932:4;9929:1;9922:15;9948:152;10041:1;10034:5;10031:12;10021:46;;10047:18;;:::i;:::-;10076;;9948:152::o;10105:146::-;10191:2;10184:5;10181:13;10171:47;;10198:18;;:::i;10256:1033::-;10314:3;10345;10377:5;10371:12;10404:6;10399:3;10392:19;10436:4;10431:3;10427:14;10420:21;;10494:4;10484:6;10481:1;10477:14;10470:5;10466:26;10462:37;10533:4;10526:5;10522:16;10556:1;10566:697;10580:6;10577:1;10574:13;10566:697;;;10645:16;;;-1:-1:-1;;10641:30:136;10629:43;;10695:13;;10649:4;10801:2;10791:13;;10859:1;10873:279;10889:4;10884:3;10881:13;10873:279;;;10974:4;10966:6;10962:17;10955:5;10948:32;11007:41;11041:6;11030:8;11024:15;11007:41;:::i;:::-;11091:4;11077:19;;;;11122:16;;;;;10997:51;-1:-1:-1;10913:1:136;10904:11;10873:279;;;-1:-1:-1;11214:4:136;11239:14;;;;11173:6;;-1:-1:-1;11202:17:136;;;;;-1:-1:-1;;10602:1:136;10595:9;10566:697;;;-1:-1:-1;11279:4:136;;10256:1033;-1:-1:-1;;;;;;10256:1033:136:o;11294:1288::-;11497:2;11486:9;11479:21;11555:4;11546:6;11540:13;11536:24;11531:2;11520:9;11516:18;11509:52;11460:4;11608:2;11600:6;11596:15;11590:22;11621:71;11688:2;11677:9;11673:18;11659:12;11621:71;:::i;:::-;;11741:2;11733:6;11729:15;11723:22;11754:66;11816:2;11805:9;11801:18;11785:14;11754:66;:::i;:::-;;11869:2;11861:6;11857:15;11851:22;11910:4;11904:3;11893:9;11889:19;11882:33;11938:53;11986:3;11975:9;11971:19;11955:14;11938:53;:::i;:::-;11924:67;;12040:3;12032:6;12028:16;12022:23;12114:2;12110:7;12098:9;12090:6;12086:22;12082:36;12076:3;12065:9;12061:19;12054:65;12142:40;12175:6;12159:14;12142:40;:::i;:::-;12128:54;;;12231:3;12223:6;12219:16;12213:23;12305:2;12301:7;12289:9;12281:6;12277:22;12273:36;12267:3;12256:9;12252:19;12245:65;12333:57;12383:6;12367:14;12333:57;:::i;:::-;12319:71;;;12439:3;12431:6;12427:16;12421:23;12514:2;12510:7;12498:9;12490:6;12486:22;12482:36;12475:4;12464:9;12460:20;12453:66;12536:40;12569:6;12553:14;12536:40;:::i;:::-;12528:48;11294:1288;-1:-1:-1;;;;;11294:1288:136:o;12587:1152::-;12796:6;12804;12812;12820;12828;12881:3;12869:9;12860:7;12856:23;12852:33;12849:53;;;12898:1;12895;12888:12;12849:53;12921:48;12959:9;12921:48;:::i;:::-;12911:58;;13020:2;13009:9;13005:18;12992:32;-1:-1:-1;;;;;13039:6:136;13036:30;13033:50;;;13079:1;13076;13069:12;13033:50;13102:49;13143:7;13134:6;13123:9;13119:22;13102:49;:::i;:::-;13092:59;;;13204:2;13193:9;13189:18;13176:32;-1:-1:-1;;;;;13223:8:136;13220:32;13217:52;;;13265:1;13262;13255:12;13217:52;13288:51;13331:7;13320:8;13309:9;13305:24;13288:51;:::i;:::-;13278:61;;;13392:2;13381:9;13377:18;13364:32;-1:-1:-1;;;;;13411:8:136;13408:32;13405:52;;;13453:1;13450;13443:12;13405:52;13476:68;13536:7;13525:8;13514:9;13510:24;13476:68;:::i;:::-;13466:78;;;13597:3;13586:9;13582:19;13569:33;-1:-1:-1;;;;;13617:8:136;13614:32;13611:52;;;13659:1;13656;13649:12;13611:52;13682:51;13725:7;13714:8;13703:9;13699:24;13682:51;:::i;:::-;13672:61;;;12587:1152;;;;;;;;:::o;13934:697::-;14012:5;14041:75;14057:58;14108:6;14057:58;:::i;14041:75::-;14150:21;;;14032:84;-1:-1:-1;14198:4:136;14187:16;;14242:1;14238:14;;;14226:27;;14265:15;;;14262:35;;;14293:1;14290;14283:12;14262:35;14317:6;14332:293;14348:6;14343:3;14340:15;14332:293;;;14436:3;14423:17;-1:-1:-1;;;;;14459:11:136;14456:35;14453:55;;;14504:1;14501;14494:12;14453:55;14533:47;14576:3;14562:11;14554:6;14550:24;14533:47;:::i;:::-;14521:60;;-1:-1:-1;14610:4:136;14601:14;;;;14365;14332:293;;;14336:3;;;13934:697;;;;;:::o;14636:242::-;14689:5;14742:3;14735:4;14727:6;14723:17;14719:27;14709:55;;14760:1;14757;14750:12;14709:55;14782:90;14868:3;14859:6;14846:20;14839:4;14831:6;14827:17;14782:90;:::i;14883:611::-;15019:6;15027;15080:2;15068:9;15059:7;15055:23;15051:32;15048:52;;;15096:1;15093;15086:12;15048:52;15136:9;15123:23;-1:-1:-1;;;;;15161:6:136;15158:30;15155:50;;;15201:1;15198;15191:12;15155:50;15224:65;15281:7;15272:6;15261:9;15257:22;15224:65;:::i;:::-;15214:75;;;15342:2;15331:9;15327:18;15314:32;-1:-1:-1;;;;;15361:8:136;15358:32;15355:52;;;15403:1;15400;15393:12;15355:52;15426:62;15480:7;15469:8;15458:9;15454:24;15426:62;:::i;:::-;15416:72;;;14883:611;;;;;:::o;15499:226::-;15582:6;15635:2;15623:9;15614:7;15610:23;15606:32;15603:52;;;15651:1;15648;15641:12;15603:52;15674:45;15709:9;15674:45;:::i;16056:171::-;16123:20;;-1:-1:-1;;;;;16172:30:136;;16162:41;;16152:69;;16217:1;16214;16207:12;16232:790;16320:6;16380:3;16368:9;16359:7;16355:23;16351:33;16396:2;16393:22;;;16411:1;16408;16401:12;16393:22;-1:-1:-1;16480:2:136;16474:9;16522:3;16510:16;;-1:-1:-1;;;;;16541:34:136;;16577:22;;;16538:62;16535:88;;;16603:18;;:::i;:::-;16639:2;16632:22;16678:27;16695:9;16678:27;:::i;:::-;16670:6;16663:43;16739:36;16771:2;16760:9;16756:18;16739:36;:::i;:::-;16734:2;16726:6;16722:15;16715:61;16809:37;16842:2;16831:9;16827:18;16809:37;:::i;:::-;16804:2;16796:6;16792:15;16785:62;16880:37;16913:2;16902:9;16898:18;16880:37;:::i;:::-;16875:2;16867:6;16863:15;16856:62;16952:38;16985:3;16974:9;16970:19;16952:38;:::i;:::-;16946:3;16934:16;;16927:64;16938:6;16232:790;-1:-1:-1;;;16232:790:136:o;17027:388::-;17104:6;17112;17165:2;17153:9;17144:7;17140:23;17136:32;17133:52;;;17181:1;17178;17171:12;17133:52;17221:9;17208:23;-1:-1:-1;;;;;17246:6:136;17243:30;17240:50;;;17286:1;17283;17276:12;17240:50;17309:49;17350:7;17341:6;17330:9;17326:22;17309:49;:::i;:::-;17299:59;17405:2;17390:18;;;;17377:32;;-1:-1:-1;;;;17027:388:136:o;17420:354::-;17509:6;17562:2;17550:9;17541:7;17537:23;17533:32;17530:52;;;17578:1;17575;17568:12;17530:52;17618:9;17605:23;-1:-1:-1;;;;;17643:6:136;17640:30;17637:50;;;17683:1;17680;17673:12;17637:50;17706:62;17760:7;17751:6;17740:9;17736:22;17706:62;:::i;17779:351::-;17845:6;17853;17906:2;17894:9;17885:7;17881:23;17877:32;17874:52;;;17922:1;17919;17912:12;17874:52;17945:28;17963:9;17945:28;:::i;:::-;17935:38;-1:-1:-1;18023:2:136;18008:18;;17995:32;-1:-1:-1;;;;;;18056:25:136;;18046:36;;18036:64;;18096:1;18093;18086:12;18036:64;18119:5;18109:15;;;17779:351;;;;;:::o;18135:868::-;18203:5;18256:3;18249:4;18241:6;18237:17;18233:27;18223:55;;18274:1;18271;18264:12;18223:55;18314:6;18301:20;18341:75;18357:58;18408:6;18357:58;:::i;18341:75::-;18440:3;18464:6;18459:3;18452:19;18496:4;18491:3;18487:14;18480:21;;18557:4;18547:6;18544:1;18540:14;18532:6;18528:27;18524:38;18510:52;;18585:3;18577:6;18574:15;18571:35;;;18602:1;18599;18592:12;18571:35;18638:4;18630:6;18626:17;18652:320;18668:6;18663:3;18660:15;18652:320;;;18756:3;18743:17;-1:-1:-1;;;;;18779:11:136;18776:35;18773:55;;;18824:1;18821;18814:12;18773:55;18853:74;18923:3;18916:4;18902:11;18894:6;18890:24;18886:35;18853:74;:::i;:::-;18841:87;;-1:-1:-1;18957:4:136;18948:14;;;;18685;18652:320;;19008:1890;19238:6;19246;19254;19262;19270;19323:3;19311:9;19302:7;19298:23;19294:33;19291:53;;;19340:1;19337;19330:12;19291:53;19380:9;19367:23;-1:-1:-1;;;;;19405:6:136;19402:30;19399:50;;;19445:1;19442;19435:12;19399:50;19468:75;19535:7;19526:6;19515:9;19511:22;19468:75;:::i;:::-;19458:85;;;19596:2;19585:9;19581:18;19568:32;-1:-1:-1;;;;;19615:8:136;19612:32;19609:52;;;19657:1;19654;19647:12;19609:52;19680:24;;19735:4;19727:13;;19723:27;-1:-1:-1;19713:55:136;;19764:1;19761;19754:12;19713:55;19804:2;19791:16;19827:75;19843:58;19894:6;19843:58;:::i;19827:75::-;19924:3;19948:6;19943:3;19936:19;19980:2;19975:3;19971:12;19964:19;;20035:2;20025:6;20022:1;20018:14;20014:2;20010:23;20006:32;19992:46;;20061:7;20053:6;20050:19;20047:39;;;20082:1;20079;20072:12;20047:39;20114:2;20110;20106:11;20126:309;20142:6;20137:3;20134:15;20126:309;;;20228:3;20215:17;-1:-1:-1;;;;;20251:11:136;20248:35;20245:55;;;20296:1;20293;20286:12;20245:55;20325:67;20384:7;20379:2;20365:11;20361:2;20357:20;20353:29;20325:67;:::i;:::-;20313:80;;-1:-1:-1;20422:2:136;20413:12;;;;20159;20126:309;;;-1:-1:-1;20454:5:136;-1:-1:-1;;;;20512:2:136;20497:18;;20484:32;-1:-1:-1;;;;;20528:32:136;;20525:52;;;20573:1;20570;20563:12;20525:52;20596:51;20639:7;20628:8;20617:9;20613:24;20596:51;:::i;:::-;20586:61;;;20700:2;20689:9;20685:18;20672:32;-1:-1:-1;;;;;20719:8:136;20716:32;20713:52;;;20761:1;20758;20751:12;20713:52;20784:51;20827:7;20816:8;20805:9;20801:24;20784:51;:::i;:::-;20774:61;;;20854:38;20887:3;20876:9;20872:19;20854:38;:::i;:::-;20844:48;;19008:1890;;;;;;;;:::o;20903:1340::-;21104:6;21112;21120;21128;21136;21189:3;21177:9;21168:7;21164:23;21160:33;21157:53;;;21206:1;21203;21196:12;21157:53;21246:9;21233:23;-1:-1:-1;;;;;21271:6:136;21268:30;21265:50;;;21311:1;21308;21301:12;21265:50;21334:75;21401:7;21392:6;21381:9;21377:22;21334:75;:::i;:::-;21324:85;;;21462:2;21451:9;21447:18;21434:32;-1:-1:-1;;;;;21481:8:136;21478:32;21475:52;;;21523:1;21520;21513:12;21475:52;21546:24;;21601:4;21593:13;;21589:27;-1:-1:-1;21579:55:136;;21630:1;21627;21620:12;21579:55;21670:2;21657:16;-1:-1:-1;;;;;21688:6:136;21685:30;21682:50;;;21728:1;21725;21718:12;21682:50;21781:7;21776:2;21766:6;21763:1;21759:14;21755:2;21751:23;21747:32;21744:45;21741:65;;;21802:1;21799;21792:12;21741:65;21833:2;21825:11;;;;;-1:-1:-1;21855:6:136;-1:-1:-1;21914:2:136;21899:18;;21886:32;-1:-1:-1;;;;;21930:32:136;;21927:52;;;21975:1;21972;21965:12;21927:52;21998:51;22041:7;22030:8;22019:9;22015:24;21998:51;:::i;:::-;21988:61;;;22102:2;22091:9;22087:18;22074:32;-1:-1:-1;;;;;22121:8:136;22118:32;22115:52;;;22163:1;22160;22153:12;22248:571;22360:6;22368;22421:2;22409:9;22400:7;22396:23;22392:32;22389:52;;;22437:1;22434;22427:12;22389:52;22477:9;22464:23;-1:-1:-1;;;;;22502:6:136;22499:30;22496:50;;;22542:1;22539;22532:12;22496:50;22565:49;22606:7;22597:6;22586:9;22582:22;22565:49;:::i;22824:227::-;22984:2;22969:18;;22996:49;22973:9;23027:6;22996:49;:::i;23056:360::-;23148:6;23201:2;23189:9;23180:7;23176:23;23172:32;23169:52;;;23217:1;23214;23207:12;23169:52;23257:9;23244:23;-1:-1:-1;;;;;23282:6:136;23279:30;23276:50;;;23322:1;23319;23312:12;23276:50;23345:65;23402:7;23393:6;23382:9;23378:22;23345:65;:::i;23693:127::-;23754:10;23749:3;23745:20;23742:1;23735:31;23785:4;23782:1;23775:15;23809:4;23806:1;23799:15;23825:155;23916:6;23893:14;;;23909;;;23889:35;;23936:15;;23933:41;;;23954:18;;:::i;23985:127::-;24046:10;24041:3;24037:20;24034:1;24027:31;24077:4;24074:1;24067:15;24101:4;24098:1;24091:15;24117:222;24169:3;24207:5;24201:12;24251:6;24244:4;24237:5;24233:16;24228:3;24222:36;24313:1;24277:16;;24302:13;;;-1:-1:-1;24277:16:136;;24117:222;-1:-1:-1;24117:222:136:o;24344:283::-;24519:3;24544:77;24580:40;24616:3;24608:6;24580:40;:::i;:::-;24572:6;24544:77;:::i;24632:736::-;25009:4;25001:6;24997:17;24986:9;24979:36;25051:3;25046:2;25035:9;25031:18;25024:31;24960:4;25078:45;25118:3;25107:9;25103:19;25095:6;25078:45;:::i;:::-;25171:9;25163:6;25159:22;25154:2;25143:9;25139:18;25132:50;25205:32;25230:6;25222;25205:32;:::i;:::-;25191:46;;25285:9;25277:6;25273:22;25268:2;25257:9;25253:18;25246:50;25313:49;25355:6;25347;25313:49;:::i;:::-;25305:57;24632:736;-1:-1:-1;;;;;;;24632:736:136:o;25373:946::-;25795:56;25841:9;25833:6;25795:56;:::i;:::-;25887:3;25882:2;25871:9;25867:18;25860:31;25776:4;25914:45;25954:3;25943:9;25939:19;25931:6;25914:45;:::i;:::-;26007:9;25999:6;25995:22;25990:2;25979:9;25975:18;25968:50;26041:32;26066:6;26058;26041:32;:::i;:::-;26027:46;;26121:9;26113:6;26109:22;26104:2;26093:9;26089:18;26082:50;26155:49;26197:6;26189;26155:49;:::i;:::-;26141:63;;26253:9;26245:6;26241:22;26235:3;26224:9;26220:19;26213:51;26281:32;26306:6;26298;26281:32;:::i;:::-;26273:40;25373:946;-1:-1:-1;;;;;;;;25373:946:136:o;28541:127::-;28602:10;28597:3;28593:20;28590:1;28583:31;28633:4;28630:1;28623:15;28657:4;28654:1;28647:15;28673:194;28712:1;-1:-1:-1;;;;;28743:1:136;28739:26;28784:3;28774:37;;28791:18;;:::i;:::-;28857:3;-1:-1:-1;;;;;28833:1:136;28829:26;28825:36;28820:41;;;28673:194;;;;:::o;29360:290::-;29569:3;29547:16;;;-1:-1:-1;;;;;;29543:36:136;29531:49;;29513:3;29596:48;29641:1;29632:11;;29624:6;29596:48;:::i;30533:373::-;30788:3;30766:16;;;-1:-1:-1;;;;;;30762:36:136;30750:49;;30732:3;30815:85;30851:48;30896:1;30887:11;;30879:6;30851:48;:::i;30911:295::-;31094:4;31086:6;31082:17;31071:9;31064:36;31136:2;31131;31120:9;31116:18;31109:30;31045:4;31156:44;31196:2;31185:9;31181:18;31173:6;31156:44;:::i;31400:532::-;31713:3;31738:188;31774:151;31810:114;31846:77;31882:40;31918:3;31910:6;31882:40;:::i;:::-;31874:6;31846:77;:::i;:::-;31838:6;31810:114;:::i;:::-;31802:6;31774:151;:::i;31937:256::-;32075:9;32112:75;32172:14;32164:6;32157:5;32112:75;:::i;32198:449::-;32465:3;32490:151;32526:114;32562:77;32598:40;32634:3;32626:6;32598:40;:::i;32490:151::-;32483:158;32198:449;-1:-1:-1;;;;;;32198:449:136:o;32652:366::-;32873:3;32898:114;32934:77;32970:40;33006:3;32998:6;32970:40;:::i;33023:125::-;33088:9;;;33109:10;;;33106:36;;;33122:18;;:::i;33153:615::-;33512:3;33537:225;33573:188;33609:151;33645:114;33681:77;33717:40;33753:3;33745:6;33717:40;:::i;:::-;33709:6;33681:77;:::i;33773:128::-;33840:9;;;33861:11;;;33858:37;;;33875:18;;:::i;34314:366::-;34513:2;34502:9;34495:21;34476:4;34533:44;34573:2;34562:9;34558:18;34550:6;34533:44;:::i;:::-;34525:52;;34613:6;34608:2;34597:9;34593:18;34586:34;34668:4;34660:6;34656:17;34651:2;34640:9;34636:18;34629:45;34314:366;;;;;;:::o;34956:135::-;34995:3;35016:17;;;35013:43;;35036:18;;:::i;:::-;-1:-1:-1;35083:1:136;35072:13;;34956:135::o;35830:151::-;35920:4;35913:12;;;35899;;;35895:31;;35938:14;;35935:40;;;35955:18;;:::i;35986:191::-;-1:-1:-1;;;;;36054:26:136;;;36082;;;36050:59;;36121:27;;36118:53;;;36151:18;;:::i;36388:268::-;-1:-1:-1;;;;;36472:26:136;;;36500;;;36468:59;36547:36;;;;36602:24;;;36592:58;;36630:18;;:::i;36661:112::-;36693:1;36719;36709:35;;36724:18;;:::i;:::-;-1:-1:-1;36758:9:136;;36661:112::o",
  "source": "// SPDX-License-Identifier: MIT\r\n\r\npragma solidity >=0.8.0 <0.9.0;\r\n\r\nimport \"./Witnet.sol\";\r\n\r\n/// @title A library for encoding Witnet Data Requests.\r\n/// @author The Witnet Foundation.\r\nlibrary WitOracleRadonEncodingLib {\r\n\r\n    using WitnetBuffer for WitnetBuffer.Buffer;\r\n    using WitnetCBOR for WitnetCBOR.CBOR;\r\n    using WitnetCBOR for WitnetCBOR.CBOR[];\r\n\r\n    bytes internal constant WITNET_RADON_OPCODES_RESULT_TYPES =\r\n        hex\"10ffffffffffffffffffffffffffffff040100010203050406071311ff0101ff07ff02ffffffffffffffffffffffffff070304ff04ffffffffffffff03ffffff0405070202ff0404040403ffffffffff05070402040205050505ff04ff04ffff07010203050406070101ff06ffff06ff0203050404000106060707070701ffff\";\r\n            // 10ffffffffffffffffffffffffffffff\r\n            // 040100001203050406070100ff0101ff\r\n            // 07ff02ffffffffffffffffffffffffff\r\n            // 070304ff04ffffffffffffff03ffffff\r\n            // 0405070202ff0404040403ffffffffff\r\n            // 05070402040205050505ff04ff04ffff\r\n            // 07010203050406070101ff06ffff06ff\r\n            // 0203050404000106060707070701ffff\r\n\r\n    error UnsupportedDataRequestMethod(uint8 method, string schema, string body, string[2][] headers);\r\n    error UnsupportedRadonDataType(uint8 datatype, uint256 maxlength);\r\n    error UnsupportedRadonFilterOpcode(uint8 opcode);\r\n    error UnsupportedRadonFilterArgs(uint8 opcode, bytes args);\r\n    error UnsupportedRadonReducerOpcode(uint8 opcode);\r\n    error UnsupportedRadonReducerScript(uint8 opcode, bytes script, uint256 offset);\r\n    error UnsupportedRadonScript(bytes script, uint256 offset);\r\n    error UnsupportedRadonScriptOpcode(bytes script, uint256 cursor, uint8 opcode);\r\n    error UnsupportedRadonTallyScript(bytes32 hash);\r\n\r\n    /// ===============================================================================================================\r\n    /// --- WitOracleRadonEncodingLib internal methods --------------------------------------------------------------------------------\r\n\r\n    function size(Witnet.RadonDataTypes _type) internal pure returns (uint16) {\r\n        if (_type == Witnet.RadonDataTypes.Integer\r\n            || _type == Witnet.RadonDataTypes.Float\r\n        ) {\r\n            return 9;\r\n        } else if (_type == Witnet.RadonDataTypes.Bool) {\r\n            return 1;\r\n        } else {\r\n            // undetermined\r\n            return 0; \r\n        }\r\n    }\r\n\r\n\r\n    /// ===============================================================================================================\r\n    /// --- WitOracleRadonEncodingLib public methods (if used library will have to linked to calling contracts) -----------------------\r\n\r\n    /// @notice Encode bytes array into given major type (UTF-8 not yet supported)\r\n    /// @param buf Bytes array\r\n    /// @return Marshaled bytes\r\n    function encode(bytes memory buf, uint majorType)\r\n        public pure\r\n        returns (bytes memory)\r\n    {\r\n        uint len = buf.length;\r\n        if (len < 23) {\r\n            return abi.encodePacked(\r\n                uint8((majorType << 5) | uint8(len)),\r\n                buf\r\n            );\r\n        } else {\r\n            uint8 buf0 = uint8((majorType << 5));\r\n            bytes memory buf1;\r\n            if (len <= 0xff) {\r\n                buf0 |= 24;\r\n                buf1 = abi.encodePacked(uint8(len));                \r\n            } else if (len <= 0xffff) {\r\n                buf0 |= 25;\r\n                buf1 = abi.encodePacked(uint16(len));\r\n            } else if (len <= 0xffffffff) {\r\n                buf0 |= 26;\r\n                buf1 = abi.encodePacked(uint32(len));\r\n            } else {\r\n                buf0 |= 27;\r\n                buf1 = abi.encodePacked(uint64(len));\r\n            }\r\n            return abi.encodePacked(\r\n                buf0,\r\n                buf1,\r\n                buf\r\n            );\r\n        }\r\n    }\r\n\r\n    /// @notice Encode bytes array.\r\n    /// @param buf Bytes array\r\n    /// @return Mashaled bytes\r\n    function encode(bytes memory buf)\r\n        public pure\r\n        returns (bytes memory)\r\n    {\r\n        return encode(buf, WitnetCBOR.MAJOR_TYPE_BYTES);\r\n    } \r\n\r\n    /// @notice Encode string array (UTF-8 not yet supported).\r\n    /// @param str String bytes.\r\n    /// @return Mashaled bytes\r\n    function encode(string memory str)\r\n        public pure\r\n        returns (bytes memory)\r\n    {\r\n        return encode(bytes(str), WitnetCBOR.MAJOR_TYPE_STRING);\r\n    }\r\n\r\n    /// @dev Encode uint64 into tagged varint.\r\n    /// @dev See https://developers.google.com/protocol-buffers/docs/encoding#varints.\r\n    /// @param n Number\r\n    /// @param t Tag\r\n    /// @return buf Marshaled bytes\r\n    function encode(uint64 n, bytes1 t)\r\n        public pure\r\n        returns (bytes memory buf)\r\n    {\r\n        unchecked {\r\n            // Count the number of groups of 7 bits\r\n            // We need this pre-processing step since Solidity doesn't allow dynamic memory resizing\r\n            uint64 tmp = n;\r\n            uint64 numBytes = 2;\r\n            while (tmp > 0x7F) {\r\n                tmp = tmp >> 7;\r\n                numBytes += 1;\r\n            }\r\n            buf = new bytes(numBytes);\r\n            tmp = n;\r\n            buf[0] = t;\r\n            for (uint64 i = 1; i < numBytes; i++) {\r\n                // Set the first bit in the byte for each group of 7 bits\r\n                buf[i] = bytes1(0x80 | uint8(tmp & 0x7F));\r\n                tmp = tmp >> 7;\r\n            }\r\n            // Unset the first bit of the last byte\r\n            buf[numBytes - 1] &= 0x7F;\r\n        }\r\n    }   \r\n\r\n    function encode(Witnet.RadonRetrieval memory source)\r\n        public pure\r\n        returns (bytes memory)\r\n    {\r\n        bytes memory _encodedMethod = encode(uint64(source.method), bytes1(0x08));\r\n        bytes memory _encodedUrl;\r\n        if (bytes(source.url).length > 0) {\r\n            _encodedUrl = abi.encodePacked(\r\n                encode(uint64(bytes(source.url).length), bytes1(0x12)),\r\n                bytes(source.url)\r\n            );\r\n        }\r\n        bytes memory _encodedScript;\r\n        if (source.radonScript.length > 0) {\r\n            _encodedScript = abi.encodePacked(\r\n                encode(uint64(source.radonScript.length), bytes1(0x1a)),\r\n                source.radonScript\r\n            );\r\n        }\r\n        bytes memory _encodedBody;\r\n        if (bytes(source.body).length > 0) {\r\n            _encodedBody = abi.encodePacked(\r\n                encode(uint64(bytes(source.body).length), bytes1(0x22)),\r\n                bytes(source.body)\r\n            );\r\n        }\r\n        bytes memory _encodedHeaders;\r\n        if (source.headers.length > 0) {\r\n            for (uint _ix = 0; _ix < source.headers.length; _ix ++) {\r\n                bytes memory _headers = abi.encodePacked(\r\n                    encode(uint64(bytes(source.headers[_ix][0]).length), bytes1(0x0a)),\r\n                    bytes(source.headers[_ix][0]),\r\n                    encode(uint64(bytes(source.headers[_ix][1]).length), bytes1(0x12)),\r\n                    bytes(source.headers[_ix][1])\r\n                );\r\n                _encodedHeaders = abi.encodePacked(\r\n                    _encodedHeaders,\r\n                    encode(uint64(_headers.length), bytes1(0x2a)),\r\n                    _headers\r\n                );\r\n            }\r\n        }\r\n        uint _innerSize = (\r\n            _encodedMethod.length\r\n                + _encodedUrl.length\r\n                + _encodedScript.length\r\n                + _encodedBody.length\r\n                + _encodedHeaders.length\r\n        );\r\n        return abi.encodePacked(\r\n            encode(uint64(_innerSize), bytes1(0x12)),\r\n            _encodedMethod,\r\n            _encodedUrl,\r\n            _encodedScript,\r\n            _encodedBody,\r\n            _encodedHeaders\r\n        );\r\n    }\r\n\r\n    function encode(\r\n            Witnet.RadonRetrieval[] memory retrievals,\r\n            string[] calldata args,\r\n            bytes memory aggregatorInnerBytecode,\r\n            bytes memory tallyInnerBytecode\r\n        )\r\n        public pure\r\n        returns (bytes memory)\r\n    {\r\n        bytes[] memory encodedSources = new bytes[](retrievals.length);\r\n        for (uint ix; ix < retrievals.length; ++ ix) {\r\n            replaceWildcards(retrievals[ix], args);\r\n            encodedSources[ix] = encode(retrievals[ix]);\r\n        }\r\n        return abi.encodePacked(\r\n            WitnetBuffer.concat(encodedSources),\r\n            encode(uint64(aggregatorInnerBytecode.length), bytes1(0x1a)),\r\n            aggregatorInnerBytecode,\r\n            encode(uint64(tallyInnerBytecode.length), bytes1(0x22)),\r\n            tallyInnerBytecode\r\n        );\r\n    }\r\n    \r\n    function encode(\r\n            Witnet.RadonRetrieval[] memory sources,\r\n            string[][] memory args,\r\n            bytes memory aggregatorInnerBytecode,\r\n            bytes memory tallyInnerBytecode,\r\n            uint16\r\n        )\r\n        public pure\r\n        returns (bytes memory)\r\n    {\r\n        bytes[] memory encodedSources = new bytes[](sources.length);\r\n        for (uint ix = 0; ix < sources.length; ix ++) {\r\n            replaceWildcards(sources[ix], args[ix]);\r\n            encodedSources[ix] = encode(sources[ix]);\r\n        }\r\n        return abi.encodePacked(\r\n            WitnetBuffer.concat(encodedSources),\r\n            encode(uint64(aggregatorInnerBytecode.length), bytes1(0x1a)),\r\n            aggregatorInnerBytecode,\r\n            encode(uint64(tallyInnerBytecode.length), bytes1(0x22)),\r\n            tallyInnerBytecode\r\n        );\r\n    }\r\n\r\n    function encode(Witnet.RadonReducer memory reducer)\r\n        public pure\r\n        returns (bytes memory bytecode)\r\n    {\r\n        // if (reducer.script.length == 0) {\r\n            for (uint ix = 0; ix < reducer.filters.length; ix ++) {\r\n                bytecode = abi.encodePacked(\r\n                    bytecode,\r\n                    encode(reducer.filters[ix])\r\n                );\r\n            }\r\n            bytecode = abi.encodePacked(\r\n                bytecode,\r\n                encode(reducer.opcode)\r\n            );\r\n        // } else {\r\n        //     return abi.encodePacked(\r\n        //         encode(uint64(reducer.script.length), bytes1(0x18)),\r\n        //         reducer.script\r\n        //     );\r\n        // }\r\n    }\r\n\r\n    function encode(Witnet.RadonFilter memory filter)\r\n        public pure\r\n        returns (bytes memory bytecode)\r\n    {        \r\n        bytecode = abi.encodePacked(\r\n            encode(uint64(filter.opcode), bytes1(0x08)),\r\n            filter.cborArgs.length > 0\r\n                ? abi.encodePacked(\r\n                    encode(uint64(filter.cborArgs.length), bytes1(0x12)),\r\n                    filter.cborArgs\r\n                ) : bytes(\"\")\r\n        );\r\n        return abi.encodePacked(\r\n            encode(uint64(bytecode.length), bytes1(0x0a)),\r\n            bytecode\r\n        );\r\n    }\r\n\r\n    function encode(Witnet.RadonReduceOpcodes opcode)\r\n        public pure\r\n        returns (bytes memory)\r\n    {\r\n        \r\n        return encode(uint64(opcode), bytes1(0x10));\r\n    }\r\n\r\n    function encode(Witnet.RadonSLAv1 memory sla)\r\n        public pure\r\n        returns (bytes memory)\r\n    {\r\n        return abi.encodePacked(\r\n            encode(uint64(sla.witnessReward), bytes1(0x10)),\r\n            encode(uint64(sla.numWitnesses), bytes1(0x18)),\r\n            encode(uint64(sla.minerCommitRevealFee), bytes1(0x20)),\r\n            encode(uint64(sla.minConsensusPercentage), bytes1(0x28)),\r\n            encode(uint64(sla.witnessCollateral), bytes1(0x30))\r\n        );\r\n    }\r\n\r\n    function replaceCborStringsFromBytes(\r\n            bytes memory data,\r\n            uint8 argIndex,\r\n            string memory argValue\r\n        )\r\n        public pure\r\n        returns (bytes memory)\r\n    {\r\n        WitnetCBOR.CBOR memory cbor = WitnetCBOR.fromBytes(data);\r\n        while (!cbor.eof()) {\r\n            if (cbor.majorType == WitnetCBOR.MAJOR_TYPE_STRING) {\r\n                _replaceCborWildcard(cbor, argIndex, argValue);\r\n                cbor = cbor.settle();\r\n            } else {\r\n                cbor = cbor.skip().settle();\r\n            }\r\n        }\r\n        return cbor.buffer.data;\r\n    }\r\n\r\n    function replaceCborStringsFromBytes(\r\n            bytes memory data,\r\n            string[] memory args\r\n        )\r\n        public pure\r\n        returns (bytes memory)\r\n    {\r\n        WitnetCBOR.CBOR memory cbor = WitnetCBOR.fromBytes(data);\r\n        while (!cbor.eof()) {\r\n            if (cbor.majorType == WitnetCBOR.MAJOR_TYPE_STRING) {\r\n                _replaceCborWildcards(cbor, args);\r\n                cbor = cbor.settle();\r\n            } else {\r\n                cbor = cbor.skip().settle();\r\n            }\r\n        }\r\n        return cbor.buffer.data;\r\n    }\r\n\r\n    function replaceWildcards(Witnet.RadonRetrieval memory self, uint8 argIndex, string memory argValue)\r\n        public pure\r\n        returns (Witnet.RadonRetrieval memory)\r\n    {\r\n        self.url = WitnetBuffer.replace(self.url, argIndex, argValue);\r\n        self.body = WitnetBuffer.replace(self.body, argIndex, argValue);\r\n        self.radonScript = replaceCborStringsFromBytes(self.radonScript, argIndex, argValue);\r\n        for (uint _ix = 0 ; _ix < self.headers.length; _ix ++) {\r\n            self.headers[_ix][0] = WitnetBuffer.replace(self.headers[_ix][0], argIndex, argValue);\r\n            self.headers[_ix][1] = WitnetBuffer.replace(self.headers[_ix][1], argIndex, argValue);\r\n        }\r\n        return self;\r\n    }\r\n\r\n    function replaceWildcards(Witnet.RadonRetrieval memory self, string[] memory args)\r\n        public pure\r\n        returns (Witnet.RadonRetrieval memory)\r\n    {\r\n        self.url = WitnetBuffer.replace(self.url, args);\r\n        self.body = WitnetBuffer.replace(self.body, args);\r\n        self.radonScript = replaceCborStringsFromBytes(self.radonScript, args);\r\n        for (uint _ix = 0 ; _ix < self.headers.length; _ix ++) {\r\n            self.headers[_ix][0] = WitnetBuffer.replace(self.headers[_ix][0], args);\r\n            self.headers[_ix][1] = WitnetBuffer.replace(self.headers[_ix][1], args);\r\n        }\r\n        return self;\r\n    }\r\n\r\n    function validate(\r\n            Witnet.RadonRetrievalMethods method,\r\n            string memory url,\r\n            string memory body,\r\n            string[2][] memory headers,\r\n            bytes memory script\r\n        )\r\n        public pure\r\n        returns (bytes32)\r\n    {\r\n        if (!(\r\n            method == Witnet.RadonRetrievalMethods.HttpPost\r\n            || (method == Witnet.RadonRetrievalMethods.HttpGet && bytes(body).length == 0)\r\n            || (method == Witnet.RadonRetrievalMethods.HttpHead && bytes(body).length == 0)\r\n            || (method == Witnet.RadonRetrievalMethods.RNG\r\n                && bytes(url).length == 0\r\n                && bytes(body).length == 0\r\n                && headers.length == 0\r\n                && script.length >= 1\r\n            )\r\n        )) {\r\n            revert UnsupportedDataRequestMethod(\r\n                uint8(method),\r\n                url,\r\n                body,\r\n                headers\r\n            );\r\n        }\r\n        return keccak256(abi.encode(method, url, body, headers, script));\r\n    }\r\n    \r\n    function validate(\r\n            Witnet.RadonDataTypes dataType,\r\n            uint16 maxDataSize\r\n        )\r\n        public pure\r\n        returns (uint16)\r\n    {\r\n        if (\r\n            dataType == Witnet.RadonDataTypes.Any\r\n                || dataType == Witnet.RadonDataTypes.String\r\n                || dataType == Witnet.RadonDataTypes.Bytes\r\n                || dataType == Witnet.RadonDataTypes.Array\r\n                || dataType == Witnet.RadonDataTypes.Map\r\n        ) {\r\n            if (maxDataSize == 0) {\r\n                revert UnsupportedRadonDataType(\r\n                    uint8(dataType),\r\n                    maxDataSize\r\n                );\r\n            }\r\n            return maxDataSize + 3; // todo?: determine CBOR-encoding length overhead??\r\n        \r\n        } else if (\r\n            dataType == Witnet.RadonDataTypes.Integer\r\n                || dataType == Witnet.RadonDataTypes.Float\r\n                || dataType == Witnet.RadonDataTypes.Bool\r\n        ) {\r\n            return 9; \r\n        \r\n        } else {\r\n            revert UnsupportedRadonDataType(\r\n                uint8(dataType),\r\n                size(dataType)\r\n            );\r\n        }\r\n    }\r\n\r\n    function validate(Witnet.RadonFilter memory filter)\r\n        public pure\r\n    {\r\n        if (\r\n            filter.opcode == Witnet.RadonFilterOpcodes.StandardDeviation\r\n        ) {\r\n            // check filters that require arguments\r\n            if (filter.cborArgs.length == 0) {\r\n                revert UnsupportedRadonFilterArgs(uint8(filter.opcode), filter.cborArgs);\r\n            }\r\n        } else if (\r\n            filter.opcode == Witnet.RadonFilterOpcodes.Mode\r\n        ) {\r\n            // check filters that don't require any arguments\r\n            if (filter.cborArgs.length > 0) {\r\n                revert UnsupportedRadonFilterArgs(uint8(filter.opcode), filter.cborArgs);\r\n            }\r\n        } else {\r\n            // reject unsupported opcodes\r\n            revert UnsupportedRadonFilterOpcode(uint8(filter.opcode));\r\n        }\r\n    }\r\n\r\n    function validate(Witnet.RadonReducer memory reducer)\r\n        public pure\r\n    {\r\n        // if (reducer.script.length == 0) {\r\n            if (!(\r\n                reducer.opcode == Witnet.RadonReduceOpcodes.AverageMean \r\n                    || reducer.opcode == Witnet.RadonReduceOpcodes.StandardDeviation\r\n                    || reducer.opcode == Witnet.RadonReduceOpcodes.Mode\r\n                    || reducer.opcode == Witnet.RadonReduceOpcodes.ConcatenateAndHash\r\n                    || reducer.opcode == Witnet.RadonReduceOpcodes.AverageMedian\r\n            )) {\r\n                revert UnsupportedRadonReducerOpcode(uint8(reducer.opcode));\r\n            }\r\n            for (uint ix = 0; ix < reducer.filters.length; ix ++) {\r\n                validate(reducer.filters[ix]);\r\n            }\r\n        // } else {\r\n        //     if (uint8(reducer.opcode) != 0xff || reducer.filters.length > 0) {\r\n        //         revert UnsupportedRadonReducerScript(\r\n        //             uint8(reducer.opcode),\r\n        //             reducer.script,\r\n        //             0\r\n        //         );\r\n        //     }\r\n        // }\r\n    }\r\n\r\n    function validate(Witnet.RadonSLAv1 memory sla)\r\n        public pure\r\n    {\r\n        if (sla.witnessReward == 0) {\r\n            revert(\"WitOracleRadonEncodingLib: invalid SLA: no reward\");\r\n        }\r\n        if (sla.numWitnesses == 0) {\r\n            revert(\"WitOracleRadonEncodingLib: invalid SLA: no witnesses\");\r\n        } else if (sla.numWitnesses > 127) {\r\n            revert(\"WitOracleRadonEncodingLib: invalid SLA: too many witnesses (>127)\");\r\n        }\r\n        if (\r\n            sla.minConsensusPercentage < 51 \r\n                || sla.minConsensusPercentage > 99\r\n        ) {\r\n            revert(\"WitOracleRadonEncodingLib: invalid SLA: consensus percentage out of range\");\r\n        }\r\n        if (sla.witnessCollateral > 0) {\r\n            revert(\"WitOracleRadonEncodingLib: invalid SLA: no collateral\");\r\n        }\r\n        if (sla.witnessCollateral / sla.witnessReward > 127) {\r\n            revert(\"WitOracleRadonEncodingLib: invalid SLA: collateral/reward ratio too high (>127)\");\r\n        }\r\n    }\r\n\r\n    function verifyRadonScriptResultDataType(bytes memory script)\r\n        public pure\r\n        returns (Witnet.RadonDataTypes)\r\n    {\r\n        return _verifyRadonScriptResultDataType(\r\n            WitnetCBOR.fromBytes(script),\r\n            false\r\n        );\r\n    }\r\n\r\n\r\n    /// ===============================================================================================================\r\n    /// --- WitOracleRadonEncodingLib private methods ---------------------------------------------------------------------------------\r\n\r\n    function _replaceCborWildcard(\r\n            WitnetCBOR.CBOR memory self,\r\n            uint8 argIndex,\r\n            string memory argValue\r\n        ) private pure\r\n    {\r\n        uint _rewind = self.len;\r\n        uint _start = self.buffer.cursor;\r\n        bytes memory _peeks = bytes(self.readString());\r\n        (bytes memory _pokes, uint _replacements) = WitnetBuffer.replace(_peeks, argIndex, argValue);\r\n        if (_replacements > 0) {\r\n            bytes memory _encodedPokes = encode(string(_pokes));\r\n            self.buffer.cursor = _start - _rewind;\r\n            self.buffer.mutate(\r\n                _peeks.length + _rewind,\r\n                _encodedPokes\r\n            );\r\n            self.buffer.cursor += _encodedPokes.length;\r\n        }\r\n    }\r\n\r\n    function _replaceCborWildcards(\r\n            WitnetCBOR.CBOR memory self,\r\n            string[] memory args\r\n        ) private pure\r\n    {\r\n        uint _rewind = self.len;\r\n        uint _start = self.buffer.cursor;\r\n        bytes memory _peeks = bytes(self.readString());\r\n        (bytes memory _pokes, uint _replacements) = WitnetBuffer.replace(_peeks, args);\r\n        if (_replacements > 0) {\r\n            bytes memory _encodedPokes = encode(string(_pokes));\r\n            self.buffer.cursor = _start - _rewind;\r\n            self.buffer.mutate(\r\n                _peeks.length + _rewind,\r\n                _encodedPokes\r\n            );\r\n            self.buffer.cursor += _encodedPokes.length;\r\n        }\r\n    }\r\n    \r\n    function _verifyRadonScriptResultDataType(WitnetCBOR.CBOR memory self, bool flip)\r\n        private pure\r\n        returns (Witnet.RadonDataTypes)\r\n    {\r\n        if (self.majorType == WitnetCBOR.MAJOR_TYPE_ARRAY) {\r\n            WitnetCBOR.CBOR[] memory items = self.readArray();\r\n            if (items.length > 1) {\r\n                return flip\r\n                    ? _verifyRadonScriptResultDataType(items[0], false)\r\n                    : _verifyRadonScriptResultDataType(items[items.length - 2], true)\r\n                ;\r\n            } else {\r\n                return Witnet.RadonDataTypes.Any;\r\n            }\r\n        } else if (self.majorType == WitnetCBOR.MAJOR_TYPE_INT) {            \r\n            uint cursor = self.buffer.cursor;\r\n            uint opcode = self.readUint();\r\n            uint8 dataType = (opcode > WITNET_RADON_OPCODES_RESULT_TYPES.length\r\n                ? 0xff\r\n                : uint8(WITNET_RADON_OPCODES_RESULT_TYPES[opcode])\r\n            );\r\n            if (dataType > uint8(type(Witnet.RadonDataTypes).max)) {\r\n                revert UnsupportedRadonScriptOpcode(\r\n                    self.buffer.data,\r\n                    cursor,\r\n                    uint8(opcode)\r\n                );\r\n            }\r\n            return Witnet.RadonDataTypes(dataType);\r\n        } else {\r\n            revert WitnetCBOR.UnexpectedMajorType(\r\n                WitnetCBOR.MAJOR_TYPE_INT,\r\n                self.majorType\r\n            );\r\n        }\r\n    }\r\n\r\n}",
  "sourcePath": "C:\\Users\\guill\\github\\guidiaz\\witnet-solidity-bridge\\contracts\\libs\\WitOracleRadonEncodingLib.sol",
  "ast": {
    "absolutePath": "project:/contracts/libs/WitOracleRadonEncodingLib.sol",
    "exportedSymbols": {
      "Bech32": [
        31372
      ],
      "Secp256k1": [
        32535
      ],
      "WitOracleRadonEncodingLib": [
        36466
      ],
      "Witnet": [
        40741
      ],
      "WitnetBuffer": [
        42631
      ],
      "WitnetCBOR": [
        44174
      ]
    },
    "id": 36467,
    "license": "MIT",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 34368,
        "literals": [
          "solidity",
          ">=",
          "0.8",
          ".0",
          "<",
          "0.9",
          ".0"
        ],
        "nodeType": "PragmaDirective",
        "src": "35:31:114"
      },
      {
        "absolutePath": "project:/contracts/libs/Witnet.sol",
        "file": "./Witnet.sol",
        "id": 34369,
        "nameLocation": "-1:-1:-1",
        "nodeType": "ImportDirective",
        "scope": 36467,
        "sourceUnit": 40742,
        "src": "70:22:114",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "abstract": false,
        "baseContracts": [],
        "canonicalName": "WitOracleRadonEncodingLib",
        "contractDependencies": [],
        "contractKind": "library",
        "documentation": {
          "id": 34370,
          "nodeType": "StructuredDocumentation",
          "src": "96:93:114",
          "text": "@title A library for encoding Witnet Data Requests.\n @author The Witnet Foundation."
        },
        "fullyImplemented": true,
        "id": 36466,
        "linearizedBaseContracts": [
          36466
        ],
        "name": "WitOracleRadonEncodingLib",
        "nameLocation": "197:25:114",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "global": false,
            "id": 34374,
            "libraryName": {
              "id": 34371,
              "name": "WitnetBuffer",
              "nameLocations": [
                "238:12:114"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 42631,
              "src": "238:12:114"
            },
            "nodeType": "UsingForDirective",
            "src": "232:43:114",
            "typeName": {
              "id": 34373,
              "nodeType": "UserDefinedTypeName",
              "pathNode": {
                "id": 34372,
                "name": "WitnetBuffer.Buffer",
                "nameLocations": [
                  "255:12:114",
                  "268:6:114"
                ],
                "nodeType": "IdentifierPath",
                "referencedDeclaration": 40764,
                "src": "255:19:114"
              },
              "referencedDeclaration": 40764,
              "src": "255:19:114",
              "typeDescriptions": {
                "typeIdentifier": "t_struct$_Buffer_$40764_storage_ptr",
                "typeString": "struct WitnetBuffer.Buffer"
              }
            }
          },
          {
            "global": false,
            "id": 34378,
            "libraryName": {
              "id": 34375,
              "name": "WitnetCBOR",
              "nameLocations": [
                "287:10:114"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 44174,
              "src": "287:10:114"
            },
            "nodeType": "UsingForDirective",
            "src": "281:37:114",
            "typeName": {
              "id": 34377,
              "nodeType": "UserDefinedTypeName",
              "pathNode": {
                "id": 34376,
                "name": "WitnetCBOR.CBOR",
                "nameLocations": [
                  "302:10:114",
                  "313:4:114"
                ],
                "nodeType": "IdentifierPath",
                "referencedDeclaration": 42658,
                "src": "302:15:114"
              },
              "referencedDeclaration": 42658,
              "src": "302:15:114",
              "typeDescriptions": {
                "typeIdentifier": "t_struct$_CBOR_$42658_storage_ptr",
                "typeString": "struct WitnetCBOR.CBOR"
              }
            }
          },
          {
            "global": false,
            "id": 34383,
            "libraryName": {
              "id": 34379,
              "name": "WitnetCBOR",
              "nameLocations": [
                "330:10:114"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 44174,
              "src": "330:10:114"
            },
            "nodeType": "UsingForDirective",
            "src": "324:39:114",
            "typeName": {
              "baseType": {
                "id": 34381,
                "nodeType": "UserDefinedTypeName",
                "pathNode": {
                  "id": 34380,
                  "name": "WitnetCBOR.CBOR",
                  "nameLocations": [
                    "345:10:114",
                    "356:4:114"
                  ],
                  "nodeType": "IdentifierPath",
                  "referencedDeclaration": 42658,
                  "src": "345:15:114"
                },
                "referencedDeclaration": 42658,
                "src": "345:15:114",
                "typeDescriptions": {
                  "typeIdentifier": "t_struct$_CBOR_$42658_storage_ptr",
                  "typeString": "struct WitnetCBOR.CBOR"
                }
              },
              "id": 34382,
              "nodeType": "ArrayTypeName",
              "src": "345:17:114",
              "typeDescriptions": {
                "typeIdentifier": "t_array$_t_struct$_CBOR_$42658_storage_$dyn_storage_ptr",
                "typeString": "struct WitnetCBOR.CBOR[]"
              }
            }
          },
          {
            "constant": true,
            "id": 34386,
            "mutability": "constant",
            "name": "WITNET_RADON_OPCODES_RESULT_TYPES",
            "nameLocation": "395:33:114",
            "nodeType": "VariableDeclaration",
            "scope": 36466,
            "src": "371:330:114",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bytes_memory_ptr",
              "typeString": "bytes"
            },
            "typeName": {
              "id": 34384,
              "name": "bytes",
              "nodeType": "ElementaryTypeName",
              "src": "371:5:114",
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_storage_ptr",
                "typeString": "bytes"
              }
            },
            "value": {
              "hexValue": "10ffffffffffffffffffffffffffffff040100010203050406071311ff0101ff07ff02ffffffffffffffffffffffffff070304ff04ffffffffffffff03ffffff0405070202ff0404040403ffffffffff05070402040205050505ff04ff04ffff07010203050406070101ff06ffff06ff0203050404000106060707070701ffff",
              "id": 34385,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "hexString",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "440:261:114",
              "typeDescriptions": {
                "typeIdentifier": "t_stringliteral_1ee4defbad2849c0d5df82d80316fb10b4eb4a3be0d757894987011be8223cf6",
                "typeString": "literal_string hex\"10ffffffffffffffffffffffffffffff040100010203050406071311ff0101ff07ff02ffffffffffffffffffffffffff070304ff04ffffffffffffff03ffffff0405070202ff0404040403ffffffffff05070402040205050505ff04ff04ffff07010203050406070101ff06ffff06ff0203050404000106060707070701ffff\""
              }
            },
            "visibility": "internal"
          },
          {
            "errorSelector": "3a3cb621",
            "id": 34399,
            "name": "UnsupportedDataRequestMethod",
            "nameLocation": "1108:28:114",
            "nodeType": "ErrorDefinition",
            "parameters": {
              "id": 34398,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34388,
                  "mutability": "mutable",
                  "name": "method",
                  "nameLocation": "1143:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34399,
                  "src": "1137:12:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 34387,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "1137:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 34390,
                  "mutability": "mutable",
                  "name": "schema",
                  "nameLocation": "1158:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34399,
                  "src": "1151:13:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 34389,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "1151:6:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 34392,
                  "mutability": "mutable",
                  "name": "body",
                  "nameLocation": "1173:4:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34399,
                  "src": "1166:11:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 34391,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "1166:6:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 34397,
                  "mutability": "mutable",
                  "name": "headers",
                  "nameLocation": "1191:7:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34399,
                  "src": "1179:19:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                    "typeString": "string[2][]"
                  },
                  "typeName": {
                    "baseType": {
                      "baseType": {
                        "id": 34393,
                        "name": "string",
                        "nodeType": "ElementaryTypeName",
                        "src": "1179:6:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_string_storage_ptr",
                          "typeString": "string"
                        }
                      },
                      "id": 34395,
                      "length": {
                        "hexValue": "32",
                        "id": 34394,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "1186:1:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_2_by_1",
                          "typeString": "int_const 2"
                        },
                        "value": "2"
                      },
                      "nodeType": "ArrayTypeName",
                      "src": "1179:9:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_string_storage_$2_storage_ptr",
                        "typeString": "string[2]"
                      }
                    },
                    "id": 34396,
                    "nodeType": "ArrayTypeName",
                    "src": "1179:11:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_array$_t_string_storage_$2_storage_$dyn_storage_ptr",
                      "typeString": "string[2][]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1136:63:114"
            },
            "src": "1102:98:114"
          },
          {
            "errorSelector": "7aba1727",
            "id": 34405,
            "name": "UnsupportedRadonDataType",
            "nameLocation": "1212:24:114",
            "nodeType": "ErrorDefinition",
            "parameters": {
              "id": 34404,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34401,
                  "mutability": "mutable",
                  "name": "datatype",
                  "nameLocation": "1243:8:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34405,
                  "src": "1237:14:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 34400,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "1237:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 34403,
                  "mutability": "mutable",
                  "name": "maxlength",
                  "nameLocation": "1261:9:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34405,
                  "src": "1253:17:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 34402,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1253:7:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1236:35:114"
            },
            "src": "1206:66:114"
          },
          {
            "errorSelector": "ddb08eaf",
            "id": 34409,
            "name": "UnsupportedRadonFilterOpcode",
            "nameLocation": "1284:28:114",
            "nodeType": "ErrorDefinition",
            "parameters": {
              "id": 34408,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34407,
                  "mutability": "mutable",
                  "name": "opcode",
                  "nameLocation": "1319:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34409,
                  "src": "1313:12:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 34406,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "1313:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1312:14:114"
            },
            "src": "1278:49:114"
          },
          {
            "errorSelector": "c81bd898",
            "id": 34415,
            "name": "UnsupportedRadonFilterArgs",
            "nameLocation": "1339:26:114",
            "nodeType": "ErrorDefinition",
            "parameters": {
              "id": 34414,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34411,
                  "mutability": "mutable",
                  "name": "opcode",
                  "nameLocation": "1372:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34415,
                  "src": "1366:12:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 34410,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "1366:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 34413,
                  "mutability": "mutable",
                  "name": "args",
                  "nameLocation": "1386:4:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34415,
                  "src": "1380:10:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 34412,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "1380:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1365:26:114"
            },
            "src": "1333:59:114"
          },
          {
            "errorSelector": "a1165d63",
            "id": 34419,
            "name": "UnsupportedRadonReducerOpcode",
            "nameLocation": "1404:29:114",
            "nodeType": "ErrorDefinition",
            "parameters": {
              "id": 34418,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34417,
                  "mutability": "mutable",
                  "name": "opcode",
                  "nameLocation": "1440:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34419,
                  "src": "1434:12:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 34416,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "1434:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1433:14:114"
            },
            "src": "1398:50:114"
          },
          {
            "errorSelector": "0dfab024",
            "id": 34427,
            "name": "UnsupportedRadonReducerScript",
            "nameLocation": "1460:29:114",
            "nodeType": "ErrorDefinition",
            "parameters": {
              "id": 34426,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34421,
                  "mutability": "mutable",
                  "name": "opcode",
                  "nameLocation": "1496:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34427,
                  "src": "1490:12:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 34420,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "1490:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 34423,
                  "mutability": "mutable",
                  "name": "script",
                  "nameLocation": "1510:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34427,
                  "src": "1504:12:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 34422,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "1504:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 34425,
                  "mutability": "mutable",
                  "name": "offset",
                  "nameLocation": "1526:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34427,
                  "src": "1518:14:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 34424,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1518:7:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1489:44:114"
            },
            "src": "1454:80:114"
          },
          {
            "errorSelector": "ce443d33",
            "id": 34433,
            "name": "UnsupportedRadonScript",
            "nameLocation": "1546:22:114",
            "nodeType": "ErrorDefinition",
            "parameters": {
              "id": 34432,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34429,
                  "mutability": "mutable",
                  "name": "script",
                  "nameLocation": "1575:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34433,
                  "src": "1569:12:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 34428,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "1569:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 34431,
                  "mutability": "mutable",
                  "name": "offset",
                  "nameLocation": "1591:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34433,
                  "src": "1583:14:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 34430,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1583:7:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1568:30:114"
            },
            "src": "1540:59:114"
          },
          {
            "errorSelector": "d77a8de8",
            "id": 34441,
            "name": "UnsupportedRadonScriptOpcode",
            "nameLocation": "1611:28:114",
            "nodeType": "ErrorDefinition",
            "parameters": {
              "id": 34440,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34435,
                  "mutability": "mutable",
                  "name": "script",
                  "nameLocation": "1646:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34441,
                  "src": "1640:12:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 34434,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "1640:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 34437,
                  "mutability": "mutable",
                  "name": "cursor",
                  "nameLocation": "1662:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34441,
                  "src": "1654:14:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 34436,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1654:7:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 34439,
                  "mutability": "mutable",
                  "name": "opcode",
                  "nameLocation": "1676:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34441,
                  "src": "1670:12:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 34438,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "1670:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1639:44:114"
            },
            "src": "1605:79:114"
          },
          {
            "errorSelector": "7da1189f",
            "id": 34445,
            "name": "UnsupportedRadonTallyScript",
            "nameLocation": "1696:27:114",
            "nodeType": "ErrorDefinition",
            "parameters": {
              "id": 34444,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34443,
                  "mutability": "mutable",
                  "name": "hash",
                  "nameLocation": "1732:4:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34445,
                  "src": "1724:12:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 34442,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1724:7:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1723:14:114"
            },
            "src": "1690:48:114"
          },
          {
            "body": {
              "id": 34481,
              "nodeType": "Block",
              "src": "2080:313:114",
              "statements": [
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    },
                    "id": 34464,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "commonType": {
                        "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                        "typeString": "enum Witnet.RadonDataTypes"
                      },
                      "id": 34458,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "id": 34454,
                        "name": "_type",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 34449,
                        "src": "2095:5:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                          "typeString": "enum Witnet.RadonDataTypes"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "==",
                      "rightExpression": {
                        "expression": {
                          "expression": {
                            "id": 34455,
                            "name": "Witnet",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 40741,
                            "src": "2104:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                              "typeString": "type(library Witnet)"
                            }
                          },
                          "id": 34456,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "2111:14:114",
                          "memberName": "RadonDataTypes",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37720,
                          "src": "2104:21:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_enum$_RadonDataTypes_$37720_$",
                            "typeString": "type(enum Witnet.RadonDataTypes)"
                          }
                        },
                        "id": 34457,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "memberLocation": "2126:7:114",
                        "memberName": "Integer",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37704,
                        "src": "2104:29:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                          "typeString": "enum Witnet.RadonDataTypes"
                        }
                      },
                      "src": "2095:38:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "||",
                    "rightExpression": {
                      "commonType": {
                        "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                        "typeString": "enum Witnet.RadonDataTypes"
                      },
                      "id": 34463,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "id": 34459,
                        "name": "_type",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 34449,
                        "src": "2150:5:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                          "typeString": "enum Witnet.RadonDataTypes"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "==",
                      "rightExpression": {
                        "expression": {
                          "expression": {
                            "id": 34460,
                            "name": "Witnet",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 40741,
                            "src": "2159:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                              "typeString": "type(library Witnet)"
                            }
                          },
                          "id": 34461,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "2166:14:114",
                          "memberName": "RadonDataTypes",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37720,
                          "src": "2159:21:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_enum$_RadonDataTypes_$37720_$",
                            "typeString": "type(enum Witnet.RadonDataTypes)"
                          }
                        },
                        "id": 34462,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "memberLocation": "2181:5:114",
                        "memberName": "Float",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37705,
                        "src": "2159:27:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                          "typeString": "enum Witnet.RadonDataTypes"
                        }
                      },
                      "src": "2150:36:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "src": "2095:91:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "condition": {
                      "commonType": {
                        "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                        "typeString": "enum Witnet.RadonDataTypes"
                      },
                      "id": 34472,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "id": 34468,
                        "name": "_type",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 34449,
                        "src": "2243:5:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                          "typeString": "enum Witnet.RadonDataTypes"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "==",
                      "rightExpression": {
                        "expression": {
                          "expression": {
                            "id": 34469,
                            "name": "Witnet",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 40741,
                            "src": "2252:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                              "typeString": "type(library Witnet)"
                            }
                          },
                          "id": 34470,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "2259:14:114",
                          "memberName": "RadonDataTypes",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37720,
                          "src": "2252:21:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_enum$_RadonDataTypes_$37720_$",
                            "typeString": "type(enum Witnet.RadonDataTypes)"
                          }
                        },
                        "id": 34471,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "memberLocation": "2274:4:114",
                        "memberName": "Bool",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37702,
                        "src": "2252:26:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                          "typeString": "enum Witnet.RadonDataTypes"
                        }
                      },
                      "src": "2243:35:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "falseBody": {
                      "id": 34478,
                      "nodeType": "Block",
                      "src": "2321:65:114",
                      "statements": [
                        {
                          "expression": {
                            "hexValue": "30",
                            "id": 34476,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "2372:1:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "functionReturnParameters": 34453,
                          "id": 34477,
                          "nodeType": "Return",
                          "src": "2365:8:114"
                        }
                      ]
                    },
                    "id": 34479,
                    "nodeType": "IfStatement",
                    "src": "2239:147:114",
                    "trueBody": {
                      "id": 34475,
                      "nodeType": "Block",
                      "src": "2280:35:114",
                      "statements": [
                        {
                          "expression": {
                            "hexValue": "31",
                            "id": 34473,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "2302:1:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_1_by_1",
                              "typeString": "int_const 1"
                            },
                            "value": "1"
                          },
                          "functionReturnParameters": 34453,
                          "id": 34474,
                          "nodeType": "Return",
                          "src": "2295:8:114"
                        }
                      ]
                    }
                  },
                  "id": 34480,
                  "nodeType": "IfStatement",
                  "src": "2091:295:114",
                  "trueBody": {
                    "id": 34467,
                    "nodeType": "Block",
                    "src": "2198:35:114",
                    "statements": [
                      {
                        "expression": {
                          "hexValue": "39",
                          "id": 34465,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "2220:1:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_9_by_1",
                            "typeString": "int_const 9"
                          },
                          "value": "9"
                        },
                        "functionReturnParameters": 34453,
                        "id": 34466,
                        "nodeType": "Return",
                        "src": "2213:8:114"
                      }
                    ]
                  }
                }
              ]
            },
            "documentation": {
              "id": 34446,
              "nodeType": "StructuredDocumentation",
              "src": "1746:254:114",
              "text": "===============================================================================================================\n --- WitOracleRadonEncodingLib internal methods --------------------------------------------------------------------------------"
            },
            "id": 34482,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "size",
            "nameLocation": "2015:4:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 34450,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34449,
                  "mutability": "mutable",
                  "name": "_type",
                  "nameLocation": "2042:5:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34482,
                  "src": "2020:27:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                    "typeString": "enum Witnet.RadonDataTypes"
                  },
                  "typeName": {
                    "id": 34448,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 34447,
                      "name": "Witnet.RadonDataTypes",
                      "nameLocations": [
                        "2020:6:114",
                        "2027:14:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37720,
                      "src": "2020:21:114"
                    },
                    "referencedDeclaration": 37720,
                    "src": "2020:21:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                      "typeString": "enum Witnet.RadonDataTypes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2019:29:114"
            },
            "returnParameters": {
              "id": 34453,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34452,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 34482,
                  "src": "2072:6:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint16",
                    "typeString": "uint16"
                  },
                  "typeName": {
                    "id": 34451,
                    "name": "uint16",
                    "nodeType": "ElementaryTypeName",
                    "src": "2072:6:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint16",
                      "typeString": "uint16"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2071:8:114"
            },
            "scope": 36466,
            "src": "2006:387:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "internal"
          },
          {
            "body": {
              "id": 34612,
              "nodeType": "Block",
              "src": "2920:934:114",
              "statements": [
                {
                  "assignments": [
                    34493
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 34493,
                      "mutability": "mutable",
                      "name": "len",
                      "nameLocation": "2936:3:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 34612,
                      "src": "2931:8:114",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 34492,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "2931:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 34496,
                  "initialValue": {
                    "expression": {
                      "id": 34494,
                      "name": "buf",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 34485,
                      "src": "2942:3:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes memory"
                      }
                    },
                    "id": 34495,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberLocation": "2946:6:114",
                    "memberName": "length",
                    "nodeType": "MemberAccess",
                    "src": "2942:10:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "2931:21:114"
                },
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 34499,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "id": 34497,
                      "name": "len",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 34493,
                      "src": "2967:3:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "<",
                    "rightExpression": {
                      "hexValue": "3233",
                      "id": 34498,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "2973:2:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_23_by_1",
                        "typeString": "int_const 23"
                      },
                      "value": "23"
                    },
                    "src": "2967:8:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "id": 34610,
                    "nodeType": "Block",
                    "src": "3125:722:114",
                    "statements": [
                      {
                        "assignments": [
                          34519
                        ],
                        "declarations": [
                          {
                            "constant": false,
                            "id": 34519,
                            "mutability": "mutable",
                            "name": "buf0",
                            "nameLocation": "3146:4:114",
                            "nodeType": "VariableDeclaration",
                            "scope": 34610,
                            "src": "3140:10:114",
                            "stateVariable": false,
                            "storageLocation": "default",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint8",
                              "typeString": "uint8"
                            },
                            "typeName": {
                              "id": 34518,
                              "name": "uint8",
                              "nodeType": "ElementaryTypeName",
                              "src": "3140:5:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint8",
                                "typeString": "uint8"
                              }
                            },
                            "visibility": "internal"
                          }
                        ],
                        "id": 34527,
                        "initialValue": {
                          "arguments": [
                            {
                              "components": [
                                {
                                  "commonType": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  },
                                  "id": 34524,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "id": 34522,
                                    "name": "majorType",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 34487,
                                    "src": "3160:9:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": "<<",
                                  "rightExpression": {
                                    "hexValue": "35",
                                    "id": 34523,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "number",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "3173:1:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_rational_5_by_1",
                                      "typeString": "int_const 5"
                                    },
                                    "value": "5"
                                  },
                                  "src": "3160:14:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                }
                              ],
                              "id": 34525,
                              "isConstant": false,
                              "isInlineArray": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "TupleExpression",
                              "src": "3159:16:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            ],
                            "id": 34521,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "ElementaryTypeNameExpression",
                            "src": "3153:5:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_uint8_$",
                              "typeString": "type(uint8)"
                            },
                            "typeName": {
                              "id": 34520,
                              "name": "uint8",
                              "nodeType": "ElementaryTypeName",
                              "src": "3153:5:114",
                              "typeDescriptions": {}
                            }
                          },
                          "id": 34526,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "typeConversion",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "3153:23:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint8",
                            "typeString": "uint8"
                          }
                        },
                        "nodeType": "VariableDeclarationStatement",
                        "src": "3140:36:114"
                      },
                      {
                        "assignments": [
                          34529
                        ],
                        "declarations": [
                          {
                            "constant": false,
                            "id": 34529,
                            "mutability": "mutable",
                            "name": "buf1",
                            "nameLocation": "3204:4:114",
                            "nodeType": "VariableDeclaration",
                            "scope": 34610,
                            "src": "3191:17:114",
                            "stateVariable": false,
                            "storageLocation": "memory",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes"
                            },
                            "typeName": {
                              "id": 34528,
                              "name": "bytes",
                              "nodeType": "ElementaryTypeName",
                              "src": "3191:5:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_storage_ptr",
                                "typeString": "bytes"
                              }
                            },
                            "visibility": "internal"
                          }
                        ],
                        "id": 34530,
                        "nodeType": "VariableDeclarationStatement",
                        "src": "3191:17:114"
                      },
                      {
                        "condition": {
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "id": 34533,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "id": 34531,
                            "name": "len",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 34493,
                            "src": "3227:3:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "<=",
                          "rightExpression": {
                            "hexValue": "30786666",
                            "id": 34532,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "3234:4:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_255_by_1",
                              "typeString": "int_const 255"
                            },
                            "value": "0xff"
                          },
                          "src": "3227:11:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "falseBody": {
                          "condition": {
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 34551,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "id": 34549,
                              "name": "len",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 34493,
                              "src": "3365:3:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "<=",
                            "rightExpression": {
                              "hexValue": "307866666666",
                              "id": 34550,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "3372:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_65535_by_1",
                                "typeString": "int_const 65535"
                              },
                              "value": "0xffff"
                            },
                            "src": "3365:13:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "falseBody": {
                            "condition": {
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "id": 34569,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "id": 34567,
                                "name": "len",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 34493,
                                "src": "3490:3:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "<=",
                              "rightExpression": {
                                "hexValue": "30786666666666666666",
                                "id": 34568,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "3497:10:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_4294967295_by_1",
                                  "typeString": "int_const 4294967295"
                                },
                                "value": "0xffffffff"
                              },
                              "src": "3490:17:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            "falseBody": {
                              "id": 34599,
                              "nodeType": "Block",
                              "src": "3615:100:114",
                              "statements": [
                                {
                                  "expression": {
                                    "id": 34587,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "leftHandSide": {
                                      "id": 34585,
                                      "name": "buf0",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 34519,
                                      "src": "3634:4:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint8",
                                        "typeString": "uint8"
                                      }
                                    },
                                    "nodeType": "Assignment",
                                    "operator": "|=",
                                    "rightHandSide": {
                                      "hexValue": "3237",
                                      "id": 34586,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "number",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "3642:2:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_rational_27_by_1",
                                        "typeString": "int_const 27"
                                      },
                                      "value": "27"
                                    },
                                    "src": "3634:10:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint8",
                                      "typeString": "uint8"
                                    }
                                  },
                                  "id": 34588,
                                  "nodeType": "ExpressionStatement",
                                  "src": "3634:10:114"
                                },
                                {
                                  "expression": {
                                    "id": 34597,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "leftHandSide": {
                                      "id": 34589,
                                      "name": "buf1",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 34529,
                                      "src": "3663:4:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes_memory_ptr",
                                        "typeString": "bytes memory"
                                      }
                                    },
                                    "nodeType": "Assignment",
                                    "operator": "=",
                                    "rightHandSide": {
                                      "arguments": [
                                        {
                                          "arguments": [
                                            {
                                              "id": 34594,
                                              "name": "len",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 34493,
                                              "src": "3694:3:114",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            }
                                          ],
                                          "expression": {
                                            "argumentTypes": [
                                              {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            ],
                                            "id": 34593,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "lValueRequested": false,
                                            "nodeType": "ElementaryTypeNameExpression",
                                            "src": "3687:6:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_type$_t_uint64_$",
                                              "typeString": "type(uint64)"
                                            },
                                            "typeName": {
                                              "id": 34592,
                                              "name": "uint64",
                                              "nodeType": "ElementaryTypeName",
                                              "src": "3687:6:114",
                                              "typeDescriptions": {}
                                            }
                                          },
                                          "id": 34595,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "kind": "typeConversion",
                                          "lValueRequested": false,
                                          "nameLocations": [],
                                          "names": [],
                                          "nodeType": "FunctionCall",
                                          "src": "3687:11:114",
                                          "tryCall": false,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint64",
                                            "typeString": "uint64"
                                          }
                                        }
                                      ],
                                      "expression": {
                                        "argumentTypes": [
                                          {
                                            "typeIdentifier": "t_uint64",
                                            "typeString": "uint64"
                                          }
                                        ],
                                        "expression": {
                                          "id": 34590,
                                          "name": "abi",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 4294967295,
                                          "src": "3670:3:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_magic_abi",
                                            "typeString": "abi"
                                          }
                                        },
                                        "id": 34591,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "lValueRequested": false,
                                        "memberLocation": "3674:12:114",
                                        "memberName": "encodePacked",
                                        "nodeType": "MemberAccess",
                                        "src": "3670:16:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                                          "typeString": "function () pure returns (bytes memory)"
                                        }
                                      },
                                      "id": 34596,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "functionCall",
                                      "lValueRequested": false,
                                      "nameLocations": [],
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "3670:29:114",
                                      "tryCall": false,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes_memory_ptr",
                                        "typeString": "bytes memory"
                                      }
                                    },
                                    "src": "3663:36:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    }
                                  },
                                  "id": 34598,
                                  "nodeType": "ExpressionStatement",
                                  "src": "3663:36:114"
                                }
                              ]
                            },
                            "id": 34600,
                            "nodeType": "IfStatement",
                            "src": "3486:229:114",
                            "trueBody": {
                              "id": 34584,
                              "nodeType": "Block",
                              "src": "3509:100:114",
                              "statements": [
                                {
                                  "expression": {
                                    "id": 34572,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "leftHandSide": {
                                      "id": 34570,
                                      "name": "buf0",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 34519,
                                      "src": "3528:4:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint8",
                                        "typeString": "uint8"
                                      }
                                    },
                                    "nodeType": "Assignment",
                                    "operator": "|=",
                                    "rightHandSide": {
                                      "hexValue": "3236",
                                      "id": 34571,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "number",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "3536:2:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_rational_26_by_1",
                                        "typeString": "int_const 26"
                                      },
                                      "value": "26"
                                    },
                                    "src": "3528:10:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint8",
                                      "typeString": "uint8"
                                    }
                                  },
                                  "id": 34573,
                                  "nodeType": "ExpressionStatement",
                                  "src": "3528:10:114"
                                },
                                {
                                  "expression": {
                                    "id": 34582,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "leftHandSide": {
                                      "id": 34574,
                                      "name": "buf1",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 34529,
                                      "src": "3557:4:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes_memory_ptr",
                                        "typeString": "bytes memory"
                                      }
                                    },
                                    "nodeType": "Assignment",
                                    "operator": "=",
                                    "rightHandSide": {
                                      "arguments": [
                                        {
                                          "arguments": [
                                            {
                                              "id": 34579,
                                              "name": "len",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 34493,
                                              "src": "3588:3:114",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            }
                                          ],
                                          "expression": {
                                            "argumentTypes": [
                                              {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            ],
                                            "id": 34578,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "lValueRequested": false,
                                            "nodeType": "ElementaryTypeNameExpression",
                                            "src": "3581:6:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_type$_t_uint32_$",
                                              "typeString": "type(uint32)"
                                            },
                                            "typeName": {
                                              "id": 34577,
                                              "name": "uint32",
                                              "nodeType": "ElementaryTypeName",
                                              "src": "3581:6:114",
                                              "typeDescriptions": {}
                                            }
                                          },
                                          "id": 34580,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "kind": "typeConversion",
                                          "lValueRequested": false,
                                          "nameLocations": [],
                                          "names": [],
                                          "nodeType": "FunctionCall",
                                          "src": "3581:11:114",
                                          "tryCall": false,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint32",
                                            "typeString": "uint32"
                                          }
                                        }
                                      ],
                                      "expression": {
                                        "argumentTypes": [
                                          {
                                            "typeIdentifier": "t_uint32",
                                            "typeString": "uint32"
                                          }
                                        ],
                                        "expression": {
                                          "id": 34575,
                                          "name": "abi",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 4294967295,
                                          "src": "3564:3:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_magic_abi",
                                            "typeString": "abi"
                                          }
                                        },
                                        "id": 34576,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "lValueRequested": false,
                                        "memberLocation": "3568:12:114",
                                        "memberName": "encodePacked",
                                        "nodeType": "MemberAccess",
                                        "src": "3564:16:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                                          "typeString": "function () pure returns (bytes memory)"
                                        }
                                      },
                                      "id": 34581,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "functionCall",
                                      "lValueRequested": false,
                                      "nameLocations": [],
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "3564:29:114",
                                      "tryCall": false,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes_memory_ptr",
                                        "typeString": "bytes memory"
                                      }
                                    },
                                    "src": "3557:36:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    }
                                  },
                                  "id": 34583,
                                  "nodeType": "ExpressionStatement",
                                  "src": "3557:36:114"
                                }
                              ]
                            }
                          },
                          "id": 34601,
                          "nodeType": "IfStatement",
                          "src": "3361:354:114",
                          "trueBody": {
                            "id": 34566,
                            "nodeType": "Block",
                            "src": "3380:100:114",
                            "statements": [
                              {
                                "expression": {
                                  "id": 34554,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftHandSide": {
                                    "id": 34552,
                                    "name": "buf0",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 34519,
                                    "src": "3399:4:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint8",
                                      "typeString": "uint8"
                                    }
                                  },
                                  "nodeType": "Assignment",
                                  "operator": "|=",
                                  "rightHandSide": {
                                    "hexValue": "3235",
                                    "id": 34553,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "number",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "3407:2:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_rational_25_by_1",
                                      "typeString": "int_const 25"
                                    },
                                    "value": "25"
                                  },
                                  "src": "3399:10:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint8",
                                    "typeString": "uint8"
                                  }
                                },
                                "id": 34555,
                                "nodeType": "ExpressionStatement",
                                "src": "3399:10:114"
                              },
                              {
                                "expression": {
                                  "id": 34564,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftHandSide": {
                                    "id": 34556,
                                    "name": "buf1",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 34529,
                                    "src": "3428:4:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    }
                                  },
                                  "nodeType": "Assignment",
                                  "operator": "=",
                                  "rightHandSide": {
                                    "arguments": [
                                      {
                                        "arguments": [
                                          {
                                            "id": 34561,
                                            "name": "len",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 34493,
                                            "src": "3459:3:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          }
                                        ],
                                        "expression": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          ],
                                          "id": 34560,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "lValueRequested": false,
                                          "nodeType": "ElementaryTypeNameExpression",
                                          "src": "3452:6:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_type$_t_uint16_$",
                                            "typeString": "type(uint16)"
                                          },
                                          "typeName": {
                                            "id": 34559,
                                            "name": "uint16",
                                            "nodeType": "ElementaryTypeName",
                                            "src": "3452:6:114",
                                            "typeDescriptions": {}
                                          }
                                        },
                                        "id": 34562,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "kind": "typeConversion",
                                        "lValueRequested": false,
                                        "nameLocations": [],
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "3452:11:114",
                                        "tryCall": false,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint16",
                                          "typeString": "uint16"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_uint16",
                                          "typeString": "uint16"
                                        }
                                      ],
                                      "expression": {
                                        "id": 34557,
                                        "name": "abi",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 4294967295,
                                        "src": "3435:3:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_magic_abi",
                                          "typeString": "abi"
                                        }
                                      },
                                      "id": 34558,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "memberLocation": "3439:12:114",
                                      "memberName": "encodePacked",
                                      "nodeType": "MemberAccess",
                                      "src": "3435:16:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                                        "typeString": "function () pure returns (bytes memory)"
                                      }
                                    },
                                    "id": 34563,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "functionCall",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "3435:29:114",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    }
                                  },
                                  "src": "3428:36:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "id": 34565,
                                "nodeType": "ExpressionStatement",
                                "src": "3428:36:114"
                              }
                            ]
                          }
                        },
                        "id": 34602,
                        "nodeType": "IfStatement",
                        "src": "3223:492:114",
                        "trueBody": {
                          "id": 34548,
                          "nodeType": "Block",
                          "src": "3240:115:114",
                          "statements": [
                            {
                              "expression": {
                                "id": 34536,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "id": 34534,
                                  "name": "buf0",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 34519,
                                  "src": "3259:4:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint8",
                                    "typeString": "uint8"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "|=",
                                "rightHandSide": {
                                  "hexValue": "3234",
                                  "id": 34535,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "3267:2:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_24_by_1",
                                    "typeString": "int_const 24"
                                  },
                                  "value": "24"
                                },
                                "src": "3259:10:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              },
                              "id": 34537,
                              "nodeType": "ExpressionStatement",
                              "src": "3259:10:114"
                            },
                            {
                              "expression": {
                                "id": 34546,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "id": 34538,
                                  "name": "buf1",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 34529,
                                  "src": "3288:4:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "arguments": [
                                    {
                                      "arguments": [
                                        {
                                          "id": 34543,
                                          "name": "len",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 34493,
                                          "src": "3318:3:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        }
                                      ],
                                      "expression": {
                                        "argumentTypes": [
                                          {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        ],
                                        "id": 34542,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "lValueRequested": false,
                                        "nodeType": "ElementaryTypeNameExpression",
                                        "src": "3312:5:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_type$_t_uint8_$",
                                          "typeString": "type(uint8)"
                                        },
                                        "typeName": {
                                          "id": 34541,
                                          "name": "uint8",
                                          "nodeType": "ElementaryTypeName",
                                          "src": "3312:5:114",
                                          "typeDescriptions": {}
                                        }
                                      },
                                      "id": 34544,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "typeConversion",
                                      "lValueRequested": false,
                                      "nameLocations": [],
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "3312:10:114",
                                      "tryCall": false,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint8",
                                        "typeString": "uint8"
                                      }
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": [
                                      {
                                        "typeIdentifier": "t_uint8",
                                        "typeString": "uint8"
                                      }
                                    ],
                                    "expression": {
                                      "id": 34539,
                                      "name": "abi",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 4294967295,
                                      "src": "3295:3:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_magic_abi",
                                        "typeString": "abi"
                                      }
                                    },
                                    "id": 34540,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "lValueRequested": false,
                                    "memberLocation": "3299:12:114",
                                    "memberName": "encodePacked",
                                    "nodeType": "MemberAccess",
                                    "src": "3295:16:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                                      "typeString": "function () pure returns (bytes memory)"
                                    }
                                  },
                                  "id": 34545,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "functionCall",
                                  "lValueRequested": false,
                                  "nameLocations": [],
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "3295:28:114",
                                  "tryCall": false,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "src": "3288:35:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              },
                              "id": 34547,
                              "nodeType": "ExpressionStatement",
                              "src": "3288:35:114"
                            }
                          ]
                        }
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "id": 34605,
                              "name": "buf0",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 34519,
                              "src": "3771:4:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint8",
                                "typeString": "uint8"
                              }
                            },
                            {
                              "id": 34606,
                              "name": "buf1",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 34529,
                              "src": "3794:4:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            },
                            {
                              "id": 34607,
                              "name": "buf",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 34485,
                              "src": "3817:3:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint8",
                                "typeString": "uint8"
                              },
                              {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              },
                              {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            ],
                            "expression": {
                              "id": 34603,
                              "name": "abi",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 4294967295,
                              "src": "3736:3:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_magic_abi",
                                "typeString": "abi"
                              }
                            },
                            "id": 34604,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "memberLocation": "3740:12:114",
                            "memberName": "encodePacked",
                            "nodeType": "MemberAccess",
                            "src": "3736:16:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                              "typeString": "function () pure returns (bytes memory)"
                            }
                          },
                          "id": 34608,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "3736:99:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        "functionReturnParameters": 34491,
                        "id": 34609,
                        "nodeType": "Return",
                        "src": "3729:106:114"
                      }
                    ]
                  },
                  "id": 34611,
                  "nodeType": "IfStatement",
                  "src": "2963:884:114",
                  "trueBody": {
                    "id": 34517,
                    "nodeType": "Block",
                    "src": "2977:142:114",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "arguments": [
                                {
                                  "commonType": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  },
                                  "id": 34512,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "components": [
                                      {
                                        "commonType": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        },
                                        "id": 34506,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftExpression": {
                                          "id": 34504,
                                          "name": "majorType",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 34487,
                                          "src": "3041:9:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "nodeType": "BinaryOperation",
                                        "operator": "<<",
                                        "rightExpression": {
                                          "hexValue": "35",
                                          "id": 34505,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "number",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "3054:1:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_rational_5_by_1",
                                            "typeString": "int_const 5"
                                          },
                                          "value": "5"
                                        },
                                        "src": "3041:14:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      }
                                    ],
                                    "id": 34507,
                                    "isConstant": false,
                                    "isInlineArray": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "TupleExpression",
                                    "src": "3040:16:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": "|",
                                  "rightExpression": {
                                    "arguments": [
                                      {
                                        "id": 34510,
                                        "name": "len",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 34493,
                                        "src": "3065:3:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      ],
                                      "id": 34509,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "nodeType": "ElementaryTypeNameExpression",
                                      "src": "3059:5:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_uint8_$",
                                        "typeString": "type(uint8)"
                                      },
                                      "typeName": {
                                        "id": 34508,
                                        "name": "uint8",
                                        "nodeType": "ElementaryTypeName",
                                        "src": "3059:5:114",
                                        "typeDescriptions": {}
                                      }
                                    },
                                    "id": 34511,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "3059:10:114",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint8",
                                      "typeString": "uint8"
                                    }
                                  },
                                  "src": "3040:29:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                ],
                                "id": 34503,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "3034:5:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_uint8_$",
                                  "typeString": "type(uint8)"
                                },
                                "typeName": {
                                  "id": 34502,
                                  "name": "uint8",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "3034:5:114",
                                  "typeDescriptions": {}
                                }
                              },
                              "id": 34513,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "3034:36:114",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint8",
                                "typeString": "uint8"
                              }
                            },
                            {
                              "id": 34514,
                              "name": "buf",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 34485,
                              "src": "3089:3:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint8",
                                "typeString": "uint8"
                              },
                              {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            ],
                            "expression": {
                              "id": 34500,
                              "name": "abi",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 4294967295,
                              "src": "2999:3:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_magic_abi",
                                "typeString": "abi"
                              }
                            },
                            "id": 34501,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "memberLocation": "3003:12:114",
                            "memberName": "encodePacked",
                            "nodeType": "MemberAccess",
                            "src": "2999:16:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                              "typeString": "function () pure returns (bytes memory)"
                            }
                          },
                          "id": 34515,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "2999:108:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        "functionReturnParameters": 34491,
                        "id": 34516,
                        "nodeType": "Return",
                        "src": "2992:115:114"
                      }
                    ]
                  }
                }
              ]
            },
            "documentation": {
              "id": 34483,
              "nodeType": "StructuredDocumentation",
              "src": "2663:143:114",
              "text": "@notice Encode bytes array into given major type (UTF-8 not yet supported)\n @param buf Bytes array\n @return Marshaled bytes"
            },
            "functionSelector": "a8c06a13",
            "id": 34613,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "encode",
            "nameLocation": "2821:6:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 34488,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34485,
                  "mutability": "mutable",
                  "name": "buf",
                  "nameLocation": "2841:3:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34613,
                  "src": "2828:16:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 34484,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "2828:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 34487,
                  "mutability": "mutable",
                  "name": "majorType",
                  "nameLocation": "2851:9:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34613,
                  "src": "2846:14:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 34486,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "2846:4:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2827:34:114"
            },
            "returnParameters": {
              "id": 34491,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34490,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 34613,
                  "src": "2901:12:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 34489,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "2901:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2900:14:114"
            },
            "scope": 36466,
            "src": "2812:1042:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 34627,
              "nodeType": "Block",
              "src": "4055:66:114",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "id": 34622,
                        "name": "buf",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 34616,
                        "src": "4080:3:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "expression": {
                          "id": 34623,
                          "name": "WitnetCBOR",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 44174,
                          "src": "4085:10:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_WitnetCBOR_$44174_$",
                            "typeString": "type(library WitnetCBOR)"
                          }
                        },
                        "id": 34624,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "memberLocation": "4096:16:114",
                        "memberName": "MAJOR_TYPE_BYTES",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 42667,
                        "src": "4085:27:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint8",
                          "typeString": "uint8"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_uint8",
                          "typeString": "uint8"
                        }
                      ],
                      "id": 34621,
                      "name": "encode",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        34613,
                        34628,
                        34646,
                        34740,
                        35013,
                        35103,
                        35199,
                        35246,
                        35315,
                        35335,
                        35403
                      ],
                      "referencedDeclaration": 34613,
                      "src": "4073:6:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes_memory_ptr_$",
                        "typeString": "function (bytes memory,uint256) pure returns (bytes memory)"
                      }
                    },
                    "id": 34625,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4073:40:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "functionReturnParameters": 34620,
                  "id": 34626,
                  "nodeType": "Return",
                  "src": "4066:47:114"
                }
              ]
            },
            "documentation": {
              "id": 34614,
              "nodeType": "StructuredDocumentation",
              "src": "3862:95:114",
              "text": "@notice Encode bytes array.\n @param buf Bytes array\n @return Mashaled bytes"
            },
            "functionSelector": "12496a1b",
            "id": 34628,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "encode",
            "nameLocation": "3972:6:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 34617,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34616,
                  "mutability": "mutable",
                  "name": "buf",
                  "nameLocation": "3992:3:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34628,
                  "src": "3979:16:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 34615,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "3979:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3978:18:114"
            },
            "returnParameters": {
              "id": 34620,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34619,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 34628,
                  "src": "4036:12:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 34618,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "4036:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4035:14:114"
            },
            "scope": 36466,
            "src": "3963:158:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 34645,
              "nodeType": "Block",
              "src": "4353:74:114",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "id": 34639,
                            "name": "str",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 34631,
                            "src": "4384:3:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            }
                          ],
                          "id": 34638,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "4378:5:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                            "typeString": "type(bytes storage pointer)"
                          },
                          "typeName": {
                            "id": 34637,
                            "name": "bytes",
                            "nodeType": "ElementaryTypeName",
                            "src": "4378:5:114",
                            "typeDescriptions": {}
                          }
                        },
                        "id": 34640,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "4378:10:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "expression": {
                          "id": 34641,
                          "name": "WitnetCBOR",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 44174,
                          "src": "4390:10:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_WitnetCBOR_$44174_$",
                            "typeString": "type(library WitnetCBOR)"
                          }
                        },
                        "id": 34642,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "memberLocation": "4401:17:114",
                        "memberName": "MAJOR_TYPE_STRING",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 42670,
                        "src": "4390:28:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint8",
                          "typeString": "uint8"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_uint8",
                          "typeString": "uint8"
                        }
                      ],
                      "id": 34636,
                      "name": "encode",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        34613,
                        34628,
                        34646,
                        34740,
                        35013,
                        35103,
                        35199,
                        35246,
                        35315,
                        35335,
                        35403
                      ],
                      "referencedDeclaration": 34613,
                      "src": "4371:6:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes_memory_ptr_$",
                        "typeString": "function (bytes memory,uint256) pure returns (bytes memory)"
                      }
                    },
                    "id": 34643,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "4371:48:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "functionReturnParameters": 34635,
                  "id": 34644,
                  "nodeType": "Return",
                  "src": "4364:55:114"
                }
              ]
            },
            "documentation": {
              "id": 34629,
              "nodeType": "StructuredDocumentation",
              "src": "4130:124:114",
              "text": "@notice Encode string array (UTF-8 not yet supported).\n @param str String bytes.\n @return Mashaled bytes"
            },
            "functionSelector": "6a11b2a8",
            "id": 34646,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "encode",
            "nameLocation": "4269:6:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 34632,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34631,
                  "mutability": "mutable",
                  "name": "str",
                  "nameLocation": "4290:3:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34646,
                  "src": "4276:17:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 34630,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4276:6:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4275:19:114"
            },
            "returnParameters": {
              "id": 34635,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34634,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 34646,
                  "src": "4334:12:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 34633,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "4334:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4333:14:114"
            },
            "scope": 36466,
            "src": "4260:167:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 34739,
              "nodeType": "Block",
              "src": "4753:788:114",
              "statements": [
                {
                  "id": 34738,
                  "nodeType": "UncheckedBlock",
                  "src": "4764:770:114",
                  "statements": [
                    {
                      "assignments": [
                        34657
                      ],
                      "declarations": [
                        {
                          "constant": false,
                          "id": 34657,
                          "mutability": "mutable",
                          "name": "tmp",
                          "nameLocation": "4951:3:114",
                          "nodeType": "VariableDeclaration",
                          "scope": 34738,
                          "src": "4944:10:114",
                          "stateVariable": false,
                          "storageLocation": "default",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint64",
                            "typeString": "uint64"
                          },
                          "typeName": {
                            "id": 34656,
                            "name": "uint64",
                            "nodeType": "ElementaryTypeName",
                            "src": "4944:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          "visibility": "internal"
                        }
                      ],
                      "id": 34659,
                      "initialValue": {
                        "id": 34658,
                        "name": "n",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 34649,
                        "src": "4957:1:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        }
                      },
                      "nodeType": "VariableDeclarationStatement",
                      "src": "4944:14:114"
                    },
                    {
                      "assignments": [
                        34661
                      ],
                      "declarations": [
                        {
                          "constant": false,
                          "id": 34661,
                          "mutability": "mutable",
                          "name": "numBytes",
                          "nameLocation": "4980:8:114",
                          "nodeType": "VariableDeclaration",
                          "scope": 34738,
                          "src": "4973:15:114",
                          "stateVariable": false,
                          "storageLocation": "default",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint64",
                            "typeString": "uint64"
                          },
                          "typeName": {
                            "id": 34660,
                            "name": "uint64",
                            "nodeType": "ElementaryTypeName",
                            "src": "4973:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          "visibility": "internal"
                        }
                      ],
                      "id": 34663,
                      "initialValue": {
                        "hexValue": "32",
                        "id": 34662,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "4991:1:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_2_by_1",
                          "typeString": "int_const 2"
                        },
                        "value": "2"
                      },
                      "nodeType": "VariableDeclarationStatement",
                      "src": "4973:19:114"
                    },
                    {
                      "body": {
                        "id": 34677,
                        "nodeType": "Block",
                        "src": "5026:81:114",
                        "statements": [
                          {
                            "expression": {
                              "id": 34671,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftHandSide": {
                                "id": 34667,
                                "name": "tmp",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 34657,
                                "src": "5045:3:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint64",
                                  "typeString": "uint64"
                                }
                              },
                              "nodeType": "Assignment",
                              "operator": "=",
                              "rightHandSide": {
                                "commonType": {
                                  "typeIdentifier": "t_uint64",
                                  "typeString": "uint64"
                                },
                                "id": 34670,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "id": 34668,
                                  "name": "tmp",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 34657,
                                  "src": "5051:3:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint64",
                                    "typeString": "uint64"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": ">>",
                                "rightExpression": {
                                  "hexValue": "37",
                                  "id": 34669,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "5058:1:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_7_by_1",
                                    "typeString": "int_const 7"
                                  },
                                  "value": "7"
                                },
                                "src": "5051:8:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint64",
                                  "typeString": "uint64"
                                }
                              },
                              "src": "5045:14:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint64",
                                "typeString": "uint64"
                              }
                            },
                            "id": 34672,
                            "nodeType": "ExpressionStatement",
                            "src": "5045:14:114"
                          },
                          {
                            "expression": {
                              "id": 34675,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftHandSide": {
                                "id": 34673,
                                "name": "numBytes",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 34661,
                                "src": "5078:8:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint64",
                                  "typeString": "uint64"
                                }
                              },
                              "nodeType": "Assignment",
                              "operator": "+=",
                              "rightHandSide": {
                                "hexValue": "31",
                                "id": 34674,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "5090:1:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_1_by_1",
                                  "typeString": "int_const 1"
                                },
                                "value": "1"
                              },
                              "src": "5078:13:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint64",
                                "typeString": "uint64"
                              }
                            },
                            "id": 34676,
                            "nodeType": "ExpressionStatement",
                            "src": "5078:13:114"
                          }
                        ]
                      },
                      "condition": {
                        "commonType": {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        },
                        "id": 34666,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "id": 34664,
                          "name": "tmp",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 34657,
                          "src": "5014:3:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint64",
                            "typeString": "uint64"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": ">",
                        "rightExpression": {
                          "hexValue": "30783746",
                          "id": 34665,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "5020:4:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_127_by_1",
                            "typeString": "int_const 127"
                          },
                          "value": "0x7F"
                        },
                        "src": "5014:10:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      "id": 34678,
                      "nodeType": "WhileStatement",
                      "src": "5007:100:114"
                    },
                    {
                      "expression": {
                        "id": 34684,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftHandSide": {
                          "id": 34679,
                          "name": "buf",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 34654,
                          "src": "5121:3:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        "nodeType": "Assignment",
                        "operator": "=",
                        "rightHandSide": {
                          "arguments": [
                            {
                              "id": 34682,
                              "name": "numBytes",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 34661,
                              "src": "5137:8:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint64",
                                "typeString": "uint64"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint64",
                                "typeString": "uint64"
                              }
                            ],
                            "id": 34681,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "nodeType": "NewExpression",
                            "src": "5127:9:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$",
                              "typeString": "function (uint256) pure returns (bytes memory)"
                            },
                            "typeName": {
                              "id": 34680,
                              "name": "bytes",
                              "nodeType": "ElementaryTypeName",
                              "src": "5131:5:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_storage_ptr",
                                "typeString": "bytes"
                              }
                            }
                          },
                          "id": 34683,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "5127:19:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        "src": "5121:25:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      "id": 34685,
                      "nodeType": "ExpressionStatement",
                      "src": "5121:25:114"
                    },
                    {
                      "expression": {
                        "id": 34688,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftHandSide": {
                          "id": 34686,
                          "name": "tmp",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 34657,
                          "src": "5161:3:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint64",
                            "typeString": "uint64"
                          }
                        },
                        "nodeType": "Assignment",
                        "operator": "=",
                        "rightHandSide": {
                          "id": 34687,
                          "name": "n",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 34649,
                          "src": "5167:1:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint64",
                            "typeString": "uint64"
                          }
                        },
                        "src": "5161:7:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        }
                      },
                      "id": 34689,
                      "nodeType": "ExpressionStatement",
                      "src": "5161:7:114"
                    },
                    {
                      "expression": {
                        "id": 34694,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftHandSide": {
                          "baseExpression": {
                            "id": 34690,
                            "name": "buf",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 34654,
                            "src": "5183:3:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "id": 34692,
                          "indexExpression": {
                            "hexValue": "30",
                            "id": 34691,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5187:1:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": true,
                          "nodeType": "IndexAccess",
                          "src": "5183:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes1",
                            "typeString": "bytes1"
                          }
                        },
                        "nodeType": "Assignment",
                        "operator": "=",
                        "rightHandSide": {
                          "id": 34693,
                          "name": "t",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 34651,
                          "src": "5192:1:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes1",
                            "typeString": "bytes1"
                          }
                        },
                        "src": "5183:10:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes1",
                          "typeString": "bytes1"
                        }
                      },
                      "id": 34695,
                      "nodeType": "ExpressionStatement",
                      "src": "5183:10:114"
                    },
                    {
                      "body": {
                        "id": 34728,
                        "nodeType": "Block",
                        "src": "5246:184:114",
                        "statements": [
                          {
                            "expression": {
                              "id": 34720,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftHandSide": {
                                "baseExpression": {
                                  "id": 34706,
                                  "name": "buf",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 34654,
                                  "src": "5340:3:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "id": 34708,
                                "indexExpression": {
                                  "id": 34707,
                                  "name": "i",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 34697,
                                  "src": "5344:1:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint64",
                                    "typeString": "uint64"
                                  }
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": true,
                                "nodeType": "IndexAccess",
                                "src": "5340:6:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes1",
                                  "typeString": "bytes1"
                                }
                              },
                              "nodeType": "Assignment",
                              "operator": "=",
                              "rightHandSide": {
                                "arguments": [
                                  {
                                    "commonType": {
                                      "typeIdentifier": "t_uint8",
                                      "typeString": "uint8"
                                    },
                                    "id": 34718,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "leftExpression": {
                                      "hexValue": "30783830",
                                      "id": 34711,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "number",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "5356:4:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_rational_128_by_1",
                                        "typeString": "int_const 128"
                                      },
                                      "value": "0x80"
                                    },
                                    "nodeType": "BinaryOperation",
                                    "operator": "|",
                                    "rightExpression": {
                                      "arguments": [
                                        {
                                          "commonType": {
                                            "typeIdentifier": "t_uint64",
                                            "typeString": "uint64"
                                          },
                                          "id": 34716,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "leftExpression": {
                                            "id": 34714,
                                            "name": "tmp",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 34657,
                                            "src": "5369:3:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint64",
                                              "typeString": "uint64"
                                            }
                                          },
                                          "nodeType": "BinaryOperation",
                                          "operator": "&",
                                          "rightExpression": {
                                            "hexValue": "30783746",
                                            "id": 34715,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "5375:4:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_127_by_1",
                                              "typeString": "int_const 127"
                                            },
                                            "value": "0x7F"
                                          },
                                          "src": "5369:10:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint64",
                                            "typeString": "uint64"
                                          }
                                        }
                                      ],
                                      "expression": {
                                        "argumentTypes": [
                                          {
                                            "typeIdentifier": "t_uint64",
                                            "typeString": "uint64"
                                          }
                                        ],
                                        "id": 34713,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "lValueRequested": false,
                                        "nodeType": "ElementaryTypeNameExpression",
                                        "src": "5363:5:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_type$_t_uint8_$",
                                          "typeString": "type(uint8)"
                                        },
                                        "typeName": {
                                          "id": 34712,
                                          "name": "uint8",
                                          "nodeType": "ElementaryTypeName",
                                          "src": "5363:5:114",
                                          "typeDescriptions": {}
                                        }
                                      },
                                      "id": 34717,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "typeConversion",
                                      "lValueRequested": false,
                                      "nameLocations": [],
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "5363:17:114",
                                      "tryCall": false,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint8",
                                        "typeString": "uint8"
                                      }
                                    },
                                    "src": "5356:24:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint8",
                                      "typeString": "uint8"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_uint8",
                                      "typeString": "uint8"
                                    }
                                  ],
                                  "id": 34710,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "nodeType": "ElementaryTypeNameExpression",
                                  "src": "5349:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_bytes1_$",
                                    "typeString": "type(bytes1)"
                                  },
                                  "typeName": {
                                    "id": 34709,
                                    "name": "bytes1",
                                    "nodeType": "ElementaryTypeName",
                                    "src": "5349:6:114",
                                    "typeDescriptions": {}
                                  }
                                },
                                "id": 34719,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "typeConversion",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "5349:32:114",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes1",
                                  "typeString": "bytes1"
                                }
                              },
                              "src": "5340:41:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes1",
                                "typeString": "bytes1"
                              }
                            },
                            "id": 34721,
                            "nodeType": "ExpressionStatement",
                            "src": "5340:41:114"
                          },
                          {
                            "expression": {
                              "id": 34726,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftHandSide": {
                                "id": 34722,
                                "name": "tmp",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 34657,
                                "src": "5400:3:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint64",
                                  "typeString": "uint64"
                                }
                              },
                              "nodeType": "Assignment",
                              "operator": "=",
                              "rightHandSide": {
                                "commonType": {
                                  "typeIdentifier": "t_uint64",
                                  "typeString": "uint64"
                                },
                                "id": 34725,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "id": 34723,
                                  "name": "tmp",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 34657,
                                  "src": "5406:3:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint64",
                                    "typeString": "uint64"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": ">>",
                                "rightExpression": {
                                  "hexValue": "37",
                                  "id": 34724,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "5413:1:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_7_by_1",
                                    "typeString": "int_const 7"
                                  },
                                  "value": "7"
                                },
                                "src": "5406:8:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint64",
                                  "typeString": "uint64"
                                }
                              },
                              "src": "5400:14:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint64",
                                "typeString": "uint64"
                              }
                            },
                            "id": 34727,
                            "nodeType": "ExpressionStatement",
                            "src": "5400:14:114"
                          }
                        ]
                      },
                      "condition": {
                        "commonType": {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        },
                        "id": 34702,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "id": 34700,
                          "name": "i",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 34697,
                          "src": "5227:1:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint64",
                            "typeString": "uint64"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "<",
                        "rightExpression": {
                          "id": 34701,
                          "name": "numBytes",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 34661,
                          "src": "5231:8:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint64",
                            "typeString": "uint64"
                          }
                        },
                        "src": "5227:12:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      "id": 34729,
                      "initializationExpression": {
                        "assignments": [
                          34697
                        ],
                        "declarations": [
                          {
                            "constant": false,
                            "id": 34697,
                            "mutability": "mutable",
                            "name": "i",
                            "nameLocation": "5220:1:114",
                            "nodeType": "VariableDeclaration",
                            "scope": 34729,
                            "src": "5213:8:114",
                            "stateVariable": false,
                            "storageLocation": "default",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            },
                            "typeName": {
                              "id": 34696,
                              "name": "uint64",
                              "nodeType": "ElementaryTypeName",
                              "src": "5213:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint64",
                                "typeString": "uint64"
                              }
                            },
                            "visibility": "internal"
                          }
                        ],
                        "id": 34699,
                        "initialValue": {
                          "hexValue": "31",
                          "id": 34698,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "5224:1:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_1_by_1",
                            "typeString": "int_const 1"
                          },
                          "value": "1"
                        },
                        "nodeType": "VariableDeclarationStatement",
                        "src": "5213:12:114"
                      },
                      "isSimpleCounterLoop": true,
                      "loopExpression": {
                        "expression": {
                          "id": 34704,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "UnaryOperation",
                          "operator": "++",
                          "prefix": false,
                          "src": "5241:3:114",
                          "subExpression": {
                            "id": 34703,
                            "name": "i",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 34697,
                            "src": "5241:1:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint64",
                            "typeString": "uint64"
                          }
                        },
                        "id": 34705,
                        "nodeType": "ExpressionStatement",
                        "src": "5241:3:114"
                      },
                      "nodeType": "ForStatement",
                      "src": "5208:222:114"
                    },
                    {
                      "expression": {
                        "id": 34736,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftHandSide": {
                          "baseExpression": {
                            "id": 34730,
                            "name": "buf",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 34654,
                            "src": "5497:3:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "id": 34734,
                          "indexExpression": {
                            "commonType": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            },
                            "id": 34733,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "id": 34731,
                              "name": "numBytes",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 34661,
                              "src": "5501:8:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint64",
                                "typeString": "uint64"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "-",
                            "rightExpression": {
                              "hexValue": "31",
                              "id": 34732,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "5512:1:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_1_by_1",
                                "typeString": "int_const 1"
                              },
                              "value": "1"
                            },
                            "src": "5501:12:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": true,
                          "nodeType": "IndexAccess",
                          "src": "5497:17:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes1",
                            "typeString": "bytes1"
                          }
                        },
                        "nodeType": "Assignment",
                        "operator": "&=",
                        "rightHandSide": {
                          "hexValue": "30783746",
                          "id": 34735,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "number",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "5518:4:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_rational_127_by_1",
                            "typeString": "int_const 127"
                          },
                          "value": "0x7F"
                        },
                        "src": "5497:25:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes1",
                          "typeString": "bytes1"
                        }
                      },
                      "id": 34737,
                      "nodeType": "ExpressionStatement",
                      "src": "5497:25:114"
                    }
                  ]
                }
              ]
            },
            "documentation": {
              "id": 34647,
              "nodeType": "StructuredDocumentation",
              "src": "4435:214:114",
              "text": "@dev Encode uint64 into tagged varint.\n @dev See https://developers.google.com/protocol-buffers/docs/encoding#varints.\n @param n Number\n @param t Tag\n @return buf Marshaled bytes"
            },
            "functionSelector": "acbade1f",
            "id": 34740,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "encode",
            "nameLocation": "4664:6:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 34652,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34649,
                  "mutability": "mutable",
                  "name": "n",
                  "nameLocation": "4678:1:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34740,
                  "src": "4671:8:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 34648,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "4671:6:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 34651,
                  "mutability": "mutable",
                  "name": "t",
                  "nameLocation": "4688:1:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34740,
                  "src": "4681:8:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes1",
                    "typeString": "bytes1"
                  },
                  "typeName": {
                    "id": 34650,
                    "name": "bytes1",
                    "nodeType": "ElementaryTypeName",
                    "src": "4681:6:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes1",
                      "typeString": "bytes1"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4670:20:114"
            },
            "returnParameters": {
              "id": 34655,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34654,
                  "mutability": "mutable",
                  "name": "buf",
                  "nameLocation": "4743:3:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 34740,
                  "src": "4730:16:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 34653,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "4730:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4729:18:114"
            },
            "scope": 36466,
            "src": "4655:886:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 35012,
              "nodeType": "Block",
              "src": "5663:2110:114",
              "statements": [
                {
                  "assignments": [
                    34749
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 34749,
                      "mutability": "mutable",
                      "name": "_encodedMethod",
                      "nameLocation": "5687:14:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 35012,
                      "src": "5674:27:114",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes"
                      },
                      "typeName": {
                        "id": 34748,
                        "name": "bytes",
                        "nodeType": "ElementaryTypeName",
                        "src": "5674:5:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_storage_ptr",
                          "typeString": "bytes"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 34761,
                  "initialValue": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "expression": {
                              "id": 34753,
                              "name": "source",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 34743,
                              "src": "5718:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                "typeString": "struct Witnet.RadonRetrieval memory"
                              }
                            },
                            "id": 34754,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "5725:6:114",
                            "memberName": "method",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 37780,
                            "src": "5718:13:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                              "typeString": "enum Witnet.RadonRetrievalMethods"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                              "typeString": "enum Witnet.RadonRetrievalMethods"
                            }
                          ],
                          "id": 34752,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "5711:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_uint64_$",
                            "typeString": "type(uint64)"
                          },
                          "typeName": {
                            "id": 34751,
                            "name": "uint64",
                            "nodeType": "ElementaryTypeName",
                            "src": "5711:6:114",
                            "typeDescriptions": {}
                          }
                        },
                        "id": 34755,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "5711:21:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "hexValue": "30783038",
                            "id": 34758,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5741:4:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_8_by_1",
                              "typeString": "int_const 8"
                            },
                            "value": "0x08"
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_rational_8_by_1",
                              "typeString": "int_const 8"
                            }
                          ],
                          "id": 34757,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "5734:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_bytes1_$",
                            "typeString": "type(bytes1)"
                          },
                          "typeName": {
                            "id": 34756,
                            "name": "bytes1",
                            "nodeType": "ElementaryTypeName",
                            "src": "5734:6:114",
                            "typeDescriptions": {}
                          }
                        },
                        "id": 34759,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "5734:12:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes1",
                          "typeString": "bytes1"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        },
                        {
                          "typeIdentifier": "t_bytes1",
                          "typeString": "bytes1"
                        }
                      ],
                      "id": 34750,
                      "name": "encode",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        34613,
                        34628,
                        34646,
                        34740,
                        35013,
                        35103,
                        35199,
                        35246,
                        35315,
                        35335,
                        35403
                      ],
                      "referencedDeclaration": 34740,
                      "src": "5704:6:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                        "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                      }
                    },
                    "id": 34760,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "5704:43:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "5674:73:114"
                },
                {
                  "assignments": [
                    34763
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 34763,
                      "mutability": "mutable",
                      "name": "_encodedUrl",
                      "nameLocation": "5771:11:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 35012,
                      "src": "5758:24:114",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes"
                      },
                      "typeName": {
                        "id": 34762,
                        "name": "bytes",
                        "nodeType": "ElementaryTypeName",
                        "src": "5758:5:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_storage_ptr",
                          "typeString": "bytes"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 34764,
                  "nodeType": "VariableDeclarationStatement",
                  "src": "5758:24:114"
                },
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 34772,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "expression": {
                        "arguments": [
                          {
                            "expression": {
                              "id": 34767,
                              "name": "source",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 34743,
                              "src": "5803:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                "typeString": "struct Witnet.RadonRetrieval memory"
                              }
                            },
                            "id": 34768,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "5810:3:114",
                            "memberName": "url",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 37785,
                            "src": "5803:10:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            }
                          ],
                          "id": 34766,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "5797:5:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                            "typeString": "type(bytes storage pointer)"
                          },
                          "typeName": {
                            "id": 34765,
                            "name": "bytes",
                            "nodeType": "ElementaryTypeName",
                            "src": "5797:5:114",
                            "typeDescriptions": {}
                          }
                        },
                        "id": 34769,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "5797:17:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      "id": 34770,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "5815:6:114",
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "src": "5797:24:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">",
                    "rightExpression": {
                      "hexValue": "30",
                      "id": 34771,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "5824:1:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "5797:28:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 34800,
                  "nodeType": "IfStatement",
                  "src": "5793:215:114",
                  "trueBody": {
                    "id": 34799,
                    "nodeType": "Block",
                    "src": "5827:181:114",
                    "statements": [
                      {
                        "expression": {
                          "id": 34797,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "id": 34773,
                            "name": "_encodedUrl",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 34763,
                            "src": "5842:11:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "arguments": [
                                      {
                                        "expression": {
                                          "arguments": [
                                            {
                                              "expression": {
                                                "id": 34781,
                                                "name": "source",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 34743,
                                                "src": "5911:6:114",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                                  "typeString": "struct Witnet.RadonRetrieval memory"
                                                }
                                              },
                                              "id": 34782,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberLocation": "5918:3:114",
                                              "memberName": "url",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 37785,
                                              "src": "5911:10:114",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_string_memory_ptr",
                                                "typeString": "string memory"
                                              }
                                            }
                                          ],
                                          "expression": {
                                            "argumentTypes": [
                                              {
                                                "typeIdentifier": "t_string_memory_ptr",
                                                "typeString": "string memory"
                                              }
                                            ],
                                            "id": 34780,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "lValueRequested": false,
                                            "nodeType": "ElementaryTypeNameExpression",
                                            "src": "5905:5:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                                              "typeString": "type(bytes storage pointer)"
                                            },
                                            "typeName": {
                                              "id": 34779,
                                              "name": "bytes",
                                              "nodeType": "ElementaryTypeName",
                                              "src": "5905:5:114",
                                              "typeDescriptions": {}
                                            }
                                          },
                                          "id": 34783,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "kind": "typeConversion",
                                          "lValueRequested": false,
                                          "nameLocations": [],
                                          "names": [],
                                          "nodeType": "FunctionCall",
                                          "src": "5905:17:114",
                                          "tryCall": false,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_bytes_memory_ptr",
                                            "typeString": "bytes memory"
                                          }
                                        },
                                        "id": 34784,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberLocation": "5923:6:114",
                                        "memberName": "length",
                                        "nodeType": "MemberAccess",
                                        "src": "5905:24:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      ],
                                      "id": 34778,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "nodeType": "ElementaryTypeNameExpression",
                                      "src": "5898:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_uint64_$",
                                        "typeString": "type(uint64)"
                                      },
                                      "typeName": {
                                        "id": 34777,
                                        "name": "uint64",
                                        "nodeType": "ElementaryTypeName",
                                        "src": "5898:6:114",
                                        "typeDescriptions": {}
                                      }
                                    },
                                    "id": 34785,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "5898:32:114",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint64",
                                      "typeString": "uint64"
                                    }
                                  },
                                  {
                                    "arguments": [
                                      {
                                        "hexValue": "30783132",
                                        "id": 34788,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "5939:4:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_18_by_1",
                                          "typeString": "int_const 18"
                                        },
                                        "value": "0x12"
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_rational_18_by_1",
                                          "typeString": "int_const 18"
                                        }
                                      ],
                                      "id": 34787,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "nodeType": "ElementaryTypeNameExpression",
                                      "src": "5932:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_bytes1_$",
                                        "typeString": "type(bytes1)"
                                      },
                                      "typeName": {
                                        "id": 34786,
                                        "name": "bytes1",
                                        "nodeType": "ElementaryTypeName",
                                        "src": "5932:6:114",
                                        "typeDescriptions": {}
                                      }
                                    },
                                    "id": 34789,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "5932:12:114",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes1",
                                      "typeString": "bytes1"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_uint64",
                                      "typeString": "uint64"
                                    },
                                    {
                                      "typeIdentifier": "t_bytes1",
                                      "typeString": "bytes1"
                                    }
                                  ],
                                  "id": 34776,
                                  "name": "encode",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [
                                    34613,
                                    34628,
                                    34646,
                                    34740,
                                    35013,
                                    35103,
                                    35199,
                                    35246,
                                    35315,
                                    35335,
                                    35403
                                  ],
                                  "referencedDeclaration": 34740,
                                  "src": "5891:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                                    "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                                  }
                                },
                                "id": 34790,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "5891:54:114",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              },
                              {
                                "arguments": [
                                  {
                                    "expression": {
                                      "id": 34793,
                                      "name": "source",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 34743,
                                      "src": "5970:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                        "typeString": "struct Witnet.RadonRetrieval memory"
                                      }
                                    },
                                    "id": 34794,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "5977:3:114",
                                    "memberName": "url",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 37785,
                                    "src": "5970:10:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_string_memory_ptr",
                                      "typeString": "string memory"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_string_memory_ptr",
                                      "typeString": "string memory"
                                    }
                                  ],
                                  "id": 34792,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "nodeType": "ElementaryTypeNameExpression",
                                  "src": "5964:5:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                                    "typeString": "type(bytes storage pointer)"
                                  },
                                  "typeName": {
                                    "id": 34791,
                                    "name": "bytes",
                                    "nodeType": "ElementaryTypeName",
                                    "src": "5964:5:114",
                                    "typeDescriptions": {}
                                  }
                                },
                                "id": 34795,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "typeConversion",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "5964:17:114",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                },
                                {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              ],
                              "expression": {
                                "id": 34774,
                                "name": "abi",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 4294967295,
                                "src": "5856:3:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_magic_abi",
                                  "typeString": "abi"
                                }
                              },
                              "id": 34775,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "memberLocation": "5860:12:114",
                              "memberName": "encodePacked",
                              "nodeType": "MemberAccess",
                              "src": "5856:16:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                                "typeString": "function () pure returns (bytes memory)"
                              }
                            },
                            "id": 34796,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "5856:140:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "src": "5842:154:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        "id": 34798,
                        "nodeType": "ExpressionStatement",
                        "src": "5842:154:114"
                      }
                    ]
                  }
                },
                {
                  "assignments": [
                    34802
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 34802,
                      "mutability": "mutable",
                      "name": "_encodedScript",
                      "nameLocation": "6031:14:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 35012,
                      "src": "6018:27:114",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes"
                      },
                      "typeName": {
                        "id": 34801,
                        "name": "bytes",
                        "nodeType": "ElementaryTypeName",
                        "src": "6018:5:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_storage_ptr",
                          "typeString": "bytes"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 34803,
                  "nodeType": "VariableDeclarationStatement",
                  "src": "6018:27:114"
                },
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 34808,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "expression": {
                        "expression": {
                          "id": 34804,
                          "name": "source",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 34743,
                          "src": "6060:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                            "typeString": "struct Witnet.RadonRetrieval memory"
                          }
                        },
                        "id": 34805,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "6067:11:114",
                        "memberName": "radonScript",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37794,
                        "src": "6060:18:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      "id": 34806,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "6079:6:114",
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "src": "6060:25:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">",
                    "rightExpression": {
                      "hexValue": "30",
                      "id": 34807,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "6088:1:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "6060:29:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 34830,
                  "nodeType": "IfStatement",
                  "src": "6056:221:114",
                  "trueBody": {
                    "id": 34829,
                    "nodeType": "Block",
                    "src": "6091:186:114",
                    "statements": [
                      {
                        "expression": {
                          "id": 34827,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "id": 34809,
                            "name": "_encodedScript",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 34802,
                            "src": "6106:14:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "arguments": [
                                      {
                                        "expression": {
                                          "expression": {
                                            "id": 34815,
                                            "name": "source",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 34743,
                                            "src": "6172:6:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                              "typeString": "struct Witnet.RadonRetrieval memory"
                                            }
                                          },
                                          "id": 34816,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberLocation": "6179:11:114",
                                          "memberName": "radonScript",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 37794,
                                          "src": "6172:18:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_bytes_memory_ptr",
                                            "typeString": "bytes memory"
                                          }
                                        },
                                        "id": 34817,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberLocation": "6191:6:114",
                                        "memberName": "length",
                                        "nodeType": "MemberAccess",
                                        "src": "6172:25:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      ],
                                      "id": 34814,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "nodeType": "ElementaryTypeNameExpression",
                                      "src": "6165:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_uint64_$",
                                        "typeString": "type(uint64)"
                                      },
                                      "typeName": {
                                        "id": 34813,
                                        "name": "uint64",
                                        "nodeType": "ElementaryTypeName",
                                        "src": "6165:6:114",
                                        "typeDescriptions": {}
                                      }
                                    },
                                    "id": 34818,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "6165:33:114",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint64",
                                      "typeString": "uint64"
                                    }
                                  },
                                  {
                                    "arguments": [
                                      {
                                        "hexValue": "30783161",
                                        "id": 34821,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "6207:4:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_26_by_1",
                                          "typeString": "int_const 26"
                                        },
                                        "value": "0x1a"
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_rational_26_by_1",
                                          "typeString": "int_const 26"
                                        }
                                      ],
                                      "id": 34820,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "nodeType": "ElementaryTypeNameExpression",
                                      "src": "6200:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_bytes1_$",
                                        "typeString": "type(bytes1)"
                                      },
                                      "typeName": {
                                        "id": 34819,
                                        "name": "bytes1",
                                        "nodeType": "ElementaryTypeName",
                                        "src": "6200:6:114",
                                        "typeDescriptions": {}
                                      }
                                    },
                                    "id": 34822,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "6200:12:114",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes1",
                                      "typeString": "bytes1"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_uint64",
                                      "typeString": "uint64"
                                    },
                                    {
                                      "typeIdentifier": "t_bytes1",
                                      "typeString": "bytes1"
                                    }
                                  ],
                                  "id": 34812,
                                  "name": "encode",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [
                                    34613,
                                    34628,
                                    34646,
                                    34740,
                                    35013,
                                    35103,
                                    35199,
                                    35246,
                                    35315,
                                    35335,
                                    35403
                                  ],
                                  "referencedDeclaration": 34740,
                                  "src": "6158:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                                    "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                                  }
                                },
                                "id": 34823,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "6158:55:114",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              },
                              {
                                "expression": {
                                  "id": 34824,
                                  "name": "source",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 34743,
                                  "src": "6232:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                    "typeString": "struct Witnet.RadonRetrieval memory"
                                  }
                                },
                                "id": 34825,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "6239:11:114",
                                "memberName": "radonScript",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37794,
                                "src": "6232:18:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                },
                                {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              ],
                              "expression": {
                                "id": 34810,
                                "name": "abi",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 4294967295,
                                "src": "6123:3:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_magic_abi",
                                  "typeString": "abi"
                                }
                              },
                              "id": 34811,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "memberLocation": "6127:12:114",
                              "memberName": "encodePacked",
                              "nodeType": "MemberAccess",
                              "src": "6123:16:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                                "typeString": "function () pure returns (bytes memory)"
                              }
                            },
                            "id": 34826,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "6123:142:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "src": "6106:159:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        "id": 34828,
                        "nodeType": "ExpressionStatement",
                        "src": "6106:159:114"
                      }
                    ]
                  }
                },
                {
                  "assignments": [
                    34832
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 34832,
                      "mutability": "mutable",
                      "name": "_encodedBody",
                      "nameLocation": "6300:12:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 35012,
                      "src": "6287:25:114",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes"
                      },
                      "typeName": {
                        "id": 34831,
                        "name": "bytes",
                        "nodeType": "ElementaryTypeName",
                        "src": "6287:5:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_storage_ptr",
                          "typeString": "bytes"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 34833,
                  "nodeType": "VariableDeclarationStatement",
                  "src": "6287:25:114"
                },
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 34841,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "expression": {
                        "arguments": [
                          {
                            "expression": {
                              "id": 34836,
                              "name": "source",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 34743,
                              "src": "6333:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                "typeString": "struct Witnet.RadonRetrieval memory"
                              }
                            },
                            "id": 34837,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "6340:4:114",
                            "memberName": "body",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 37787,
                            "src": "6333:11:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            }
                          ],
                          "id": 34835,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "6327:5:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                            "typeString": "type(bytes storage pointer)"
                          },
                          "typeName": {
                            "id": 34834,
                            "name": "bytes",
                            "nodeType": "ElementaryTypeName",
                            "src": "6327:5:114",
                            "typeDescriptions": {}
                          }
                        },
                        "id": 34838,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "6327:18:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      "id": 34839,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "6346:6:114",
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "src": "6327:25:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">",
                    "rightExpression": {
                      "hexValue": "30",
                      "id": 34840,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "6355:1:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "6327:29:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 34869,
                  "nodeType": "IfStatement",
                  "src": "6323:219:114",
                  "trueBody": {
                    "id": 34868,
                    "nodeType": "Block",
                    "src": "6358:184:114",
                    "statements": [
                      {
                        "expression": {
                          "id": 34866,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "id": 34842,
                            "name": "_encodedBody",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 34832,
                            "src": "6373:12:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "arguments": [
                                      {
                                        "expression": {
                                          "arguments": [
                                            {
                                              "expression": {
                                                "id": 34850,
                                                "name": "source",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 34743,
                                                "src": "6443:6:114",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                                  "typeString": "struct Witnet.RadonRetrieval memory"
                                                }
                                              },
                                              "id": 34851,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberLocation": "6450:4:114",
                                              "memberName": "body",
                                              "nodeType": "MemberAccess",
                                              "referencedDeclaration": 37787,
                                              "src": "6443:11:114",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_string_memory_ptr",
                                                "typeString": "string memory"
                                              }
                                            }
                                          ],
                                          "expression": {
                                            "argumentTypes": [
                                              {
                                                "typeIdentifier": "t_string_memory_ptr",
                                                "typeString": "string memory"
                                              }
                                            ],
                                            "id": 34849,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "lValueRequested": false,
                                            "nodeType": "ElementaryTypeNameExpression",
                                            "src": "6437:5:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                                              "typeString": "type(bytes storage pointer)"
                                            },
                                            "typeName": {
                                              "id": 34848,
                                              "name": "bytes",
                                              "nodeType": "ElementaryTypeName",
                                              "src": "6437:5:114",
                                              "typeDescriptions": {}
                                            }
                                          },
                                          "id": 34852,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "kind": "typeConversion",
                                          "lValueRequested": false,
                                          "nameLocations": [],
                                          "names": [],
                                          "nodeType": "FunctionCall",
                                          "src": "6437:18:114",
                                          "tryCall": false,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_bytes_memory_ptr",
                                            "typeString": "bytes memory"
                                          }
                                        },
                                        "id": 34853,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberLocation": "6456:6:114",
                                        "memberName": "length",
                                        "nodeType": "MemberAccess",
                                        "src": "6437:25:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      ],
                                      "id": 34847,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "nodeType": "ElementaryTypeNameExpression",
                                      "src": "6430:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_uint64_$",
                                        "typeString": "type(uint64)"
                                      },
                                      "typeName": {
                                        "id": 34846,
                                        "name": "uint64",
                                        "nodeType": "ElementaryTypeName",
                                        "src": "6430:6:114",
                                        "typeDescriptions": {}
                                      }
                                    },
                                    "id": 34854,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "6430:33:114",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint64",
                                      "typeString": "uint64"
                                    }
                                  },
                                  {
                                    "arguments": [
                                      {
                                        "hexValue": "30783232",
                                        "id": 34857,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "6472:4:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_34_by_1",
                                          "typeString": "int_const 34"
                                        },
                                        "value": "0x22"
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_rational_34_by_1",
                                          "typeString": "int_const 34"
                                        }
                                      ],
                                      "id": 34856,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "nodeType": "ElementaryTypeNameExpression",
                                      "src": "6465:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_bytes1_$",
                                        "typeString": "type(bytes1)"
                                      },
                                      "typeName": {
                                        "id": 34855,
                                        "name": "bytes1",
                                        "nodeType": "ElementaryTypeName",
                                        "src": "6465:6:114",
                                        "typeDescriptions": {}
                                      }
                                    },
                                    "id": 34858,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "6465:12:114",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes1",
                                      "typeString": "bytes1"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_uint64",
                                      "typeString": "uint64"
                                    },
                                    {
                                      "typeIdentifier": "t_bytes1",
                                      "typeString": "bytes1"
                                    }
                                  ],
                                  "id": 34845,
                                  "name": "encode",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [
                                    34613,
                                    34628,
                                    34646,
                                    34740,
                                    35013,
                                    35103,
                                    35199,
                                    35246,
                                    35315,
                                    35335,
                                    35403
                                  ],
                                  "referencedDeclaration": 34740,
                                  "src": "6423:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                                    "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                                  }
                                },
                                "id": 34859,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "6423:55:114",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              },
                              {
                                "arguments": [
                                  {
                                    "expression": {
                                      "id": 34862,
                                      "name": "source",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 34743,
                                      "src": "6503:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                        "typeString": "struct Witnet.RadonRetrieval memory"
                                      }
                                    },
                                    "id": 34863,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "6510:4:114",
                                    "memberName": "body",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 37787,
                                    "src": "6503:11:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_string_memory_ptr",
                                      "typeString": "string memory"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_string_memory_ptr",
                                      "typeString": "string memory"
                                    }
                                  ],
                                  "id": 34861,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "nodeType": "ElementaryTypeNameExpression",
                                  "src": "6497:5:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                                    "typeString": "type(bytes storage pointer)"
                                  },
                                  "typeName": {
                                    "id": 34860,
                                    "name": "bytes",
                                    "nodeType": "ElementaryTypeName",
                                    "src": "6497:5:114",
                                    "typeDescriptions": {}
                                  }
                                },
                                "id": 34864,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "typeConversion",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "6497:18:114",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                },
                                {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              ],
                              "expression": {
                                "id": 34843,
                                "name": "abi",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 4294967295,
                                "src": "6388:3:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_magic_abi",
                                  "typeString": "abi"
                                }
                              },
                              "id": 34844,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "memberLocation": "6392:12:114",
                              "memberName": "encodePacked",
                              "nodeType": "MemberAccess",
                              "src": "6388:16:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                                "typeString": "function () pure returns (bytes memory)"
                              }
                            },
                            "id": 34865,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "6388:142:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "src": "6373:157:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        "id": 34867,
                        "nodeType": "ExpressionStatement",
                        "src": "6373:157:114"
                      }
                    ]
                  }
                },
                {
                  "assignments": [
                    34871
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 34871,
                      "mutability": "mutable",
                      "name": "_encodedHeaders",
                      "nameLocation": "6565:15:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 35012,
                      "src": "6552:28:114",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes"
                      },
                      "typeName": {
                        "id": 34870,
                        "name": "bytes",
                        "nodeType": "ElementaryTypeName",
                        "src": "6552:5:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_storage_ptr",
                          "typeString": "bytes"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 34872,
                  "nodeType": "VariableDeclarationStatement",
                  "src": "6552:28:114"
                },
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 34877,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "expression": {
                        "expression": {
                          "id": 34873,
                          "name": "source",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 34743,
                          "src": "6595:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                            "typeString": "struct Witnet.RadonRetrieval memory"
                          }
                        },
                        "id": 34874,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "6602:7:114",
                        "memberName": "headers",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37792,
                        "src": "6595:14:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                          "typeString": "string memory[2] memory[] memory"
                        }
                      },
                      "id": 34875,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "6610:6:114",
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "src": "6595:21:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">",
                    "rightExpression": {
                      "hexValue": "30",
                      "id": 34876,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "6619:1:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "6595:25:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 34974,
                  "nodeType": "IfStatement",
                  "src": "6591:698:114",
                  "trueBody": {
                    "id": 34973,
                    "nodeType": "Block",
                    "src": "6622:667:114",
                    "statements": [
                      {
                        "body": {
                          "id": 34971,
                          "nodeType": "Block",
                          "src": "6693:585:114",
                          "statements": [
                            {
                              "assignments": [
                                34891
                              ],
                              "declarations": [
                                {
                                  "constant": false,
                                  "id": 34891,
                                  "mutability": "mutable",
                                  "name": "_headers",
                                  "nameLocation": "6725:8:114",
                                  "nodeType": "VariableDeclaration",
                                  "scope": 34971,
                                  "src": "6712:21:114",
                                  "stateVariable": false,
                                  "storageLocation": "memory",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes"
                                  },
                                  "typeName": {
                                    "id": 34890,
                                    "name": "bytes",
                                    "nodeType": "ElementaryTypeName",
                                    "src": "6712:5:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes_storage_ptr",
                                      "typeString": "bytes"
                                    }
                                  },
                                  "visibility": "internal"
                                }
                              ],
                              "id": 34951,
                              "initialValue": {
                                "arguments": [
                                  {
                                    "arguments": [
                                      {
                                        "arguments": [
                                          {
                                            "expression": {
                                              "arguments": [
                                                {
                                                  "baseExpression": {
                                                    "baseExpression": {
                                                      "expression": {
                                                        "id": 34899,
                                                        "name": "source",
                                                        "nodeType": "Identifier",
                                                        "overloadedDeclarations": [],
                                                        "referencedDeclaration": 34743,
                                                        "src": "6795:6:114",
                                                        "typeDescriptions": {
                                                          "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                                          "typeString": "struct Witnet.RadonRetrieval memory"
                                                        }
                                                      },
                                                      "id": 34900,
                                                      "isConstant": false,
                                                      "isLValue": true,
                                                      "isPure": false,
                                                      "lValueRequested": false,
                                                      "memberLocation": "6802:7:114",
                                                      "memberName": "headers",
                                                      "nodeType": "MemberAccess",
                                                      "referencedDeclaration": 37792,
                                                      "src": "6795:14:114",
                                                      "typeDescriptions": {
                                                        "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                                        "typeString": "string memory[2] memory[] memory"
                                                      }
                                                    },
                                                    "id": 34902,
                                                    "indexExpression": {
                                                      "id": 34901,
                                                      "name": "_ix",
                                                      "nodeType": "Identifier",
                                                      "overloadedDeclarations": [],
                                                      "referencedDeclaration": 34879,
                                                      "src": "6810:3:114",
                                                      "typeDescriptions": {
                                                        "typeIdentifier": "t_uint256",
                                                        "typeString": "uint256"
                                                      }
                                                    },
                                                    "isConstant": false,
                                                    "isLValue": true,
                                                    "isPure": false,
                                                    "lValueRequested": false,
                                                    "nodeType": "IndexAccess",
                                                    "src": "6795:19:114",
                                                    "typeDescriptions": {
                                                      "typeIdentifier": "t_array$_t_string_memory_ptr_$2_memory_ptr",
                                                      "typeString": "string memory[2] memory"
                                                    }
                                                  },
                                                  "id": 34904,
                                                  "indexExpression": {
                                                    "hexValue": "30",
                                                    "id": 34903,
                                                    "isConstant": false,
                                                    "isLValue": false,
                                                    "isPure": true,
                                                    "kind": "number",
                                                    "lValueRequested": false,
                                                    "nodeType": "Literal",
                                                    "src": "6815:1:114",
                                                    "typeDescriptions": {
                                                      "typeIdentifier": "t_rational_0_by_1",
                                                      "typeString": "int_const 0"
                                                    },
                                                    "value": "0"
                                                  },
                                                  "isConstant": false,
                                                  "isLValue": true,
                                                  "isPure": false,
                                                  "lValueRequested": false,
                                                  "nodeType": "IndexAccess",
                                                  "src": "6795:22:114",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_string_memory_ptr",
                                                    "typeString": "string memory"
                                                  }
                                                }
                                              ],
                                              "expression": {
                                                "argumentTypes": [
                                                  {
                                                    "typeIdentifier": "t_string_memory_ptr",
                                                    "typeString": "string memory"
                                                  }
                                                ],
                                                "id": 34898,
                                                "isConstant": false,
                                                "isLValue": false,
                                                "isPure": true,
                                                "lValueRequested": false,
                                                "nodeType": "ElementaryTypeNameExpression",
                                                "src": "6789:5:114",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                                                  "typeString": "type(bytes storage pointer)"
                                                },
                                                "typeName": {
                                                  "id": 34897,
                                                  "name": "bytes",
                                                  "nodeType": "ElementaryTypeName",
                                                  "src": "6789:5:114",
                                                  "typeDescriptions": {}
                                                }
                                              },
                                              "id": 34905,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": false,
                                              "kind": "typeConversion",
                                              "lValueRequested": false,
                                              "nameLocations": [],
                                              "names": [],
                                              "nodeType": "FunctionCall",
                                              "src": "6789:29:114",
                                              "tryCall": false,
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_bytes_memory_ptr",
                                                "typeString": "bytes memory"
                                              }
                                            },
                                            "id": 34906,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberLocation": "6819:6:114",
                                            "memberName": "length",
                                            "nodeType": "MemberAccess",
                                            "src": "6789:36:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          }
                                        ],
                                        "expression": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          ],
                                          "id": 34896,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "lValueRequested": false,
                                          "nodeType": "ElementaryTypeNameExpression",
                                          "src": "6782:6:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_type$_t_uint64_$",
                                            "typeString": "type(uint64)"
                                          },
                                          "typeName": {
                                            "id": 34895,
                                            "name": "uint64",
                                            "nodeType": "ElementaryTypeName",
                                            "src": "6782:6:114",
                                            "typeDescriptions": {}
                                          }
                                        },
                                        "id": 34907,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "kind": "typeConversion",
                                        "lValueRequested": false,
                                        "nameLocations": [],
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "6782:44:114",
                                        "tryCall": false,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint64",
                                          "typeString": "uint64"
                                        }
                                      },
                                      {
                                        "arguments": [
                                          {
                                            "hexValue": "30783061",
                                            "id": 34910,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "6835:4:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_10_by_1",
                                              "typeString": "int_const 10"
                                            },
                                            "value": "0x0a"
                                          }
                                        ],
                                        "expression": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_rational_10_by_1",
                                              "typeString": "int_const 10"
                                            }
                                          ],
                                          "id": 34909,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "lValueRequested": false,
                                          "nodeType": "ElementaryTypeNameExpression",
                                          "src": "6828:6:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_type$_t_bytes1_$",
                                            "typeString": "type(bytes1)"
                                          },
                                          "typeName": {
                                            "id": 34908,
                                            "name": "bytes1",
                                            "nodeType": "ElementaryTypeName",
                                            "src": "6828:6:114",
                                            "typeDescriptions": {}
                                          }
                                        },
                                        "id": 34911,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "typeConversion",
                                        "lValueRequested": false,
                                        "nameLocations": [],
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "6828:12:114",
                                        "tryCall": false,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bytes1",
                                          "typeString": "bytes1"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_uint64",
                                          "typeString": "uint64"
                                        },
                                        {
                                          "typeIdentifier": "t_bytes1",
                                          "typeString": "bytes1"
                                        }
                                      ],
                                      "id": 34894,
                                      "name": "encode",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [
                                        34613,
                                        34628,
                                        34646,
                                        34740,
                                        35013,
                                        35103,
                                        35199,
                                        35246,
                                        35315,
                                        35335,
                                        35403
                                      ],
                                      "referencedDeclaration": 34740,
                                      "src": "6775:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                                        "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                                      }
                                    },
                                    "id": 34912,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "functionCall",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "6775:66:114",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    }
                                  },
                                  {
                                    "arguments": [
                                      {
                                        "baseExpression": {
                                          "baseExpression": {
                                            "expression": {
                                              "id": 34915,
                                              "name": "source",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 34743,
                                              "src": "6870:6:114",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                                "typeString": "struct Witnet.RadonRetrieval memory"
                                              }
                                            },
                                            "id": 34916,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberLocation": "6877:7:114",
                                            "memberName": "headers",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 37792,
                                            "src": "6870:14:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                              "typeString": "string memory[2] memory[] memory"
                                            }
                                          },
                                          "id": 34918,
                                          "indexExpression": {
                                            "id": 34917,
                                            "name": "_ix",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 34879,
                                            "src": "6885:3:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "IndexAccess",
                                          "src": "6870:19:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_string_memory_ptr_$2_memory_ptr",
                                            "typeString": "string memory[2] memory"
                                          }
                                        },
                                        "id": 34920,
                                        "indexExpression": {
                                          "hexValue": "30",
                                          "id": 34919,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "number",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "6890:1:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_rational_0_by_1",
                                            "typeString": "int_const 0"
                                          },
                                          "value": "0"
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "nodeType": "IndexAccess",
                                        "src": "6870:22:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_string_memory_ptr",
                                          "typeString": "string memory"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_string_memory_ptr",
                                          "typeString": "string memory"
                                        }
                                      ],
                                      "id": 34914,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "nodeType": "ElementaryTypeNameExpression",
                                      "src": "6864:5:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                                        "typeString": "type(bytes storage pointer)"
                                      },
                                      "typeName": {
                                        "id": 34913,
                                        "name": "bytes",
                                        "nodeType": "ElementaryTypeName",
                                        "src": "6864:5:114",
                                        "typeDescriptions": {}
                                      }
                                    },
                                    "id": 34921,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "6864:29:114",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    }
                                  },
                                  {
                                    "arguments": [
                                      {
                                        "arguments": [
                                          {
                                            "expression": {
                                              "arguments": [
                                                {
                                                  "baseExpression": {
                                                    "baseExpression": {
                                                      "expression": {
                                                        "id": 34927,
                                                        "name": "source",
                                                        "nodeType": "Identifier",
                                                        "overloadedDeclarations": [],
                                                        "referencedDeclaration": 34743,
                                                        "src": "6936:6:114",
                                                        "typeDescriptions": {
                                                          "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                                          "typeString": "struct Witnet.RadonRetrieval memory"
                                                        }
                                                      },
                                                      "id": 34928,
                                                      "isConstant": false,
                                                      "isLValue": true,
                                                      "isPure": false,
                                                      "lValueRequested": false,
                                                      "memberLocation": "6943:7:114",
                                                      "memberName": "headers",
                                                      "nodeType": "MemberAccess",
                                                      "referencedDeclaration": 37792,
                                                      "src": "6936:14:114",
                                                      "typeDescriptions": {
                                                        "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                                        "typeString": "string memory[2] memory[] memory"
                                                      }
                                                    },
                                                    "id": 34930,
                                                    "indexExpression": {
                                                      "id": 34929,
                                                      "name": "_ix",
                                                      "nodeType": "Identifier",
                                                      "overloadedDeclarations": [],
                                                      "referencedDeclaration": 34879,
                                                      "src": "6951:3:114",
                                                      "typeDescriptions": {
                                                        "typeIdentifier": "t_uint256",
                                                        "typeString": "uint256"
                                                      }
                                                    },
                                                    "isConstant": false,
                                                    "isLValue": true,
                                                    "isPure": false,
                                                    "lValueRequested": false,
                                                    "nodeType": "IndexAccess",
                                                    "src": "6936:19:114",
                                                    "typeDescriptions": {
                                                      "typeIdentifier": "t_array$_t_string_memory_ptr_$2_memory_ptr",
                                                      "typeString": "string memory[2] memory"
                                                    }
                                                  },
                                                  "id": 34932,
                                                  "indexExpression": {
                                                    "hexValue": "31",
                                                    "id": 34931,
                                                    "isConstant": false,
                                                    "isLValue": false,
                                                    "isPure": true,
                                                    "kind": "number",
                                                    "lValueRequested": false,
                                                    "nodeType": "Literal",
                                                    "src": "6956:1:114",
                                                    "typeDescriptions": {
                                                      "typeIdentifier": "t_rational_1_by_1",
                                                      "typeString": "int_const 1"
                                                    },
                                                    "value": "1"
                                                  },
                                                  "isConstant": false,
                                                  "isLValue": true,
                                                  "isPure": false,
                                                  "lValueRequested": false,
                                                  "nodeType": "IndexAccess",
                                                  "src": "6936:22:114",
                                                  "typeDescriptions": {
                                                    "typeIdentifier": "t_string_memory_ptr",
                                                    "typeString": "string memory"
                                                  }
                                                }
                                              ],
                                              "expression": {
                                                "argumentTypes": [
                                                  {
                                                    "typeIdentifier": "t_string_memory_ptr",
                                                    "typeString": "string memory"
                                                  }
                                                ],
                                                "id": 34926,
                                                "isConstant": false,
                                                "isLValue": false,
                                                "isPure": true,
                                                "lValueRequested": false,
                                                "nodeType": "ElementaryTypeNameExpression",
                                                "src": "6930:5:114",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                                                  "typeString": "type(bytes storage pointer)"
                                                },
                                                "typeName": {
                                                  "id": 34925,
                                                  "name": "bytes",
                                                  "nodeType": "ElementaryTypeName",
                                                  "src": "6930:5:114",
                                                  "typeDescriptions": {}
                                                }
                                              },
                                              "id": 34933,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": false,
                                              "kind": "typeConversion",
                                              "lValueRequested": false,
                                              "nameLocations": [],
                                              "names": [],
                                              "nodeType": "FunctionCall",
                                              "src": "6930:29:114",
                                              "tryCall": false,
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_bytes_memory_ptr",
                                                "typeString": "bytes memory"
                                              }
                                            },
                                            "id": 34934,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberLocation": "6960:6:114",
                                            "memberName": "length",
                                            "nodeType": "MemberAccess",
                                            "src": "6930:36:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          }
                                        ],
                                        "expression": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          ],
                                          "id": 34924,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "lValueRequested": false,
                                          "nodeType": "ElementaryTypeNameExpression",
                                          "src": "6923:6:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_type$_t_uint64_$",
                                            "typeString": "type(uint64)"
                                          },
                                          "typeName": {
                                            "id": 34923,
                                            "name": "uint64",
                                            "nodeType": "ElementaryTypeName",
                                            "src": "6923:6:114",
                                            "typeDescriptions": {}
                                          }
                                        },
                                        "id": 34935,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "kind": "typeConversion",
                                        "lValueRequested": false,
                                        "nameLocations": [],
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "6923:44:114",
                                        "tryCall": false,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint64",
                                          "typeString": "uint64"
                                        }
                                      },
                                      {
                                        "arguments": [
                                          {
                                            "hexValue": "30783132",
                                            "id": 34938,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "kind": "number",
                                            "lValueRequested": false,
                                            "nodeType": "Literal",
                                            "src": "6976:4:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_rational_18_by_1",
                                              "typeString": "int_const 18"
                                            },
                                            "value": "0x12"
                                          }
                                        ],
                                        "expression": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_rational_18_by_1",
                                              "typeString": "int_const 18"
                                            }
                                          ],
                                          "id": 34937,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "lValueRequested": false,
                                          "nodeType": "ElementaryTypeNameExpression",
                                          "src": "6969:6:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_type$_t_bytes1_$",
                                            "typeString": "type(bytes1)"
                                          },
                                          "typeName": {
                                            "id": 34936,
                                            "name": "bytes1",
                                            "nodeType": "ElementaryTypeName",
                                            "src": "6969:6:114",
                                            "typeDescriptions": {}
                                          }
                                        },
                                        "id": 34939,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "typeConversion",
                                        "lValueRequested": false,
                                        "nameLocations": [],
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "6969:12:114",
                                        "tryCall": false,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bytes1",
                                          "typeString": "bytes1"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_uint64",
                                          "typeString": "uint64"
                                        },
                                        {
                                          "typeIdentifier": "t_bytes1",
                                          "typeString": "bytes1"
                                        }
                                      ],
                                      "id": 34922,
                                      "name": "encode",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [
                                        34613,
                                        34628,
                                        34646,
                                        34740,
                                        35013,
                                        35103,
                                        35199,
                                        35246,
                                        35315,
                                        35335,
                                        35403
                                      ],
                                      "referencedDeclaration": 34740,
                                      "src": "6916:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                                        "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                                      }
                                    },
                                    "id": 34940,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "functionCall",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "6916:66:114",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    }
                                  },
                                  {
                                    "arguments": [
                                      {
                                        "baseExpression": {
                                          "baseExpression": {
                                            "expression": {
                                              "id": 34943,
                                              "name": "source",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 34743,
                                              "src": "7011:6:114",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                                "typeString": "struct Witnet.RadonRetrieval memory"
                                              }
                                            },
                                            "id": 34944,
                                            "isConstant": false,
                                            "isLValue": true,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberLocation": "7018:7:114",
                                            "memberName": "headers",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 37792,
                                            "src": "7011:14:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                              "typeString": "string memory[2] memory[] memory"
                                            }
                                          },
                                          "id": 34946,
                                          "indexExpression": {
                                            "id": 34945,
                                            "name": "_ix",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 34879,
                                            "src": "7026:3:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          },
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "nodeType": "IndexAccess",
                                          "src": "7011:19:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_array$_t_string_memory_ptr_$2_memory_ptr",
                                            "typeString": "string memory[2] memory"
                                          }
                                        },
                                        "id": 34948,
                                        "indexExpression": {
                                          "hexValue": "31",
                                          "id": 34947,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "number",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "7031:1:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_rational_1_by_1",
                                            "typeString": "int_const 1"
                                          },
                                          "value": "1"
                                        },
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "nodeType": "IndexAccess",
                                        "src": "7011:22:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_string_memory_ptr",
                                          "typeString": "string memory"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_string_memory_ptr",
                                          "typeString": "string memory"
                                        }
                                      ],
                                      "id": 34942,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "nodeType": "ElementaryTypeNameExpression",
                                      "src": "7005:5:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                                        "typeString": "type(bytes storage pointer)"
                                      },
                                      "typeName": {
                                        "id": 34941,
                                        "name": "bytes",
                                        "nodeType": "ElementaryTypeName",
                                        "src": "7005:5:114",
                                        "typeDescriptions": {}
                                      }
                                    },
                                    "id": 34949,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "7005:29:114",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    },
                                    {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    },
                                    {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    },
                                    {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    }
                                  ],
                                  "expression": {
                                    "id": 34892,
                                    "name": "abi",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 4294967295,
                                    "src": "6736:3:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_magic_abi",
                                      "typeString": "abi"
                                    }
                                  },
                                  "id": 34893,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "memberLocation": "6740:12:114",
                                  "memberName": "encodePacked",
                                  "nodeType": "MemberAccess",
                                  "src": "6736:16:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                                    "typeString": "function () pure returns (bytes memory)"
                                  }
                                },
                                "id": 34950,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "6736:317:114",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              },
                              "nodeType": "VariableDeclarationStatement",
                              "src": "6712:341:114"
                            },
                            {
                              "expression": {
                                "id": 34969,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "id": 34952,
                                  "name": "_encodedHeaders",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 34871,
                                  "src": "7072:15:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "arguments": [
                                    {
                                      "id": 34955,
                                      "name": "_encodedHeaders",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 34871,
                                      "src": "7129:15:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes_memory_ptr",
                                        "typeString": "bytes memory"
                                      }
                                    },
                                    {
                                      "arguments": [
                                        {
                                          "arguments": [
                                            {
                                              "expression": {
                                                "id": 34959,
                                                "name": "_headers",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 34891,
                                                "src": "7181:8:114",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_bytes_memory_ptr",
                                                  "typeString": "bytes memory"
                                                }
                                              },
                                              "id": 34960,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "memberLocation": "7190:6:114",
                                              "memberName": "length",
                                              "nodeType": "MemberAccess",
                                              "src": "7181:15:114",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            }
                                          ],
                                          "expression": {
                                            "argumentTypes": [
                                              {
                                                "typeIdentifier": "t_uint256",
                                                "typeString": "uint256"
                                              }
                                            ],
                                            "id": 34958,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "lValueRequested": false,
                                            "nodeType": "ElementaryTypeNameExpression",
                                            "src": "7174:6:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_type$_t_uint64_$",
                                              "typeString": "type(uint64)"
                                            },
                                            "typeName": {
                                              "id": 34957,
                                              "name": "uint64",
                                              "nodeType": "ElementaryTypeName",
                                              "src": "7174:6:114",
                                              "typeDescriptions": {}
                                            }
                                          },
                                          "id": 34961,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "kind": "typeConversion",
                                          "lValueRequested": false,
                                          "nameLocations": [],
                                          "names": [],
                                          "nodeType": "FunctionCall",
                                          "src": "7174:23:114",
                                          "tryCall": false,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint64",
                                            "typeString": "uint64"
                                          }
                                        },
                                        {
                                          "arguments": [
                                            {
                                              "hexValue": "30783261",
                                              "id": 34964,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": true,
                                              "kind": "number",
                                              "lValueRequested": false,
                                              "nodeType": "Literal",
                                              "src": "7206:4:114",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_rational_42_by_1",
                                                "typeString": "int_const 42"
                                              },
                                              "value": "0x2a"
                                            }
                                          ],
                                          "expression": {
                                            "argumentTypes": [
                                              {
                                                "typeIdentifier": "t_rational_42_by_1",
                                                "typeString": "int_const 42"
                                              }
                                            ],
                                            "id": 34963,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "lValueRequested": false,
                                            "nodeType": "ElementaryTypeNameExpression",
                                            "src": "7199:6:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_type$_t_bytes1_$",
                                              "typeString": "type(bytes1)"
                                            },
                                            "typeName": {
                                              "id": 34962,
                                              "name": "bytes1",
                                              "nodeType": "ElementaryTypeName",
                                              "src": "7199:6:114",
                                              "typeDescriptions": {}
                                            }
                                          },
                                          "id": 34965,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "typeConversion",
                                          "lValueRequested": false,
                                          "nameLocations": [],
                                          "names": [],
                                          "nodeType": "FunctionCall",
                                          "src": "7199:12:114",
                                          "tryCall": false,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_bytes1",
                                            "typeString": "bytes1"
                                          }
                                        }
                                      ],
                                      "expression": {
                                        "argumentTypes": [
                                          {
                                            "typeIdentifier": "t_uint64",
                                            "typeString": "uint64"
                                          },
                                          {
                                            "typeIdentifier": "t_bytes1",
                                            "typeString": "bytes1"
                                          }
                                        ],
                                        "id": 34956,
                                        "name": "encode",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [
                                          34613,
                                          34628,
                                          34646,
                                          34740,
                                          35013,
                                          35103,
                                          35199,
                                          35246,
                                          35315,
                                          35335,
                                          35403
                                        ],
                                        "referencedDeclaration": 34740,
                                        "src": "7167:6:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                                          "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                                        }
                                      },
                                      "id": 34966,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "functionCall",
                                      "lValueRequested": false,
                                      "nameLocations": [],
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "7167:45:114",
                                      "tryCall": false,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes_memory_ptr",
                                        "typeString": "bytes memory"
                                      }
                                    },
                                    {
                                      "id": 34967,
                                      "name": "_headers",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 34891,
                                      "src": "7235:8:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes_memory_ptr",
                                        "typeString": "bytes memory"
                                      }
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": [
                                      {
                                        "typeIdentifier": "t_bytes_memory_ptr",
                                        "typeString": "bytes memory"
                                      },
                                      {
                                        "typeIdentifier": "t_bytes_memory_ptr",
                                        "typeString": "bytes memory"
                                      },
                                      {
                                        "typeIdentifier": "t_bytes_memory_ptr",
                                        "typeString": "bytes memory"
                                      }
                                    ],
                                    "expression": {
                                      "id": 34953,
                                      "name": "abi",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 4294967295,
                                      "src": "7090:3:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_magic_abi",
                                        "typeString": "abi"
                                      }
                                    },
                                    "id": 34954,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "lValueRequested": false,
                                    "memberLocation": "7094:12:114",
                                    "memberName": "encodePacked",
                                    "nodeType": "MemberAccess",
                                    "src": "7090:16:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                                      "typeString": "function () pure returns (bytes memory)"
                                    }
                                  },
                                  "id": 34968,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "functionCall",
                                  "lValueRequested": false,
                                  "nameLocations": [],
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "7090:172:114",
                                  "tryCall": false,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "src": "7072:190:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              },
                              "id": 34970,
                              "nodeType": "ExpressionStatement",
                              "src": "7072:190:114"
                            }
                          ]
                        },
                        "condition": {
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "id": 34886,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "id": 34882,
                            "name": "_ix",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 34879,
                            "src": "6656:3:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "<",
                          "rightExpression": {
                            "expression": {
                              "expression": {
                                "id": 34883,
                                "name": "source",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 34743,
                                "src": "6662:6:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                  "typeString": "struct Witnet.RadonRetrieval memory"
                                }
                              },
                              "id": 34884,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "6669:7:114",
                              "memberName": "headers",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 37792,
                              "src": "6662:14:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                "typeString": "string memory[2] memory[] memory"
                              }
                            },
                            "id": 34885,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "6677:6:114",
                            "memberName": "length",
                            "nodeType": "MemberAccess",
                            "src": "6662:21:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "6656:27:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 34972,
                        "initializationExpression": {
                          "assignments": [
                            34879
                          ],
                          "declarations": [
                            {
                              "constant": false,
                              "id": 34879,
                              "mutability": "mutable",
                              "name": "_ix",
                              "nameLocation": "6647:3:114",
                              "nodeType": "VariableDeclaration",
                              "scope": 34972,
                              "src": "6642:8:114",
                              "stateVariable": false,
                              "storageLocation": "default",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "typeName": {
                                "id": 34878,
                                "name": "uint",
                                "nodeType": "ElementaryTypeName",
                                "src": "6642:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "visibility": "internal"
                            }
                          ],
                          "id": 34881,
                          "initialValue": {
                            "hexValue": "30",
                            "id": 34880,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "6653:1:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "nodeType": "VariableDeclarationStatement",
                          "src": "6642:12:114"
                        },
                        "isSimpleCounterLoop": true,
                        "loopExpression": {
                          "expression": {
                            "id": 34888,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "UnaryOperation",
                            "operator": "++",
                            "prefix": false,
                            "src": "6685:6:114",
                            "subExpression": {
                              "id": 34887,
                              "name": "_ix",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 34879,
                              "src": "6685:3:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "id": 34889,
                          "nodeType": "ExpressionStatement",
                          "src": "6685:6:114"
                        },
                        "nodeType": "ForStatement",
                        "src": "6637:641:114"
                      }
                    ]
                  }
                },
                {
                  "assignments": [
                    34976
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 34976,
                      "mutability": "mutable",
                      "name": "_innerSize",
                      "nameLocation": "7304:10:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 35012,
                      "src": "7299:15:114",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 34975,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "7299:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 34992,
                  "initialValue": {
                    "components": [
                      {
                        "commonType": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "id": 34990,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "id": 34987,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 34984,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "id": 34981,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "expression": {
                                  "id": 34977,
                                  "name": "_encodedMethod",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 34749,
                                  "src": "7332:14:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "id": 34978,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "7347:6:114",
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "src": "7332:21:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "+",
                              "rightExpression": {
                                "expression": {
                                  "id": 34979,
                                  "name": "_encodedUrl",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 34763,
                                  "src": "7373:11:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "id": 34980,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "7385:6:114",
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "src": "7373:18:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "src": "7332:59:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "+",
                            "rightExpression": {
                              "expression": {
                                "id": 34982,
                                "name": "_encodedScript",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 34802,
                                "src": "7411:14:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              },
                              "id": 34983,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "7426:6:114",
                              "memberName": "length",
                              "nodeType": "MemberAccess",
                              "src": "7411:21:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "src": "7332:100:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "+",
                          "rightExpression": {
                            "expression": {
                              "id": 34985,
                              "name": "_encodedBody",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 34832,
                              "src": "7452:12:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            },
                            "id": 34986,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "7465:6:114",
                            "memberName": "length",
                            "nodeType": "MemberAccess",
                            "src": "7452:19:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "7332:139:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "+",
                        "rightExpression": {
                          "expression": {
                            "id": 34988,
                            "name": "_encodedHeaders",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 34871,
                            "src": "7491:15:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "id": 34989,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "7507:6:114",
                          "memberName": "length",
                          "nodeType": "MemberAccess",
                          "src": "7491:22:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "src": "7332:181:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "id": 34991,
                    "isConstant": false,
                    "isInlineArray": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "TupleExpression",
                    "src": "7317:207:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "7299:225:114"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "id": 34998,
                                "name": "_innerSize",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 34976,
                                "src": "7587:10:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "id": 34997,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "7580:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_uint64_$",
                                "typeString": "type(uint64)"
                              },
                              "typeName": {
                                "id": 34996,
                                "name": "uint64",
                                "nodeType": "ElementaryTypeName",
                                "src": "7580:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 34999,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "7580:18:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          {
                            "arguments": [
                              {
                                "hexValue": "30783132",
                                "id": 35002,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "7607:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_18_by_1",
                                  "typeString": "int_const 18"
                                },
                                "value": "0x12"
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_rational_18_by_1",
                                  "typeString": "int_const 18"
                                }
                              ],
                              "id": 35001,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "7600:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_bytes1_$",
                                "typeString": "type(bytes1)"
                              },
                              "typeName": {
                                "id": 35000,
                                "name": "bytes1",
                                "nodeType": "ElementaryTypeName",
                                "src": "7600:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35003,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "7600:12:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            },
                            {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          ],
                          "id": 34995,
                          "name": "encode",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [
                            34613,
                            34628,
                            34646,
                            34740,
                            35013,
                            35103,
                            35199,
                            35246,
                            35315,
                            35335,
                            35403
                          ],
                          "referencedDeclaration": 34740,
                          "src": "7573:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                          }
                        },
                        "id": 35004,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "7573:40:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "id": 35005,
                        "name": "_encodedMethod",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 34749,
                        "src": "7628:14:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "id": 35006,
                        "name": "_encodedUrl",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 34763,
                        "src": "7657:11:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "id": 35007,
                        "name": "_encodedScript",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 34802,
                        "src": "7683:14:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "id": 35008,
                        "name": "_encodedBody",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 34832,
                        "src": "7712:12:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "id": 35009,
                        "name": "_encodedHeaders",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 34871,
                        "src": "7739:15:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      ],
                      "expression": {
                        "id": 34993,
                        "name": "abi",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 4294967295,
                        "src": "7542:3:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_magic_abi",
                          "typeString": "abi"
                        }
                      },
                      "id": 34994,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "memberLocation": "7546:12:114",
                      "memberName": "encodePacked",
                      "nodeType": "MemberAccess",
                      "src": "7542:16:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                        "typeString": "function () pure returns (bytes memory)"
                      }
                    },
                    "id": 35010,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "7542:223:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "functionReturnParameters": 34747,
                  "id": 35011,
                  "nodeType": "Return",
                  "src": "7535:230:114"
                }
              ]
            },
            "functionSelector": "fa5dce12",
            "id": 35013,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "encode",
            "nameLocation": "5561:6:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 34744,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34743,
                  "mutability": "mutable",
                  "name": "source",
                  "nameLocation": "5597:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35013,
                  "src": "5568:35:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                    "typeString": "struct Witnet.RadonRetrieval"
                  },
                  "typeName": {
                    "id": 34742,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 34741,
                      "name": "Witnet.RadonRetrieval",
                      "nameLocations": [
                        "5568:6:114",
                        "5575:14:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37795,
                      "src": "5568:21:114"
                    },
                    "referencedDeclaration": 37795,
                    "src": "5568:21:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage_ptr",
                      "typeString": "struct Witnet.RadonRetrieval"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "5567:37:114"
            },
            "returnParameters": {
              "id": 34747,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 34746,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 35013,
                  "src": "5644:12:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 34745,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "5644:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "5643:14:114"
            },
            "scope": 36466,
            "src": "5552:2221:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 35102,
              "nodeType": "Block",
              "src": "8056:570:114",
              "statements": [
                {
                  "assignments": [
                    35033
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 35033,
                      "mutability": "mutable",
                      "name": "encodedSources",
                      "nameLocation": "8082:14:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 35102,
                      "src": "8067:29:114",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
                        "typeString": "bytes[]"
                      },
                      "typeName": {
                        "baseType": {
                          "id": 35031,
                          "name": "bytes",
                          "nodeType": "ElementaryTypeName",
                          "src": "8067:5:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_storage_ptr",
                            "typeString": "bytes"
                          }
                        },
                        "id": 35032,
                        "nodeType": "ArrayTypeName",
                        "src": "8067:7:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr",
                          "typeString": "bytes[]"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 35040,
                  "initialValue": {
                    "arguments": [
                      {
                        "expression": {
                          "id": 35037,
                          "name": "retrievals",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35017,
                          "src": "8111:10:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                            "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                          }
                        },
                        "id": 35038,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "8122:6:114",
                        "memberName": "length",
                        "nodeType": "MemberAccess",
                        "src": "8111:17:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 35036,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "nodeType": "NewExpression",
                      "src": "8099:11:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$",
                        "typeString": "function (uint256) pure returns (bytes memory[] memory)"
                      },
                      "typeName": {
                        "baseType": {
                          "id": 35034,
                          "name": "bytes",
                          "nodeType": "ElementaryTypeName",
                          "src": "8103:5:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_storage_ptr",
                            "typeString": "bytes"
                          }
                        },
                        "id": 35035,
                        "nodeType": "ArrayTypeName",
                        "src": "8103:7:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr",
                          "typeString": "bytes[]"
                        }
                      }
                    },
                    "id": 35039,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "8099:30:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
                      "typeString": "bytes memory[] memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "8067:62:114"
                },
                {
                  "body": {
                    "id": 35068,
                    "nodeType": "Block",
                    "src": "8185:123:114",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "baseExpression": {
                                "id": 35052,
                                "name": "retrievals",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35017,
                                "src": "8217:10:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                                  "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                                }
                              },
                              "id": 35054,
                              "indexExpression": {
                                "id": 35053,
                                "name": "ix",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35042,
                                "src": "8228:2:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "8217:14:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                "typeString": "struct Witnet.RadonRetrieval memory"
                              }
                            },
                            {
                              "id": 35055,
                              "name": "args",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 35020,
                              "src": "8233:4:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                                "typeString": "string calldata[] calldata"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                "typeString": "struct Witnet.RadonRetrieval memory"
                              },
                              {
                                "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                                "typeString": "string calldata[] calldata"
                              }
                            ],
                            "id": 35051,
                            "name": "replaceWildcards",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [
                              35626,
                              35725
                            ],
                            "referencedDeclaration": 35725,
                            "src": "8200:16:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_pure$_t_struct$_RadonRetrieval_$37795_memory_ptr_$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$returns$_t_struct$_RadonRetrieval_$37795_memory_ptr_$",
                              "typeString": "function (struct Witnet.RadonRetrieval memory,string memory[] memory) pure returns (struct Witnet.RadonRetrieval memory)"
                            }
                          },
                          "id": 35056,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "8200:38:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                            "typeString": "struct Witnet.RadonRetrieval memory"
                          }
                        },
                        "id": 35057,
                        "nodeType": "ExpressionStatement",
                        "src": "8200:38:114"
                      },
                      {
                        "expression": {
                          "id": 35066,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "baseExpression": {
                              "id": 35058,
                              "name": "encodedSources",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 35033,
                              "src": "8253:14:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
                                "typeString": "bytes memory[] memory"
                              }
                            },
                            "id": 35060,
                            "indexExpression": {
                              "id": 35059,
                              "name": "ix",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 35042,
                              "src": "8268:2:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "8253:18:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "baseExpression": {
                                  "id": 35062,
                                  "name": "retrievals",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35017,
                                  "src": "8281:10:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                                    "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                                  }
                                },
                                "id": 35064,
                                "indexExpression": {
                                  "id": 35063,
                                  "name": "ix",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35042,
                                  "src": "8292:2:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "8281:14:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                  "typeString": "struct Witnet.RadonRetrieval memory"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                  "typeString": "struct Witnet.RadonRetrieval memory"
                                }
                              ],
                              "id": 35061,
                              "name": "encode",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [
                                34613,
                                34628,
                                34646,
                                34740,
                                35013,
                                35103,
                                35199,
                                35246,
                                35315,
                                35335,
                                35403
                              ],
                              "referencedDeclaration": 35013,
                              "src": "8274:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_pure$_t_struct$_RadonRetrieval_$37795_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                                "typeString": "function (struct Witnet.RadonRetrieval memory) pure returns (bytes memory)"
                              }
                            },
                            "id": 35065,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "8274:22:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "src": "8253:43:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        "id": 35067,
                        "nodeType": "ExpressionStatement",
                        "src": "8253:43:114"
                      }
                    ]
                  },
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 35047,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "id": 35044,
                      "name": "ix",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 35042,
                      "src": "8154:2:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "<",
                    "rightExpression": {
                      "expression": {
                        "id": 35045,
                        "name": "retrievals",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35017,
                        "src": "8159:10:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                          "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                        }
                      },
                      "id": 35046,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "8170:6:114",
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "src": "8159:17:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "8154:22:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 35069,
                  "initializationExpression": {
                    "assignments": [
                      35042
                    ],
                    "declarations": [
                      {
                        "constant": false,
                        "id": 35042,
                        "mutability": "mutable",
                        "name": "ix",
                        "nameLocation": "8150:2:114",
                        "nodeType": "VariableDeclaration",
                        "scope": 35069,
                        "src": "8145:7:114",
                        "stateVariable": false,
                        "storageLocation": "default",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "typeName": {
                          "id": 35041,
                          "name": "uint",
                          "nodeType": "ElementaryTypeName",
                          "src": "8145:4:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "visibility": "internal"
                      }
                    ],
                    "id": 35043,
                    "nodeType": "VariableDeclarationStatement",
                    "src": "8145:7:114"
                  },
                  "isSimpleCounterLoop": true,
                  "loopExpression": {
                    "expression": {
                      "id": 35049,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "UnaryOperation",
                      "operator": "++",
                      "prefix": true,
                      "src": "8178:5:114",
                      "subExpression": {
                        "id": 35048,
                        "name": "ix",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35042,
                        "src": "8181:2:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 35050,
                    "nodeType": "ExpressionStatement",
                    "src": "8178:5:114"
                  },
                  "nodeType": "ForStatement",
                  "src": "8140:168:114"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "id": 35074,
                            "name": "encodedSources",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35033,
                            "src": "8376:14:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
                              "typeString": "bytes memory[] memory"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
                              "typeString": "bytes memory[] memory"
                            }
                          ],
                          "expression": {
                            "id": 35072,
                            "name": "WitnetBuffer",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 42631,
                            "src": "8356:12:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_WitnetBuffer_$42631_$",
                              "typeString": "type(library WitnetBuffer)"
                            }
                          },
                          "id": 35073,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "8369:6:114",
                          "memberName": "concat",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 40831,
                          "src": "8356:19:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function (bytes memory[] memory) pure returns (bytes memory)"
                          }
                        },
                        "id": 35075,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "8356:35:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "expression": {
                                  "id": 35079,
                                  "name": "aggregatorInnerBytecode",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35022,
                                  "src": "8420:23:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "id": 35080,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "8444:6:114",
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "src": "8420:30:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "id": 35078,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "8413:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_uint64_$",
                                "typeString": "type(uint64)"
                              },
                              "typeName": {
                                "id": 35077,
                                "name": "uint64",
                                "nodeType": "ElementaryTypeName",
                                "src": "8413:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35081,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "8413:38:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          {
                            "arguments": [
                              {
                                "hexValue": "30783161",
                                "id": 35084,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "8460:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_26_by_1",
                                  "typeString": "int_const 26"
                                },
                                "value": "0x1a"
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_rational_26_by_1",
                                  "typeString": "int_const 26"
                                }
                              ],
                              "id": 35083,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "8453:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_bytes1_$",
                                "typeString": "type(bytes1)"
                              },
                              "typeName": {
                                "id": 35082,
                                "name": "bytes1",
                                "nodeType": "ElementaryTypeName",
                                "src": "8453:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35085,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "8453:12:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            },
                            {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          ],
                          "id": 35076,
                          "name": "encode",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [
                            34613,
                            34628,
                            34646,
                            34740,
                            35013,
                            35103,
                            35199,
                            35246,
                            35315,
                            35335,
                            35403
                          ],
                          "referencedDeclaration": 34740,
                          "src": "8406:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                          }
                        },
                        "id": 35086,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "8406:60:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "id": 35087,
                        "name": "aggregatorInnerBytecode",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35022,
                        "src": "8481:23:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "expression": {
                                  "id": 35091,
                                  "name": "tallyInnerBytecode",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35024,
                                  "src": "8533:18:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "id": 35092,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "8552:6:114",
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "src": "8533:25:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "id": 35090,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "8526:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_uint64_$",
                                "typeString": "type(uint64)"
                              },
                              "typeName": {
                                "id": 35089,
                                "name": "uint64",
                                "nodeType": "ElementaryTypeName",
                                "src": "8526:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35093,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "8526:33:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          {
                            "arguments": [
                              {
                                "hexValue": "30783232",
                                "id": 35096,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "8568:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_34_by_1",
                                  "typeString": "int_const 34"
                                },
                                "value": "0x22"
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_rational_34_by_1",
                                  "typeString": "int_const 34"
                                }
                              ],
                              "id": 35095,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "8561:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_bytes1_$",
                                "typeString": "type(bytes1)"
                              },
                              "typeName": {
                                "id": 35094,
                                "name": "bytes1",
                                "nodeType": "ElementaryTypeName",
                                "src": "8561:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35097,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "8561:12:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            },
                            {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          ],
                          "id": 35088,
                          "name": "encode",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [
                            34613,
                            34628,
                            34646,
                            34740,
                            35013,
                            35103,
                            35199,
                            35246,
                            35315,
                            35335,
                            35403
                          ],
                          "referencedDeclaration": 34740,
                          "src": "8519:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                          }
                        },
                        "id": 35098,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "8519:55:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "id": 35099,
                        "name": "tallyInnerBytecode",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35024,
                        "src": "8589:18:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      ],
                      "expression": {
                        "id": 35070,
                        "name": "abi",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 4294967295,
                        "src": "8325:3:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_magic_abi",
                          "typeString": "abi"
                        }
                      },
                      "id": 35071,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "memberLocation": "8329:12:114",
                      "memberName": "encodePacked",
                      "nodeType": "MemberAccess",
                      "src": "8325:16:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                        "typeString": "function () pure returns (bytes memory)"
                      }
                    },
                    "id": 35100,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "8325:293:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "functionReturnParameters": 35028,
                  "id": 35101,
                  "nodeType": "Return",
                  "src": "8318:300:114"
                }
              ]
            },
            "functionSelector": "d7a7291e",
            "id": 35103,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "encode",
            "nameLocation": "7790:6:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 35025,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35017,
                  "mutability": "mutable",
                  "name": "retrievals",
                  "nameLocation": "7842:10:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35103,
                  "src": "7811:41:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                    "typeString": "struct Witnet.RadonRetrieval[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 35015,
                      "nodeType": "UserDefinedTypeName",
                      "pathNode": {
                        "id": 35014,
                        "name": "Witnet.RadonRetrieval",
                        "nameLocations": [
                          "7811:6:114",
                          "7818:14:114"
                        ],
                        "nodeType": "IdentifierPath",
                        "referencedDeclaration": 37795,
                        "src": "7811:21:114"
                      },
                      "referencedDeclaration": 37795,
                      "src": "7811:21:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage_ptr",
                        "typeString": "struct Witnet.RadonRetrieval"
                      }
                    },
                    "id": 35016,
                    "nodeType": "ArrayTypeName",
                    "src": "7811:23:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_storage_$dyn_storage_ptr",
                      "typeString": "struct Witnet.RadonRetrieval[]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35020,
                  "mutability": "mutable",
                  "name": "args",
                  "nameLocation": "7885:4:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35103,
                  "src": "7867:22:114",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                    "typeString": "string[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 35018,
                      "name": "string",
                      "nodeType": "ElementaryTypeName",
                      "src": "7867:6:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_storage_ptr",
                        "typeString": "string"
                      }
                    },
                    "id": 35019,
                    "nodeType": "ArrayTypeName",
                    "src": "7867:8:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                      "typeString": "string[]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35022,
                  "mutability": "mutable",
                  "name": "aggregatorInnerBytecode",
                  "nameLocation": "7917:23:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35103,
                  "src": "7904:36:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 35021,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "7904:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35024,
                  "mutability": "mutable",
                  "name": "tallyInnerBytecode",
                  "nameLocation": "7968:18:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35103,
                  "src": "7955:31:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 35023,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "7955:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "7796:201:114"
            },
            "returnParameters": {
              "id": 35028,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35027,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 35103,
                  "src": "8037:12:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 35026,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "8037:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "8036:14:114"
            },
            "scope": 36466,
            "src": "7781:845:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 35198,
              "nodeType": "Block",
              "src": "8931:566:114",
              "statements": [
                {
                  "assignments": [
                    35126
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 35126,
                      "mutability": "mutable",
                      "name": "encodedSources",
                      "nameLocation": "8957:14:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 35198,
                      "src": "8942:29:114",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
                        "typeString": "bytes[]"
                      },
                      "typeName": {
                        "baseType": {
                          "id": 35124,
                          "name": "bytes",
                          "nodeType": "ElementaryTypeName",
                          "src": "8942:5:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_storage_ptr",
                            "typeString": "bytes"
                          }
                        },
                        "id": 35125,
                        "nodeType": "ArrayTypeName",
                        "src": "8942:7:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr",
                          "typeString": "bytes[]"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 35133,
                  "initialValue": {
                    "arguments": [
                      {
                        "expression": {
                          "id": 35130,
                          "name": "sources",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35107,
                          "src": "8986:7:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                            "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                          }
                        },
                        "id": 35131,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "8994:6:114",
                        "memberName": "length",
                        "nodeType": "MemberAccess",
                        "src": "8986:14:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "id": 35129,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "nodeType": "NewExpression",
                      "src": "8974:11:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$",
                        "typeString": "function (uint256) pure returns (bytes memory[] memory)"
                      },
                      "typeName": {
                        "baseType": {
                          "id": 35127,
                          "name": "bytes",
                          "nodeType": "ElementaryTypeName",
                          "src": "8978:5:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_storage_ptr",
                            "typeString": "bytes"
                          }
                        },
                        "id": 35128,
                        "nodeType": "ArrayTypeName",
                        "src": "8978:7:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr",
                          "typeString": "bytes[]"
                        }
                      }
                    },
                    "id": 35132,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "8974:27:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
                      "typeString": "bytes memory[] memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "8942:59:114"
                },
                {
                  "body": {
                    "id": 35164,
                    "nodeType": "Block",
                    "src": "9058:121:114",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "baseExpression": {
                                "id": 35146,
                                "name": "sources",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35107,
                                "src": "9090:7:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                                  "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                                }
                              },
                              "id": 35148,
                              "indexExpression": {
                                "id": 35147,
                                "name": "ix",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35135,
                                "src": "9098:2:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "9090:11:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                "typeString": "struct Witnet.RadonRetrieval memory"
                              }
                            },
                            {
                              "baseExpression": {
                                "id": 35149,
                                "name": "args",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35111,
                                "src": "9103:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr",
                                  "typeString": "string memory[] memory[] memory"
                                }
                              },
                              "id": 35151,
                              "indexExpression": {
                                "id": 35150,
                                "name": "ix",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35135,
                                "src": "9108:2:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "9103:8:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                                "typeString": "string memory[] memory"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                "typeString": "struct Witnet.RadonRetrieval memory"
                              },
                              {
                                "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                                "typeString": "string memory[] memory"
                              }
                            ],
                            "id": 35145,
                            "name": "replaceWildcards",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [
                              35626,
                              35725
                            ],
                            "referencedDeclaration": 35725,
                            "src": "9073:16:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_pure$_t_struct$_RadonRetrieval_$37795_memory_ptr_$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$returns$_t_struct$_RadonRetrieval_$37795_memory_ptr_$",
                              "typeString": "function (struct Witnet.RadonRetrieval memory,string memory[] memory) pure returns (struct Witnet.RadonRetrieval memory)"
                            }
                          },
                          "id": 35152,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "9073:39:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                            "typeString": "struct Witnet.RadonRetrieval memory"
                          }
                        },
                        "id": 35153,
                        "nodeType": "ExpressionStatement",
                        "src": "9073:39:114"
                      },
                      {
                        "expression": {
                          "id": 35162,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "baseExpression": {
                              "id": 35154,
                              "name": "encodedSources",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 35126,
                              "src": "9127:14:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
                                "typeString": "bytes memory[] memory"
                              }
                            },
                            "id": 35156,
                            "indexExpression": {
                              "id": 35155,
                              "name": "ix",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 35135,
                              "src": "9142:2:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "9127:18:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "baseExpression": {
                                  "id": 35158,
                                  "name": "sources",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35107,
                                  "src": "9155:7:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                                    "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                                  }
                                },
                                "id": 35160,
                                "indexExpression": {
                                  "id": 35159,
                                  "name": "ix",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35135,
                                  "src": "9163:2:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "9155:11:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                  "typeString": "struct Witnet.RadonRetrieval memory"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                  "typeString": "struct Witnet.RadonRetrieval memory"
                                }
                              ],
                              "id": 35157,
                              "name": "encode",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [
                                34613,
                                34628,
                                34646,
                                34740,
                                35013,
                                35103,
                                35199,
                                35246,
                                35315,
                                35335,
                                35403
                              ],
                              "referencedDeclaration": 35013,
                              "src": "9148:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_pure$_t_struct$_RadonRetrieval_$37795_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                                "typeString": "function (struct Witnet.RadonRetrieval memory) pure returns (bytes memory)"
                              }
                            },
                            "id": 35161,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "9148:19:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "src": "9127:40:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        "id": 35163,
                        "nodeType": "ExpressionStatement",
                        "src": "9127:40:114"
                      }
                    ]
                  },
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 35141,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "id": 35138,
                      "name": "ix",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 35135,
                      "src": "9030:2:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "<",
                    "rightExpression": {
                      "expression": {
                        "id": 35139,
                        "name": "sources",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35107,
                        "src": "9035:7:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                          "typeString": "struct Witnet.RadonRetrieval memory[] memory"
                        }
                      },
                      "id": 35140,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "9043:6:114",
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "src": "9035:14:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "9030:19:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 35165,
                  "initializationExpression": {
                    "assignments": [
                      35135
                    ],
                    "declarations": [
                      {
                        "constant": false,
                        "id": 35135,
                        "mutability": "mutable",
                        "name": "ix",
                        "nameLocation": "9022:2:114",
                        "nodeType": "VariableDeclaration",
                        "scope": 35165,
                        "src": "9017:7:114",
                        "stateVariable": false,
                        "storageLocation": "default",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "typeName": {
                          "id": 35134,
                          "name": "uint",
                          "nodeType": "ElementaryTypeName",
                          "src": "9017:4:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "visibility": "internal"
                      }
                    ],
                    "id": 35137,
                    "initialValue": {
                      "hexValue": "30",
                      "id": 35136,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "9027:1:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "nodeType": "VariableDeclarationStatement",
                    "src": "9017:11:114"
                  },
                  "isSimpleCounterLoop": true,
                  "loopExpression": {
                    "expression": {
                      "id": 35143,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "UnaryOperation",
                      "operator": "++",
                      "prefix": false,
                      "src": "9051:5:114",
                      "subExpression": {
                        "id": 35142,
                        "name": "ix",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35135,
                        "src": "9051:2:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 35144,
                    "nodeType": "ExpressionStatement",
                    "src": "9051:5:114"
                  },
                  "nodeType": "ForStatement",
                  "src": "9012:167:114"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "id": 35170,
                            "name": "encodedSources",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35126,
                            "src": "9247:14:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
                              "typeString": "bytes memory[] memory"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
                              "typeString": "bytes memory[] memory"
                            }
                          ],
                          "expression": {
                            "id": 35168,
                            "name": "WitnetBuffer",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 42631,
                            "src": "9227:12:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_WitnetBuffer_$42631_$",
                              "typeString": "type(library WitnetBuffer)"
                            }
                          },
                          "id": 35169,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "9240:6:114",
                          "memberName": "concat",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 40831,
                          "src": "9227:19:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function (bytes memory[] memory) pure returns (bytes memory)"
                          }
                        },
                        "id": 35171,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "9227:35:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "expression": {
                                  "id": 35175,
                                  "name": "aggregatorInnerBytecode",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35113,
                                  "src": "9291:23:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "id": 35176,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "9315:6:114",
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "src": "9291:30:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "id": 35174,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "9284:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_uint64_$",
                                "typeString": "type(uint64)"
                              },
                              "typeName": {
                                "id": 35173,
                                "name": "uint64",
                                "nodeType": "ElementaryTypeName",
                                "src": "9284:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35177,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "9284:38:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          {
                            "arguments": [
                              {
                                "hexValue": "30783161",
                                "id": 35180,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "9331:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_26_by_1",
                                  "typeString": "int_const 26"
                                },
                                "value": "0x1a"
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_rational_26_by_1",
                                  "typeString": "int_const 26"
                                }
                              ],
                              "id": 35179,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "9324:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_bytes1_$",
                                "typeString": "type(bytes1)"
                              },
                              "typeName": {
                                "id": 35178,
                                "name": "bytes1",
                                "nodeType": "ElementaryTypeName",
                                "src": "9324:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35181,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "9324:12:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            },
                            {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          ],
                          "id": 35172,
                          "name": "encode",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [
                            34613,
                            34628,
                            34646,
                            34740,
                            35013,
                            35103,
                            35199,
                            35246,
                            35315,
                            35335,
                            35403
                          ],
                          "referencedDeclaration": 34740,
                          "src": "9277:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                          }
                        },
                        "id": 35182,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "9277:60:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "id": 35183,
                        "name": "aggregatorInnerBytecode",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35113,
                        "src": "9352:23:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "expression": {
                                  "id": 35187,
                                  "name": "tallyInnerBytecode",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35115,
                                  "src": "9404:18:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "id": 35188,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "9423:6:114",
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "src": "9404:25:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "id": 35186,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "9397:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_uint64_$",
                                "typeString": "type(uint64)"
                              },
                              "typeName": {
                                "id": 35185,
                                "name": "uint64",
                                "nodeType": "ElementaryTypeName",
                                "src": "9397:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35189,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "9397:33:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          {
                            "arguments": [
                              {
                                "hexValue": "30783232",
                                "id": 35192,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "9439:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_34_by_1",
                                  "typeString": "int_const 34"
                                },
                                "value": "0x22"
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_rational_34_by_1",
                                  "typeString": "int_const 34"
                                }
                              ],
                              "id": 35191,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "9432:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_bytes1_$",
                                "typeString": "type(bytes1)"
                              },
                              "typeName": {
                                "id": 35190,
                                "name": "bytes1",
                                "nodeType": "ElementaryTypeName",
                                "src": "9432:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35193,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "9432:12:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            },
                            {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          ],
                          "id": 35184,
                          "name": "encode",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [
                            34613,
                            34628,
                            34646,
                            34740,
                            35013,
                            35103,
                            35199,
                            35246,
                            35315,
                            35335,
                            35403
                          ],
                          "referencedDeclaration": 34740,
                          "src": "9390:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                          }
                        },
                        "id": 35194,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "9390:55:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "id": 35195,
                        "name": "tallyInnerBytecode",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35115,
                        "src": "9460:18:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      ],
                      "expression": {
                        "id": 35166,
                        "name": "abi",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 4294967295,
                        "src": "9196:3:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_magic_abi",
                          "typeString": "abi"
                        }
                      },
                      "id": 35167,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "memberLocation": "9200:12:114",
                      "memberName": "encodePacked",
                      "nodeType": "MemberAccess",
                      "src": "9196:16:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                        "typeString": "function () pure returns (bytes memory)"
                      }
                    },
                    "id": 35196,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "9196:293:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "functionReturnParameters": 35121,
                  "id": 35197,
                  "nodeType": "Return",
                  "src": "9189:300:114"
                }
              ]
            },
            "functionSelector": "b6349ebd",
            "id": 35199,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "encode",
            "nameLocation": "8647:6:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 35118,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35107,
                  "mutability": "mutable",
                  "name": "sources",
                  "nameLocation": "8699:7:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35199,
                  "src": "8668:38:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_memory_ptr_$dyn_memory_ptr",
                    "typeString": "struct Witnet.RadonRetrieval[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 35105,
                      "nodeType": "UserDefinedTypeName",
                      "pathNode": {
                        "id": 35104,
                        "name": "Witnet.RadonRetrieval",
                        "nameLocations": [
                          "8668:6:114",
                          "8675:14:114"
                        ],
                        "nodeType": "IdentifierPath",
                        "referencedDeclaration": 37795,
                        "src": "8668:21:114"
                      },
                      "referencedDeclaration": 37795,
                      "src": "8668:21:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage_ptr",
                        "typeString": "struct Witnet.RadonRetrieval"
                      }
                    },
                    "id": 35106,
                    "nodeType": "ArrayTypeName",
                    "src": "8668:23:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_RadonRetrieval_$37795_storage_$dyn_storage_ptr",
                      "typeString": "struct Witnet.RadonRetrieval[]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35111,
                  "mutability": "mutable",
                  "name": "args",
                  "nameLocation": "8739:4:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35199,
                  "src": "8721:22:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$dyn_memory_ptr",
                    "typeString": "string[][]"
                  },
                  "typeName": {
                    "baseType": {
                      "baseType": {
                        "id": 35108,
                        "name": "string",
                        "nodeType": "ElementaryTypeName",
                        "src": "8721:6:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_string_storage_ptr",
                          "typeString": "string"
                        }
                      },
                      "id": 35109,
                      "nodeType": "ArrayTypeName",
                      "src": "8721:8:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                        "typeString": "string[]"
                      }
                    },
                    "id": 35110,
                    "nodeType": "ArrayTypeName",
                    "src": "8721:10:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_array$_t_string_storage_$dyn_storage_$dyn_storage_ptr",
                      "typeString": "string[][]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35113,
                  "mutability": "mutable",
                  "name": "aggregatorInnerBytecode",
                  "nameLocation": "8771:23:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35199,
                  "src": "8758:36:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 35112,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "8758:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35115,
                  "mutability": "mutable",
                  "name": "tallyInnerBytecode",
                  "nameLocation": "8822:18:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35199,
                  "src": "8809:31:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 35114,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "8809:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35117,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 35199,
                  "src": "8855:6:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint16",
                    "typeString": "uint16"
                  },
                  "typeName": {
                    "id": 35116,
                    "name": "uint16",
                    "nodeType": "ElementaryTypeName",
                    "src": "8855:6:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint16",
                      "typeString": "uint16"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "8653:219:114"
            },
            "returnParameters": {
              "id": 35121,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35120,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 35199,
                  "src": "8912:12:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 35119,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "8912:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "8911:14:114"
            },
            "scope": 36466,
            "src": "8638:859:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 35245,
              "nodeType": "Block",
              "src": "9624:612:114",
              "statements": [
                {
                  "body": {
                    "id": 35232,
                    "nodeType": "Block",
                    "src": "9739:162:114",
                    "statements": [
                      {
                        "expression": {
                          "id": 35230,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "id": 35219,
                            "name": "bytecode",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35205,
                            "src": "9758:8:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "id": 35222,
                                "name": "bytecode",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35205,
                                "src": "9808:8:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              },
                              {
                                "arguments": [
                                  {
                                    "baseExpression": {
                                      "expression": {
                                        "id": 35224,
                                        "name": "reducer",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 35202,
                                        "src": "9846:7:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                                          "typeString": "struct Witnet.RadonReducer memory"
                                        }
                                      },
                                      "id": 35225,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberLocation": "9854:7:114",
                                      "memberName": "filters",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": 37747,
                                      "src": "9846:15:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_struct$_RadonFilter_$37727_memory_ptr_$dyn_memory_ptr",
                                        "typeString": "struct Witnet.RadonFilter memory[] memory"
                                      }
                                    },
                                    "id": 35227,
                                    "indexExpression": {
                                      "id": 35226,
                                      "name": "ix",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 35208,
                                      "src": "9862:2:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "9846:19:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                                      "typeString": "struct Witnet.RadonFilter memory"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                                      "typeString": "struct Witnet.RadonFilter memory"
                                    }
                                  ],
                                  "id": 35223,
                                  "name": "encode",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [
                                    34613,
                                    34628,
                                    34646,
                                    34740,
                                    35013,
                                    35103,
                                    35199,
                                    35246,
                                    35315,
                                    35335,
                                    35403
                                  ],
                                  "referencedDeclaration": 35315,
                                  "src": "9839:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_pure$_t_struct$_RadonFilter_$37727_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                                    "typeString": "function (struct Witnet.RadonFilter memory) pure returns (bytes memory)"
                                  }
                                },
                                "id": 35228,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "9839:27:114",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                },
                                {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              ],
                              "expression": {
                                "id": 35220,
                                "name": "abi",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 4294967295,
                                "src": "9769:3:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_magic_abi",
                                  "typeString": "abi"
                                }
                              },
                              "id": 35221,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "memberLocation": "9773:12:114",
                              "memberName": "encodePacked",
                              "nodeType": "MemberAccess",
                              "src": "9769:16:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                                "typeString": "function () pure returns (bytes memory)"
                              }
                            },
                            "id": 35229,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "9769:116:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "src": "9758:127:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        "id": 35231,
                        "nodeType": "ExpressionStatement",
                        "src": "9758:127:114"
                      }
                    ]
                  },
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 35215,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "id": 35211,
                      "name": "ix",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 35208,
                      "src": "9703:2:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "<",
                    "rightExpression": {
                      "expression": {
                        "expression": {
                          "id": 35212,
                          "name": "reducer",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35202,
                          "src": "9708:7:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                            "typeString": "struct Witnet.RadonReducer memory"
                          }
                        },
                        "id": 35213,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "9716:7:114",
                        "memberName": "filters",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37747,
                        "src": "9708:15:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_struct$_RadonFilter_$37727_memory_ptr_$dyn_memory_ptr",
                          "typeString": "struct Witnet.RadonFilter memory[] memory"
                        }
                      },
                      "id": 35214,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "9724:6:114",
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "src": "9708:22:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "9703:27:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 35233,
                  "initializationExpression": {
                    "assignments": [
                      35208
                    ],
                    "declarations": [
                      {
                        "constant": false,
                        "id": 35208,
                        "mutability": "mutable",
                        "name": "ix",
                        "nameLocation": "9695:2:114",
                        "nodeType": "VariableDeclaration",
                        "scope": 35233,
                        "src": "9690:7:114",
                        "stateVariable": false,
                        "storageLocation": "default",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "typeName": {
                          "id": 35207,
                          "name": "uint",
                          "nodeType": "ElementaryTypeName",
                          "src": "9690:4:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "visibility": "internal"
                      }
                    ],
                    "id": 35210,
                    "initialValue": {
                      "hexValue": "30",
                      "id": 35209,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "9700:1:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "nodeType": "VariableDeclarationStatement",
                    "src": "9690:11:114"
                  },
                  "isSimpleCounterLoop": true,
                  "loopExpression": {
                    "expression": {
                      "id": 35217,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "UnaryOperation",
                      "operator": "++",
                      "prefix": false,
                      "src": "9732:5:114",
                      "subExpression": {
                        "id": 35216,
                        "name": "ix",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35208,
                        "src": "9732:2:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 35218,
                    "nodeType": "ExpressionStatement",
                    "src": "9732:5:114"
                  },
                  "nodeType": "ForStatement",
                  "src": "9685:216:114"
                },
                {
                  "expression": {
                    "id": 35243,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 35234,
                      "name": "bytecode",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 35205,
                      "src": "9915:8:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "id": 35237,
                          "name": "bytecode",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35205,
                          "src": "9961:8:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        {
                          "arguments": [
                            {
                              "expression": {
                                "id": 35239,
                                "name": "reducer",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35202,
                                "src": "9995:7:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                                  "typeString": "struct Witnet.RadonReducer memory"
                                }
                              },
                              "id": 35240,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "10003:6:114",
                              "memberName": "opcode",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 37743,
                              "src": "9995:14:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                "typeString": "enum Witnet.RadonReduceOpcodes"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                "typeString": "enum Witnet.RadonReduceOpcodes"
                              }
                            ],
                            "id": 35238,
                            "name": "encode",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [
                              34613,
                              34628,
                              34646,
                              34740,
                              35013,
                              35103,
                              35199,
                              35246,
                              35315,
                              35335,
                              35403
                            ],
                            "referencedDeclaration": 35335,
                            "src": "9988:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_pure$_t_enum$_RadonReduceOpcodes_$37762_$returns$_t_bytes_memory_ptr_$",
                              "typeString": "function (enum Witnet.RadonReduceOpcodes) pure returns (bytes memory)"
                            }
                          },
                          "id": 35241,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "9988:22:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          },
                          {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        ],
                        "expression": {
                          "id": 35235,
                          "name": "abi",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 4294967295,
                          "src": "9926:3:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_abi",
                            "typeString": "abi"
                          }
                        },
                        "id": 35236,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "memberLocation": "9930:12:114",
                        "memberName": "encodePacked",
                        "nodeType": "MemberAccess",
                        "src": "9926:16:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                          "typeString": "function () pure returns (bytes memory)"
                        }
                      },
                      "id": 35242,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "9926:99:114",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes memory"
                      }
                    },
                    "src": "9915:110:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "id": 35244,
                  "nodeType": "ExpressionStatement",
                  "src": "9915:110:114"
                }
              ]
            },
            "functionSelector": "1c02d22b",
            "id": 35246,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "encode",
            "nameLocation": "9514:6:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 35203,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35202,
                  "mutability": "mutable",
                  "name": "reducer",
                  "nameLocation": "9548:7:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35246,
                  "src": "9521:34:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                    "typeString": "struct Witnet.RadonReducer"
                  },
                  "typeName": {
                    "id": 35201,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 35200,
                      "name": "Witnet.RadonReducer",
                      "nameLocations": [
                        "9521:6:114",
                        "9528:12:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37748,
                      "src": "9521:19:114"
                    },
                    "referencedDeclaration": 37748,
                    "src": "9521:19:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                      "typeString": "struct Witnet.RadonReducer"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "9520:36:114"
            },
            "returnParameters": {
              "id": 35206,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35205,
                  "mutability": "mutable",
                  "name": "bytecode",
                  "nameLocation": "9609:8:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35246,
                  "src": "9596:21:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 35204,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "9596:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "9595:23:114"
            },
            "scope": 36466,
            "src": "9505:731:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 35314,
              "nodeType": "Block",
              "src": "10361:472:114",
              "statements": [
                {
                  "expression": {
                    "id": 35296,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "id": 35254,
                      "name": "bytecode",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 35252,
                      "src": "10380:8:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "arguments": [
                            {
                              "arguments": [
                                {
                                  "expression": {
                                    "id": 35260,
                                    "name": "filter",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 35249,
                                    "src": "10436:6:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                                      "typeString": "struct Witnet.RadonFilter memory"
                                    }
                                  },
                                  "id": 35261,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberLocation": "10443:6:114",
                                  "memberName": "opcode",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 37724,
                                  "src": "10436:13:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_enum$_RadonFilterOpcodes_$37739",
                                    "typeString": "enum Witnet.RadonFilterOpcodes"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_enum$_RadonFilterOpcodes_$37739",
                                    "typeString": "enum Witnet.RadonFilterOpcodes"
                                  }
                                ],
                                "id": 35259,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "10429:6:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_uint64_$",
                                  "typeString": "type(uint64)"
                                },
                                "typeName": {
                                  "id": 35258,
                                  "name": "uint64",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "10429:6:114",
                                  "typeDescriptions": {}
                                }
                              },
                              "id": 35262,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "10429:21:114",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint64",
                                "typeString": "uint64"
                              }
                            },
                            {
                              "arguments": [
                                {
                                  "hexValue": "30783038",
                                  "id": 35265,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "10459:4:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_8_by_1",
                                    "typeString": "int_const 8"
                                  },
                                  "value": "0x08"
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_rational_8_by_1",
                                    "typeString": "int_const 8"
                                  }
                                ],
                                "id": 35264,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "10452:6:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_bytes1_$",
                                  "typeString": "type(bytes1)"
                                },
                                "typeName": {
                                  "id": 35263,
                                  "name": "bytes1",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "10452:6:114",
                                  "typeDescriptions": {}
                                }
                              },
                              "id": 35266,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "10452:12:114",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes1",
                                "typeString": "bytes1"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint64",
                                "typeString": "uint64"
                              },
                              {
                                "typeIdentifier": "t_bytes1",
                                "typeString": "bytes1"
                              }
                            ],
                            "id": 35257,
                            "name": "encode",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [
                              34613,
                              34628,
                              34646,
                              34740,
                              35013,
                              35103,
                              35199,
                              35246,
                              35315,
                              35335,
                              35403
                            ],
                            "referencedDeclaration": 34740,
                            "src": "10422:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                              "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                            }
                          },
                          "id": 35267,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "10422:43:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        {
                          "condition": {
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 35272,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "expression": {
                                "expression": {
                                  "id": 35268,
                                  "name": "filter",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35249,
                                  "src": "10480:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                                    "typeString": "struct Witnet.RadonFilter memory"
                                  }
                                },
                                "id": 35269,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "10487:8:114",
                                "memberName": "cborArgs",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37726,
                                "src": "10480:15:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              },
                              "id": 35270,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "10496:6:114",
                              "memberName": "length",
                              "nodeType": "MemberAccess",
                              "src": "10480:22:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": ">",
                            "rightExpression": {
                              "hexValue": "30",
                              "id": 35271,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "10505:1:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            },
                            "src": "10480:26:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "falseExpression": {
                            "arguments": [
                              {
                                "hexValue": "",
                                "id": 35292,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "string",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "10683:2:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
                                  "typeString": "literal_string \"\""
                                },
                                "value": ""
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
                                  "typeString": "literal_string \"\""
                                }
                              ],
                              "id": 35291,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "10677:5:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                                "typeString": "type(bytes storage pointer)"
                              },
                              "typeName": {
                                "id": 35290,
                                "name": "bytes",
                                "nodeType": "ElementaryTypeName",
                                "src": "10677:5:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35293,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "10677:9:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "id": 35294,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "Conditional",
                          "src": "10480:206:114",
                          "trueExpression": {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "arguments": [
                                      {
                                        "expression": {
                                          "expression": {
                                            "id": 35278,
                                            "name": "filter",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 35249,
                                            "src": "10579:6:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                                              "typeString": "struct Witnet.RadonFilter memory"
                                            }
                                          },
                                          "id": 35279,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberLocation": "10586:8:114",
                                          "memberName": "cborArgs",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 37726,
                                          "src": "10579:15:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_bytes_memory_ptr",
                                            "typeString": "bytes memory"
                                          }
                                        },
                                        "id": 35280,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberLocation": "10595:6:114",
                                        "memberName": "length",
                                        "nodeType": "MemberAccess",
                                        "src": "10579:22:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      ],
                                      "id": 35277,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "nodeType": "ElementaryTypeNameExpression",
                                      "src": "10572:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_uint64_$",
                                        "typeString": "type(uint64)"
                                      },
                                      "typeName": {
                                        "id": 35276,
                                        "name": "uint64",
                                        "nodeType": "ElementaryTypeName",
                                        "src": "10572:6:114",
                                        "typeDescriptions": {}
                                      }
                                    },
                                    "id": 35281,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "10572:30:114",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint64",
                                      "typeString": "uint64"
                                    }
                                  },
                                  {
                                    "arguments": [
                                      {
                                        "hexValue": "30783132",
                                        "id": 35284,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "10611:4:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_18_by_1",
                                          "typeString": "int_const 18"
                                        },
                                        "value": "0x12"
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_rational_18_by_1",
                                          "typeString": "int_const 18"
                                        }
                                      ],
                                      "id": 35283,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "nodeType": "ElementaryTypeNameExpression",
                                      "src": "10604:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_bytes1_$",
                                        "typeString": "type(bytes1)"
                                      },
                                      "typeName": {
                                        "id": 35282,
                                        "name": "bytes1",
                                        "nodeType": "ElementaryTypeName",
                                        "src": "10604:6:114",
                                        "typeDescriptions": {}
                                      }
                                    },
                                    "id": 35285,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "10604:12:114",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes1",
                                      "typeString": "bytes1"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_uint64",
                                      "typeString": "uint64"
                                    },
                                    {
                                      "typeIdentifier": "t_bytes1",
                                      "typeString": "bytes1"
                                    }
                                  ],
                                  "id": 35275,
                                  "name": "encode",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [
                                    34613,
                                    34628,
                                    34646,
                                    34740,
                                    35013,
                                    35103,
                                    35199,
                                    35246,
                                    35315,
                                    35335,
                                    35403
                                  ],
                                  "referencedDeclaration": 34740,
                                  "src": "10565:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                                    "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                                  }
                                },
                                "id": 35286,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "10565:52:114",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              },
                              {
                                "expression": {
                                  "id": 35287,
                                  "name": "filter",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35249,
                                  "src": "10640:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                                    "typeString": "struct Witnet.RadonFilter memory"
                                  }
                                },
                                "id": 35288,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "10647:8:114",
                                "memberName": "cborArgs",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37726,
                                "src": "10640:15:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                },
                                {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              ],
                              "expression": {
                                "id": 35273,
                                "name": "abi",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 4294967295,
                                "src": "10526:3:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_magic_abi",
                                  "typeString": "abi"
                                }
                              },
                              "id": 35274,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "memberLocation": "10530:12:114",
                              "memberName": "encodePacked",
                              "nodeType": "MemberAccess",
                              "src": "10526:16:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                                "typeString": "function () pure returns (bytes memory)"
                              }
                            },
                            "id": 35289,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "10526:148:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          },
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          },
                          {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        ],
                        "expression": {
                          "id": 35255,
                          "name": "abi",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 4294967295,
                          "src": "10391:3:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_abi",
                            "typeString": "abi"
                          }
                        },
                        "id": 35256,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "memberLocation": "10395:12:114",
                        "memberName": "encodePacked",
                        "nodeType": "MemberAccess",
                        "src": "10391:16:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                          "typeString": "function () pure returns (bytes memory)"
                        }
                      },
                      "id": 35295,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "10391:306:114",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes memory"
                      }
                    },
                    "src": "10380:317:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "id": 35297,
                  "nodeType": "ExpressionStatement",
                  "src": "10380:317:114"
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "expression": {
                                  "id": 35303,
                                  "name": "bytecode",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35252,
                                  "src": "10760:8:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "id": 35304,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "10769:6:114",
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "src": "10760:15:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "id": 35302,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "10753:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_uint64_$",
                                "typeString": "type(uint64)"
                              },
                              "typeName": {
                                "id": 35301,
                                "name": "uint64",
                                "nodeType": "ElementaryTypeName",
                                "src": "10753:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35305,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "10753:23:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          {
                            "arguments": [
                              {
                                "hexValue": "30783061",
                                "id": 35308,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "10785:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_10_by_1",
                                  "typeString": "int_const 10"
                                },
                                "value": "0x0a"
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_rational_10_by_1",
                                  "typeString": "int_const 10"
                                }
                              ],
                              "id": 35307,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "10778:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_bytes1_$",
                                "typeString": "type(bytes1)"
                              },
                              "typeName": {
                                "id": 35306,
                                "name": "bytes1",
                                "nodeType": "ElementaryTypeName",
                                "src": "10778:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35309,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "10778:12:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            },
                            {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          ],
                          "id": 35300,
                          "name": "encode",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [
                            34613,
                            34628,
                            34646,
                            34740,
                            35013,
                            35103,
                            35199,
                            35246,
                            35315,
                            35335,
                            35403
                          ],
                          "referencedDeclaration": 34740,
                          "src": "10746:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                          }
                        },
                        "id": 35310,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "10746:45:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "id": 35311,
                        "name": "bytecode",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35252,
                        "src": "10806:8:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      ],
                      "expression": {
                        "id": 35298,
                        "name": "abi",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 4294967295,
                        "src": "10715:3:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_magic_abi",
                          "typeString": "abi"
                        }
                      },
                      "id": 35299,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "memberLocation": "10719:12:114",
                      "memberName": "encodePacked",
                      "nodeType": "MemberAccess",
                      "src": "10715:16:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                        "typeString": "function () pure returns (bytes memory)"
                      }
                    },
                    "id": 35312,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "10715:110:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "functionReturnParameters": 35253,
                  "id": 35313,
                  "nodeType": "Return",
                  "src": "10708:117:114"
                }
              ]
            },
            "functionSelector": "c5f3674a",
            "id": 35315,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "encode",
            "nameLocation": "10253:6:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 35250,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35249,
                  "mutability": "mutable",
                  "name": "filter",
                  "nameLocation": "10286:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35315,
                  "src": "10260:32:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                    "typeString": "struct Witnet.RadonFilter"
                  },
                  "typeName": {
                    "id": 35248,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 35247,
                      "name": "Witnet.RadonFilter",
                      "nameLocations": [
                        "10260:6:114",
                        "10267:11:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37727,
                      "src": "10260:18:114"
                    },
                    "referencedDeclaration": 37727,
                    "src": "10260:18:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonFilter_$37727_storage_ptr",
                      "typeString": "struct Witnet.RadonFilter"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "10259:34:114"
            },
            "returnParameters": {
              "id": 35253,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35252,
                  "mutability": "mutable",
                  "name": "bytecode",
                  "nameLocation": "10346:8:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35315,
                  "src": "10333:21:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 35251,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "10333:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "10332:23:114"
            },
            "scope": 36466,
            "src": "10244:589:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 35334,
              "nodeType": "Block",
              "src": "10949:72:114",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "id": 35326,
                            "name": "opcode",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35318,
                            "src": "10991:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                              "typeString": "enum Witnet.RadonReduceOpcodes"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                              "typeString": "enum Witnet.RadonReduceOpcodes"
                            }
                          ],
                          "id": 35325,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "10984:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_uint64_$",
                            "typeString": "type(uint64)"
                          },
                          "typeName": {
                            "id": 35324,
                            "name": "uint64",
                            "nodeType": "ElementaryTypeName",
                            "src": "10984:6:114",
                            "typeDescriptions": {}
                          }
                        },
                        "id": 35327,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "10984:14:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "hexValue": "30783130",
                            "id": 35330,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "11007:4:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_16_by_1",
                              "typeString": "int_const 16"
                            },
                            "value": "0x10"
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_rational_16_by_1",
                              "typeString": "int_const 16"
                            }
                          ],
                          "id": 35329,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "11000:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_bytes1_$",
                            "typeString": "type(bytes1)"
                          },
                          "typeName": {
                            "id": 35328,
                            "name": "bytes1",
                            "nodeType": "ElementaryTypeName",
                            "src": "11000:6:114",
                            "typeDescriptions": {}
                          }
                        },
                        "id": 35331,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "11000:12:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes1",
                          "typeString": "bytes1"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        },
                        {
                          "typeIdentifier": "t_bytes1",
                          "typeString": "bytes1"
                        }
                      ],
                      "id": 35323,
                      "name": "encode",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [
                        34613,
                        34628,
                        34646,
                        34740,
                        35013,
                        35103,
                        35199,
                        35246,
                        35315,
                        35335,
                        35403
                      ],
                      "referencedDeclaration": 34740,
                      "src": "10977:6:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                        "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                      }
                    },
                    "id": 35332,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "10977:36:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "functionReturnParameters": 35322,
                  "id": 35333,
                  "nodeType": "Return",
                  "src": "10970:43:114"
                }
              ]
            },
            "functionSelector": "69c3a0b3",
            "id": 35335,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "encode",
            "nameLocation": "10850:6:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 35319,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35318,
                  "mutability": "mutable",
                  "name": "opcode",
                  "nameLocation": "10883:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35335,
                  "src": "10857:32:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                    "typeString": "enum Witnet.RadonReduceOpcodes"
                  },
                  "typeName": {
                    "id": 35317,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 35316,
                      "name": "Witnet.RadonReduceOpcodes",
                      "nameLocations": [
                        "10857:6:114",
                        "10864:18:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37762,
                      "src": "10857:25:114"
                    },
                    "referencedDeclaration": 37762,
                    "src": "10857:25:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                      "typeString": "enum Witnet.RadonReduceOpcodes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "10856:34:114"
            },
            "returnParameters": {
              "id": 35322,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35321,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 35335,
                  "src": "10930:12:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 35320,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "10930:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "10929:14:114"
            },
            "scope": 36466,
            "src": "10841:180:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 35402,
              "nodeType": "Block",
              "src": "11133:382:114",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "expression": {
                                  "id": 35348,
                                  "name": "sla",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35338,
                                  "src": "11196:3:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonSLAv1_$37814_memory_ptr",
                                    "typeString": "struct Witnet.RadonSLAv1 memory"
                                  }
                                },
                                "id": 35349,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "11200:13:114",
                                "memberName": "witnessReward",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37809,
                                "src": "11196:17:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint64",
                                  "typeString": "uint64"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint64",
                                  "typeString": "uint64"
                                }
                              ],
                              "id": 35347,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "11189:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_uint64_$",
                                "typeString": "type(uint64)"
                              },
                              "typeName": {
                                "id": 35346,
                                "name": "uint64",
                                "nodeType": "ElementaryTypeName",
                                "src": "11189:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35350,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "11189:25:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          {
                            "arguments": [
                              {
                                "hexValue": "30783130",
                                "id": 35353,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "11223:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_16_by_1",
                                  "typeString": "int_const 16"
                                },
                                "value": "0x10"
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_rational_16_by_1",
                                  "typeString": "int_const 16"
                                }
                              ],
                              "id": 35352,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "11216:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_bytes1_$",
                                "typeString": "type(bytes1)"
                              },
                              "typeName": {
                                "id": 35351,
                                "name": "bytes1",
                                "nodeType": "ElementaryTypeName",
                                "src": "11216:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35354,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "11216:12:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            },
                            {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          ],
                          "id": 35345,
                          "name": "encode",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [
                            34613,
                            34628,
                            34646,
                            34740,
                            35013,
                            35103,
                            35199,
                            35246,
                            35315,
                            35335,
                            35403
                          ],
                          "referencedDeclaration": 34740,
                          "src": "11182:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                          }
                        },
                        "id": 35355,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "11182:47:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "expression": {
                                  "id": 35359,
                                  "name": "sla",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35338,
                                  "src": "11258:3:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonSLAv1_$37814_memory_ptr",
                                    "typeString": "struct Witnet.RadonSLAv1 memory"
                                  }
                                },
                                "id": 35360,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "11262:12:114",
                                "memberName": "numWitnesses",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37805,
                                "src": "11258:16:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              ],
                              "id": 35358,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "11251:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_uint64_$",
                                "typeString": "type(uint64)"
                              },
                              "typeName": {
                                "id": 35357,
                                "name": "uint64",
                                "nodeType": "ElementaryTypeName",
                                "src": "11251:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35361,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "11251:24:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          {
                            "arguments": [
                              {
                                "hexValue": "30783138",
                                "id": 35364,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "11284:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_24_by_1",
                                  "typeString": "int_const 24"
                                },
                                "value": "0x18"
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_rational_24_by_1",
                                  "typeString": "int_const 24"
                                }
                              ],
                              "id": 35363,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "11277:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_bytes1_$",
                                "typeString": "type(bytes1)"
                              },
                              "typeName": {
                                "id": 35362,
                                "name": "bytes1",
                                "nodeType": "ElementaryTypeName",
                                "src": "11277:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35365,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "11277:12:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            },
                            {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          ],
                          "id": 35356,
                          "name": "encode",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [
                            34613,
                            34628,
                            34646,
                            34740,
                            35013,
                            35103,
                            35199,
                            35246,
                            35315,
                            35335,
                            35403
                          ],
                          "referencedDeclaration": 34740,
                          "src": "11244:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                          }
                        },
                        "id": 35366,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "11244:46:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "expression": {
                                  "id": 35370,
                                  "name": "sla",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35338,
                                  "src": "11319:3:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonSLAv1_$37814_memory_ptr",
                                    "typeString": "struct Witnet.RadonSLAv1 memory"
                                  }
                                },
                                "id": 35371,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "11323:20:114",
                                "memberName": "minerCommitRevealFee",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37813,
                                "src": "11319:24:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint64",
                                  "typeString": "uint64"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint64",
                                  "typeString": "uint64"
                                }
                              ],
                              "id": 35369,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "11312:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_uint64_$",
                                "typeString": "type(uint64)"
                              },
                              "typeName": {
                                "id": 35368,
                                "name": "uint64",
                                "nodeType": "ElementaryTypeName",
                                "src": "11312:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35372,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "11312:32:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          {
                            "arguments": [
                              {
                                "hexValue": "30783230",
                                "id": 35375,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "11353:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_32_by_1",
                                  "typeString": "int_const 32"
                                },
                                "value": "0x20"
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_rational_32_by_1",
                                  "typeString": "int_const 32"
                                }
                              ],
                              "id": 35374,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "11346:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_bytes1_$",
                                "typeString": "type(bytes1)"
                              },
                              "typeName": {
                                "id": 35373,
                                "name": "bytes1",
                                "nodeType": "ElementaryTypeName",
                                "src": "11346:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35376,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "11346:12:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            },
                            {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          ],
                          "id": 35367,
                          "name": "encode",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [
                            34613,
                            34628,
                            34646,
                            34740,
                            35013,
                            35103,
                            35199,
                            35246,
                            35315,
                            35335,
                            35403
                          ],
                          "referencedDeclaration": 34740,
                          "src": "11305:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                          }
                        },
                        "id": 35377,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "11305:54:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "expression": {
                                  "id": 35381,
                                  "name": "sla",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35338,
                                  "src": "11388:3:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonSLAv1_$37814_memory_ptr",
                                    "typeString": "struct Witnet.RadonSLAv1 memory"
                                  }
                                },
                                "id": 35382,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "11392:22:114",
                                "memberName": "minConsensusPercentage",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37807,
                                "src": "11388:26:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              ],
                              "id": 35380,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "11381:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_uint64_$",
                                "typeString": "type(uint64)"
                              },
                              "typeName": {
                                "id": 35379,
                                "name": "uint64",
                                "nodeType": "ElementaryTypeName",
                                "src": "11381:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35383,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "11381:34:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          {
                            "arguments": [
                              {
                                "hexValue": "30783238",
                                "id": 35386,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "11424:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_40_by_1",
                                  "typeString": "int_const 40"
                                },
                                "value": "0x28"
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_rational_40_by_1",
                                  "typeString": "int_const 40"
                                }
                              ],
                              "id": 35385,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "11417:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_bytes1_$",
                                "typeString": "type(bytes1)"
                              },
                              "typeName": {
                                "id": 35384,
                                "name": "bytes1",
                                "nodeType": "ElementaryTypeName",
                                "src": "11417:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35387,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "11417:12:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            },
                            {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          ],
                          "id": 35378,
                          "name": "encode",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [
                            34613,
                            34628,
                            34646,
                            34740,
                            35013,
                            35103,
                            35199,
                            35246,
                            35315,
                            35335,
                            35403
                          ],
                          "referencedDeclaration": 34740,
                          "src": "11374:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                          }
                        },
                        "id": 35388,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "11374:56:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "arguments": [
                          {
                            "arguments": [
                              {
                                "expression": {
                                  "id": 35392,
                                  "name": "sla",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35338,
                                  "src": "11459:3:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonSLAv1_$37814_memory_ptr",
                                    "typeString": "struct Witnet.RadonSLAv1 memory"
                                  }
                                },
                                "id": 35393,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "11463:17:114",
                                "memberName": "witnessCollateral",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37811,
                                "src": "11459:21:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint64",
                                  "typeString": "uint64"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint64",
                                  "typeString": "uint64"
                                }
                              ],
                              "id": 35391,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "11452:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_uint64_$",
                                "typeString": "type(uint64)"
                              },
                              "typeName": {
                                "id": 35390,
                                "name": "uint64",
                                "nodeType": "ElementaryTypeName",
                                "src": "11452:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35394,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "11452:29:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          {
                            "arguments": [
                              {
                                "hexValue": "30783330",
                                "id": 35397,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "number",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "11490:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_rational_48_by_1",
                                  "typeString": "int_const 48"
                                },
                                "value": "0x30"
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_rational_48_by_1",
                                  "typeString": "int_const 48"
                                }
                              ],
                              "id": 35396,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "nodeType": "ElementaryTypeNameExpression",
                              "src": "11483:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_bytes1_$",
                                "typeString": "type(bytes1)"
                              },
                              "typeName": {
                                "id": 35395,
                                "name": "bytes1",
                                "nodeType": "ElementaryTypeName",
                                "src": "11483:6:114",
                                "typeDescriptions": {}
                              }
                            },
                            "id": 35398,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "11483:12:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            },
                            {
                              "typeIdentifier": "t_bytes1",
                              "typeString": "bytes1"
                            }
                          ],
                          "id": 35389,
                          "name": "encode",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [
                            34613,
                            34628,
                            34646,
                            34740,
                            35013,
                            35103,
                            35199,
                            35246,
                            35315,
                            35335,
                            35403
                          ],
                          "referencedDeclaration": 34740,
                          "src": "11445:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_uint64_$_t_bytes1_$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function (uint64,bytes1) pure returns (bytes memory)"
                          }
                        },
                        "id": 35399,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "11445:51:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      ],
                      "expression": {
                        "id": 35343,
                        "name": "abi",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 4294967295,
                        "src": "11151:3:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_magic_abi",
                          "typeString": "abi"
                        }
                      },
                      "id": 35344,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "memberLocation": "11155:12:114",
                      "memberName": "encodePacked",
                      "nodeType": "MemberAccess",
                      "src": "11151:16:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$",
                        "typeString": "function () pure returns (bytes memory)"
                      }
                    },
                    "id": 35400,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "11151:356:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "functionReturnParameters": 35342,
                  "id": 35401,
                  "nodeType": "Return",
                  "src": "11144:363:114"
                }
              ]
            },
            "functionSelector": "b7aa578f",
            "id": 35403,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "encode",
            "nameLocation": "11038:6:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 35339,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35338,
                  "mutability": "mutable",
                  "name": "sla",
                  "nameLocation": "11070:3:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35403,
                  "src": "11045:28:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonSLAv1_$37814_memory_ptr",
                    "typeString": "struct Witnet.RadonSLAv1"
                  },
                  "typeName": {
                    "id": 35337,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 35336,
                      "name": "Witnet.RadonSLAv1",
                      "nameLocations": [
                        "11045:6:114",
                        "11052:10:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37814,
                      "src": "11045:17:114"
                    },
                    "referencedDeclaration": 37814,
                    "src": "11045:17:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonSLAv1_$37814_storage_ptr",
                      "typeString": "struct Witnet.RadonSLAv1"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11044:30:114"
            },
            "returnParameters": {
              "id": 35342,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35341,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 35403,
                  "src": "11114:12:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 35340,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "11114:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11113:14:114"
            },
            "scope": 36466,
            "src": "11029:486:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 35462,
              "nodeType": "Block",
              "src": "11727:405:114",
              "statements": [
                {
                  "assignments": [
                    35418
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 35418,
                      "mutability": "mutable",
                      "name": "cbor",
                      "nameLocation": "11761:4:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 35462,
                      "src": "11738:27:114",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                        "typeString": "struct WitnetCBOR.CBOR"
                      },
                      "typeName": {
                        "id": 35417,
                        "nodeType": "UserDefinedTypeName",
                        "pathNode": {
                          "id": 35416,
                          "name": "WitnetCBOR.CBOR",
                          "nameLocations": [
                            "11738:10:114",
                            "11749:4:114"
                          ],
                          "nodeType": "IdentifierPath",
                          "referencedDeclaration": 42658,
                          "src": "11738:15:114"
                        },
                        "referencedDeclaration": 42658,
                        "src": "11738:15:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_CBOR_$42658_storage_ptr",
                          "typeString": "struct WitnetCBOR.CBOR"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 35423,
                  "initialValue": {
                    "arguments": [
                      {
                        "id": 35421,
                        "name": "data",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35405,
                        "src": "11789:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      ],
                      "expression": {
                        "id": 35419,
                        "name": "WitnetCBOR",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 44174,
                        "src": "11768:10:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_contract$_WitnetCBOR_$44174_$",
                          "typeString": "type(library WitnetCBOR)"
                        }
                      },
                      "id": 35420,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "11779:9:114",
                      "memberName": "fromBytes",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 42799,
                      "src": "11768:20:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_struct$_CBOR_$42658_memory_ptr_$",
                        "typeString": "function (bytes memory) pure returns (struct WitnetCBOR.CBOR memory)"
                      }
                    },
                    "id": 35422,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "11768:26:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                      "typeString": "struct WitnetCBOR.CBOR memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "11738:56:114"
                },
                {
                  "body": {
                    "id": 35456,
                    "nodeType": "Block",
                    "src": "11825:266:114",
                    "statements": [
                      {
                        "condition": {
                          "commonType": {
                            "typeIdentifier": "t_uint8",
                            "typeString": "uint8"
                          },
                          "id": 35432,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "expression": {
                              "id": 35428,
                              "name": "cbor",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 35418,
                              "src": "11844:4:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                "typeString": "struct WitnetCBOR.CBOR memory"
                              }
                            },
                            "id": 35429,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "11849:9:114",
                            "memberName": "majorType",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 42651,
                            "src": "11844:14:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint8",
                              "typeString": "uint8"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "==",
                          "rightExpression": {
                            "expression": {
                              "id": 35430,
                              "name": "WitnetCBOR",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 44174,
                              "src": "11862:10:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_contract$_WitnetCBOR_$44174_$",
                                "typeString": "type(library WitnetCBOR)"
                              }
                            },
                            "id": 35431,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "memberLocation": "11873:17:114",
                            "memberName": "MAJOR_TYPE_STRING",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 42670,
                            "src": "11862:28:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint8",
                              "typeString": "uint8"
                            }
                          },
                          "src": "11844:46:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "falseBody": {
                          "id": 35454,
                          "nodeType": "Block",
                          "src": "12018:62:114",
                          "statements": [
                            {
                              "expression": {
                                "id": 35452,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "id": 35446,
                                  "name": "cbor",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35418,
                                  "src": "12037:4:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                    "typeString": "struct WitnetCBOR.CBOR memory"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "arguments": [],
                                  "expression": {
                                    "argumentTypes": [],
                                    "expression": {
                                      "arguments": [],
                                      "expression": {
                                        "argumentTypes": [],
                                        "expression": {
                                          "id": 35447,
                                          "name": "cbor",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 35418,
                                          "src": "12044:4:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                            "typeString": "struct WitnetCBOR.CBOR memory"
                                          }
                                        },
                                        "id": 35448,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberLocation": "12049:4:114",
                                        "memberName": "skip",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 43079,
                                        "src": "12044:9:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_function_internal_pure$_t_struct$_CBOR_$42658_memory_ptr_$returns$_t_struct$_CBOR_$42658_memory_ptr_$attached_to$_t_struct$_CBOR_$42658_memory_ptr_$",
                                          "typeString": "function (struct WitnetCBOR.CBOR memory) pure returns (struct WitnetCBOR.CBOR memory)"
                                        }
                                      },
                                      "id": 35449,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "functionCall",
                                      "lValueRequested": false,
                                      "nameLocations": [],
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "12044:11:114",
                                      "tryCall": false,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                        "typeString": "struct WitnetCBOR.CBOR memory"
                                      }
                                    },
                                    "id": 35450,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "12056:6:114",
                                    "memberName": "settle",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 42959,
                                    "src": "12044:18:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_function_internal_pure$_t_struct$_CBOR_$42658_memory_ptr_$returns$_t_struct$_CBOR_$42658_memory_ptr_$attached_to$_t_struct$_CBOR_$42658_memory_ptr_$",
                                      "typeString": "function (struct WitnetCBOR.CBOR memory) pure returns (struct WitnetCBOR.CBOR memory)"
                                    }
                                  },
                                  "id": 35451,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "functionCall",
                                  "lValueRequested": false,
                                  "nameLocations": [],
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "12044:20:114",
                                  "tryCall": false,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                    "typeString": "struct WitnetCBOR.CBOR memory"
                                  }
                                },
                                "src": "12037:27:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                  "typeString": "struct WitnetCBOR.CBOR memory"
                                }
                              },
                              "id": 35453,
                              "nodeType": "ExpressionStatement",
                              "src": "12037:27:114"
                            }
                          ]
                        },
                        "id": 35455,
                        "nodeType": "IfStatement",
                        "src": "11840:240:114",
                        "trueBody": {
                          "id": 35445,
                          "nodeType": "Block",
                          "src": "11892:120:114",
                          "statements": [
                            {
                              "expression": {
                                "arguments": [
                                  {
                                    "id": 35434,
                                    "name": "cbor",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 35418,
                                    "src": "11932:4:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                      "typeString": "struct WitnetCBOR.CBOR memory"
                                    }
                                  },
                                  {
                                    "id": 35435,
                                    "name": "argIndex",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 35407,
                                    "src": "11938:8:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint8",
                                      "typeString": "uint8"
                                    }
                                  },
                                  {
                                    "id": 35436,
                                    "name": "argValue",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 35409,
                                    "src": "11948:8:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_string_memory_ptr",
                                      "typeString": "string memory"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                      "typeString": "struct WitnetCBOR.CBOR memory"
                                    },
                                    {
                                      "typeIdentifier": "t_uint8",
                                      "typeString": "uint8"
                                    },
                                    {
                                      "typeIdentifier": "t_string_memory_ptr",
                                      "typeString": "string memory"
                                    }
                                  ],
                                  "id": 35433,
                                  "name": "_replaceCborWildcard",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 36249,
                                  "src": "11911:20:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_pure$_t_struct$_CBOR_$42658_memory_ptr_$_t_uint8_$_t_string_memory_ptr_$returns$__$",
                                    "typeString": "function (struct WitnetCBOR.CBOR memory,uint8,string memory) pure"
                                  }
                                },
                                "id": 35437,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "11911:46:114",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_tuple$__$",
                                  "typeString": "tuple()"
                                }
                              },
                              "id": 35438,
                              "nodeType": "ExpressionStatement",
                              "src": "11911:46:114"
                            },
                            {
                              "expression": {
                                "id": 35443,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "id": 35439,
                                  "name": "cbor",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35418,
                                  "src": "11976:4:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                    "typeString": "struct WitnetCBOR.CBOR memory"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "arguments": [],
                                  "expression": {
                                    "argumentTypes": [],
                                    "expression": {
                                      "id": 35440,
                                      "name": "cbor",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 35418,
                                      "src": "11983:4:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                        "typeString": "struct WitnetCBOR.CBOR memory"
                                      }
                                    },
                                    "id": 35441,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "11988:6:114",
                                    "memberName": "settle",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 42959,
                                    "src": "11983:11:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_function_internal_pure$_t_struct$_CBOR_$42658_memory_ptr_$returns$_t_struct$_CBOR_$42658_memory_ptr_$attached_to$_t_struct$_CBOR_$42658_memory_ptr_$",
                                      "typeString": "function (struct WitnetCBOR.CBOR memory) pure returns (struct WitnetCBOR.CBOR memory)"
                                    }
                                  },
                                  "id": 35442,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "functionCall",
                                  "lValueRequested": false,
                                  "nameLocations": [],
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "11983:13:114",
                                  "tryCall": false,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                    "typeString": "struct WitnetCBOR.CBOR memory"
                                  }
                                },
                                "src": "11976:20:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                  "typeString": "struct WitnetCBOR.CBOR memory"
                                }
                              },
                              "id": 35444,
                              "nodeType": "ExpressionStatement",
                              "src": "11976:20:114"
                            }
                          ]
                        }
                      }
                    ]
                  },
                  "condition": {
                    "id": 35427,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "UnaryOperation",
                    "operator": "!",
                    "prefix": true,
                    "src": "11812:11:114",
                    "subExpression": {
                      "arguments": [],
                      "expression": {
                        "argumentTypes": [],
                        "expression": {
                          "id": 35424,
                          "name": "cbor",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35418,
                          "src": "11813:4:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                            "typeString": "struct WitnetCBOR.CBOR memory"
                          }
                        },
                        "id": 35425,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "11818:3:114",
                        "memberName": "eof",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 42774,
                        "src": "11813:8:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_internal_pure$_t_struct$_CBOR_$42658_memory_ptr_$returns$_t_bool_$attached_to$_t_struct$_CBOR_$42658_memory_ptr_$",
                          "typeString": "function (struct WitnetCBOR.CBOR memory) pure returns (bool)"
                        }
                      },
                      "id": 35426,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "11813:10:114",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 35457,
                  "nodeType": "WhileStatement",
                  "src": "11805:286:114"
                },
                {
                  "expression": {
                    "expression": {
                      "expression": {
                        "id": 35458,
                        "name": "cbor",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35418,
                        "src": "12108:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                          "typeString": "struct WitnetCBOR.CBOR memory"
                        }
                      },
                      "id": 35459,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "12113:6:114",
                      "memberName": "buffer",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 42647,
                      "src": "12108:11:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_Buffer_$40764_memory_ptr",
                        "typeString": "struct WitnetBuffer.Buffer memory"
                      }
                    },
                    "id": 35460,
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberLocation": "12120:4:114",
                    "memberName": "data",
                    "nodeType": "MemberAccess",
                    "referencedDeclaration": 40761,
                    "src": "12108:16:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "functionReturnParameters": 35413,
                  "id": 35461,
                  "nodeType": "Return",
                  "src": "12101:23:114"
                }
              ]
            },
            "functionSelector": "26ee3827",
            "id": 35463,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "replaceCborStringsFromBytes",
            "nameLocation": "11532:27:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 35410,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35405,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "11587:4:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35463,
                  "src": "11574:17:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 35404,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "11574:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35407,
                  "mutability": "mutable",
                  "name": "argIndex",
                  "nameLocation": "11612:8:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35463,
                  "src": "11606:14:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 35406,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "11606:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35409,
                  "mutability": "mutable",
                  "name": "argValue",
                  "nameLocation": "11649:8:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35463,
                  "src": "11635:22:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 35408,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "11635:6:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11559:109:114"
            },
            "returnParameters": {
              "id": 35413,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35412,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 35463,
                  "src": "11708:12:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 35411,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "11708:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11707:14:114"
            },
            "scope": 36466,
            "src": "11523:609:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 35520,
              "nodeType": "Block",
              "src": "12313:392:114",
              "statements": [
                {
                  "assignments": [
                    35477
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 35477,
                      "mutability": "mutable",
                      "name": "cbor",
                      "nameLocation": "12347:4:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 35520,
                      "src": "12324:27:114",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                        "typeString": "struct WitnetCBOR.CBOR"
                      },
                      "typeName": {
                        "id": 35476,
                        "nodeType": "UserDefinedTypeName",
                        "pathNode": {
                          "id": 35475,
                          "name": "WitnetCBOR.CBOR",
                          "nameLocations": [
                            "12324:10:114",
                            "12335:4:114"
                          ],
                          "nodeType": "IdentifierPath",
                          "referencedDeclaration": 42658,
                          "src": "12324:15:114"
                        },
                        "referencedDeclaration": 42658,
                        "src": "12324:15:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_CBOR_$42658_storage_ptr",
                          "typeString": "struct WitnetCBOR.CBOR"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 35482,
                  "initialValue": {
                    "arguments": [
                      {
                        "id": 35480,
                        "name": "data",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35465,
                        "src": "12375:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      ],
                      "expression": {
                        "id": 35478,
                        "name": "WitnetCBOR",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 44174,
                        "src": "12354:10:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_contract$_WitnetCBOR_$44174_$",
                          "typeString": "type(library WitnetCBOR)"
                        }
                      },
                      "id": 35479,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "12365:9:114",
                      "memberName": "fromBytes",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 42799,
                      "src": "12354:20:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_struct$_CBOR_$42658_memory_ptr_$",
                        "typeString": "function (bytes memory) pure returns (struct WitnetCBOR.CBOR memory)"
                      }
                    },
                    "id": 35481,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "12354:26:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                      "typeString": "struct WitnetCBOR.CBOR memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "12324:56:114"
                },
                {
                  "body": {
                    "id": 35514,
                    "nodeType": "Block",
                    "src": "12411:253:114",
                    "statements": [
                      {
                        "condition": {
                          "commonType": {
                            "typeIdentifier": "t_uint8",
                            "typeString": "uint8"
                          },
                          "id": 35491,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "expression": {
                              "id": 35487,
                              "name": "cbor",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 35477,
                              "src": "12430:4:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                "typeString": "struct WitnetCBOR.CBOR memory"
                              }
                            },
                            "id": 35488,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "12435:9:114",
                            "memberName": "majorType",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 42651,
                            "src": "12430:14:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint8",
                              "typeString": "uint8"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "==",
                          "rightExpression": {
                            "expression": {
                              "id": 35489,
                              "name": "WitnetCBOR",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 44174,
                              "src": "12448:10:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_contract$_WitnetCBOR_$44174_$",
                                "typeString": "type(library WitnetCBOR)"
                              }
                            },
                            "id": 35490,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "memberLocation": "12459:17:114",
                            "memberName": "MAJOR_TYPE_STRING",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 42670,
                            "src": "12448:28:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint8",
                              "typeString": "uint8"
                            }
                          },
                          "src": "12430:46:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "falseBody": {
                          "id": 35512,
                          "nodeType": "Block",
                          "src": "12591:62:114",
                          "statements": [
                            {
                              "expression": {
                                "id": 35510,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "id": 35504,
                                  "name": "cbor",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35477,
                                  "src": "12610:4:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                    "typeString": "struct WitnetCBOR.CBOR memory"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "arguments": [],
                                  "expression": {
                                    "argumentTypes": [],
                                    "expression": {
                                      "arguments": [],
                                      "expression": {
                                        "argumentTypes": [],
                                        "expression": {
                                          "id": 35505,
                                          "name": "cbor",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 35477,
                                          "src": "12617:4:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                            "typeString": "struct WitnetCBOR.CBOR memory"
                                          }
                                        },
                                        "id": 35506,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberLocation": "12622:4:114",
                                        "memberName": "skip",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 43079,
                                        "src": "12617:9:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_function_internal_pure$_t_struct$_CBOR_$42658_memory_ptr_$returns$_t_struct$_CBOR_$42658_memory_ptr_$attached_to$_t_struct$_CBOR_$42658_memory_ptr_$",
                                          "typeString": "function (struct WitnetCBOR.CBOR memory) pure returns (struct WitnetCBOR.CBOR memory)"
                                        }
                                      },
                                      "id": 35507,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "functionCall",
                                      "lValueRequested": false,
                                      "nameLocations": [],
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "12617:11:114",
                                      "tryCall": false,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                        "typeString": "struct WitnetCBOR.CBOR memory"
                                      }
                                    },
                                    "id": 35508,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "12629:6:114",
                                    "memberName": "settle",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 42959,
                                    "src": "12617:18:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_function_internal_pure$_t_struct$_CBOR_$42658_memory_ptr_$returns$_t_struct$_CBOR_$42658_memory_ptr_$attached_to$_t_struct$_CBOR_$42658_memory_ptr_$",
                                      "typeString": "function (struct WitnetCBOR.CBOR memory) pure returns (struct WitnetCBOR.CBOR memory)"
                                    }
                                  },
                                  "id": 35509,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "functionCall",
                                  "lValueRequested": false,
                                  "nameLocations": [],
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "12617:20:114",
                                  "tryCall": false,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                    "typeString": "struct WitnetCBOR.CBOR memory"
                                  }
                                },
                                "src": "12610:27:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                  "typeString": "struct WitnetCBOR.CBOR memory"
                                }
                              },
                              "id": 35511,
                              "nodeType": "ExpressionStatement",
                              "src": "12610:27:114"
                            }
                          ]
                        },
                        "id": 35513,
                        "nodeType": "IfStatement",
                        "src": "12426:227:114",
                        "trueBody": {
                          "id": 35503,
                          "nodeType": "Block",
                          "src": "12478:107:114",
                          "statements": [
                            {
                              "expression": {
                                "arguments": [
                                  {
                                    "id": 35493,
                                    "name": "cbor",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 35477,
                                    "src": "12519:4:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                      "typeString": "struct WitnetCBOR.CBOR memory"
                                    }
                                  },
                                  {
                                    "id": 35494,
                                    "name": "args",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 35468,
                                    "src": "12525:4:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                                      "typeString": "string memory[] memory"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                      "typeString": "struct WitnetCBOR.CBOR memory"
                                    },
                                    {
                                      "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                                      "typeString": "string memory[] memory"
                                    }
                                  ],
                                  "id": 35492,
                                  "name": "_replaceCborWildcards",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 36334,
                                  "src": "12497:21:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_pure$_t_struct$_CBOR_$42658_memory_ptr_$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$returns$__$",
                                    "typeString": "function (struct WitnetCBOR.CBOR memory,string memory[] memory) pure"
                                  }
                                },
                                "id": 35495,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "12497:33:114",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_tuple$__$",
                                  "typeString": "tuple()"
                                }
                              },
                              "id": 35496,
                              "nodeType": "ExpressionStatement",
                              "src": "12497:33:114"
                            },
                            {
                              "expression": {
                                "id": 35501,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "id": 35497,
                                  "name": "cbor",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35477,
                                  "src": "12549:4:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                    "typeString": "struct WitnetCBOR.CBOR memory"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "arguments": [],
                                  "expression": {
                                    "argumentTypes": [],
                                    "expression": {
                                      "id": 35498,
                                      "name": "cbor",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 35477,
                                      "src": "12556:4:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                        "typeString": "struct WitnetCBOR.CBOR memory"
                                      }
                                    },
                                    "id": 35499,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "12561:6:114",
                                    "memberName": "settle",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 42959,
                                    "src": "12556:11:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_function_internal_pure$_t_struct$_CBOR_$42658_memory_ptr_$returns$_t_struct$_CBOR_$42658_memory_ptr_$attached_to$_t_struct$_CBOR_$42658_memory_ptr_$",
                                      "typeString": "function (struct WitnetCBOR.CBOR memory) pure returns (struct WitnetCBOR.CBOR memory)"
                                    }
                                  },
                                  "id": 35500,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "functionCall",
                                  "lValueRequested": false,
                                  "nameLocations": [],
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "12556:13:114",
                                  "tryCall": false,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                    "typeString": "struct WitnetCBOR.CBOR memory"
                                  }
                                },
                                "src": "12549:20:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                  "typeString": "struct WitnetCBOR.CBOR memory"
                                }
                              },
                              "id": 35502,
                              "nodeType": "ExpressionStatement",
                              "src": "12549:20:114"
                            }
                          ]
                        }
                      }
                    ]
                  },
                  "condition": {
                    "id": 35486,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "UnaryOperation",
                    "operator": "!",
                    "prefix": true,
                    "src": "12398:11:114",
                    "subExpression": {
                      "arguments": [],
                      "expression": {
                        "argumentTypes": [],
                        "expression": {
                          "id": 35483,
                          "name": "cbor",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35477,
                          "src": "12399:4:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                            "typeString": "struct WitnetCBOR.CBOR memory"
                          }
                        },
                        "id": 35484,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "12404:3:114",
                        "memberName": "eof",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 42774,
                        "src": "12399:8:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_internal_pure$_t_struct$_CBOR_$42658_memory_ptr_$returns$_t_bool_$attached_to$_t_struct$_CBOR_$42658_memory_ptr_$",
                          "typeString": "function (struct WitnetCBOR.CBOR memory) pure returns (bool)"
                        }
                      },
                      "id": 35485,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "12399:10:114",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 35515,
                  "nodeType": "WhileStatement",
                  "src": "12391:273:114"
                },
                {
                  "expression": {
                    "expression": {
                      "expression": {
                        "id": 35516,
                        "name": "cbor",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35477,
                        "src": "12681:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                          "typeString": "struct WitnetCBOR.CBOR memory"
                        }
                      },
                      "id": 35517,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "12686:6:114",
                      "memberName": "buffer",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 42647,
                      "src": "12681:11:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_Buffer_$40764_memory_ptr",
                        "typeString": "struct WitnetBuffer.Buffer memory"
                      }
                    },
                    "id": 35518,
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberLocation": "12693:4:114",
                    "memberName": "data",
                    "nodeType": "MemberAccess",
                    "referencedDeclaration": 40761,
                    "src": "12681:16:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "functionReturnParameters": 35472,
                  "id": 35519,
                  "nodeType": "Return",
                  "src": "12674:23:114"
                }
              ]
            },
            "functionSelector": "dfaecd11",
            "id": 35521,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "replaceCborStringsFromBytes",
            "nameLocation": "12149:27:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 35469,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35465,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "12204:4:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35521,
                  "src": "12191:17:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 35464,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "12191:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35468,
                  "mutability": "mutable",
                  "name": "args",
                  "nameLocation": "12239:4:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35521,
                  "src": "12223:20:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                    "typeString": "string[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 35466,
                      "name": "string",
                      "nodeType": "ElementaryTypeName",
                      "src": "12223:6:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_storage_ptr",
                        "typeString": "string"
                      }
                    },
                    "id": 35467,
                    "nodeType": "ArrayTypeName",
                    "src": "12223:8:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                      "typeString": "string[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12176:78:114"
            },
            "returnParameters": {
              "id": 35472,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35471,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 35521,
                  "src": "12294:12:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 35470,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "12294:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12293:14:114"
            },
            "scope": 36466,
            "src": "12140:565:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 35625,
              "nodeType": "Block",
              "src": "12888:548:114",
              "statements": [
                {
                  "expression": {
                    "id": 35544,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "expression": {
                        "id": 35534,
                        "name": "self",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35524,
                        "src": "12899:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                          "typeString": "struct Witnet.RadonRetrieval memory"
                        }
                      },
                      "id": 35536,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberLocation": "12904:3:114",
                      "memberName": "url",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 37785,
                      "src": "12899:8:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_memory_ptr",
                        "typeString": "string memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "expression": {
                            "id": 35539,
                            "name": "self",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35524,
                            "src": "12931:4:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                              "typeString": "struct Witnet.RadonRetrieval memory"
                            }
                          },
                          "id": 35540,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "12936:3:114",
                          "memberName": "url",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37785,
                          "src": "12931:8:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          }
                        },
                        {
                          "id": 35541,
                          "name": "argIndex",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35526,
                          "src": "12941:8:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint8",
                            "typeString": "uint8"
                          }
                        },
                        {
                          "id": 35542,
                          "name": "argValue",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35528,
                          "src": "12951:8:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          },
                          {
                            "typeIdentifier": "t_uint8",
                            "typeString": "uint8"
                          },
                          {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          }
                        ],
                        "expression": {
                          "id": 35537,
                          "name": "WitnetBuffer",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 42631,
                          "src": "12910:12:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_WitnetBuffer_$42631_$",
                            "typeString": "type(library WitnetBuffer)"
                          }
                        },
                        "id": 35538,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "12923:7:114",
                        "memberName": "replace",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 42529,
                        "src": "12910:20:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_uint8_$_t_string_memory_ptr_$returns$_t_string_memory_ptr_$",
                          "typeString": "function (string memory,uint8,string memory) pure returns (string memory)"
                        }
                      },
                      "id": 35543,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "12910:50:114",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_memory_ptr",
                        "typeString": "string memory"
                      }
                    },
                    "src": "12899:61:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_memory_ptr",
                      "typeString": "string memory"
                    }
                  },
                  "id": 35545,
                  "nodeType": "ExpressionStatement",
                  "src": "12899:61:114"
                },
                {
                  "expression": {
                    "id": 35556,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "expression": {
                        "id": 35546,
                        "name": "self",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35524,
                        "src": "12971:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                          "typeString": "struct Witnet.RadonRetrieval memory"
                        }
                      },
                      "id": 35548,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberLocation": "12976:4:114",
                      "memberName": "body",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 37787,
                      "src": "12971:9:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_memory_ptr",
                        "typeString": "string memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "expression": {
                            "id": 35551,
                            "name": "self",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35524,
                            "src": "13004:4:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                              "typeString": "struct Witnet.RadonRetrieval memory"
                            }
                          },
                          "id": 35552,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "13009:4:114",
                          "memberName": "body",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37787,
                          "src": "13004:9:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          }
                        },
                        {
                          "id": 35553,
                          "name": "argIndex",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35526,
                          "src": "13015:8:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint8",
                            "typeString": "uint8"
                          }
                        },
                        {
                          "id": 35554,
                          "name": "argValue",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35528,
                          "src": "13025:8:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          },
                          {
                            "typeIdentifier": "t_uint8",
                            "typeString": "uint8"
                          },
                          {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          }
                        ],
                        "expression": {
                          "id": 35549,
                          "name": "WitnetBuffer",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 42631,
                          "src": "12983:12:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_WitnetBuffer_$42631_$",
                            "typeString": "type(library WitnetBuffer)"
                          }
                        },
                        "id": 35550,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "12996:7:114",
                        "memberName": "replace",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 42529,
                        "src": "12983:20:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_uint8_$_t_string_memory_ptr_$returns$_t_string_memory_ptr_$",
                          "typeString": "function (string memory,uint8,string memory) pure returns (string memory)"
                        }
                      },
                      "id": 35555,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "12983:51:114",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_memory_ptr",
                        "typeString": "string memory"
                      }
                    },
                    "src": "12971:63:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_memory_ptr",
                      "typeString": "string memory"
                    }
                  },
                  "id": 35557,
                  "nodeType": "ExpressionStatement",
                  "src": "12971:63:114"
                },
                {
                  "expression": {
                    "id": 35567,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "expression": {
                        "id": 35558,
                        "name": "self",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35524,
                        "src": "13045:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                          "typeString": "struct Witnet.RadonRetrieval memory"
                        }
                      },
                      "id": 35560,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberLocation": "13050:11:114",
                      "memberName": "radonScript",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 37794,
                      "src": "13045:16:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "expression": {
                            "id": 35562,
                            "name": "self",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35524,
                            "src": "13092:4:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                              "typeString": "struct Witnet.RadonRetrieval memory"
                            }
                          },
                          "id": 35563,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "13097:11:114",
                          "memberName": "radonScript",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37794,
                          "src": "13092:16:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        {
                          "id": 35564,
                          "name": "argIndex",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35526,
                          "src": "13110:8:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint8",
                            "typeString": "uint8"
                          }
                        },
                        {
                          "id": 35565,
                          "name": "argValue",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35528,
                          "src": "13120:8:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          },
                          {
                            "typeIdentifier": "t_uint8",
                            "typeString": "uint8"
                          },
                          {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          }
                        ],
                        "id": 35561,
                        "name": "replaceCborStringsFromBytes",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [
                          35463,
                          35521
                        ],
                        "referencedDeclaration": 35463,
                        "src": "13064:27:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint8_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                          "typeString": "function (bytes memory,uint8,string memory) pure returns (bytes memory)"
                        }
                      },
                      "id": 35566,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "13064:65:114",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes memory"
                      }
                    },
                    "src": "13045:84:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "id": 35568,
                  "nodeType": "ExpressionStatement",
                  "src": "13045:84:114"
                },
                {
                  "body": {
                    "id": 35621,
                    "nodeType": "Block",
                    "src": "13195:212:114",
                    "statements": [
                      {
                        "expression": {
                          "id": 35599,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "baseExpression": {
                              "baseExpression": {
                                "expression": {
                                  "id": 35581,
                                  "name": "self",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35524,
                                  "src": "13210:4:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                    "typeString": "struct Witnet.RadonRetrieval memory"
                                  }
                                },
                                "id": 35585,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "13215:7:114",
                                "memberName": "headers",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37792,
                                "src": "13210:12:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                  "typeString": "string memory[2] memory[] memory"
                                }
                              },
                              "id": 35586,
                              "indexExpression": {
                                "id": 35583,
                                "name": "_ix",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35570,
                                "src": "13223:3:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "13210:17:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_string_memory_ptr_$2_memory_ptr",
                                "typeString": "string memory[2] memory"
                              }
                            },
                            "id": 35587,
                            "indexExpression": {
                              "hexValue": "30",
                              "id": 35584,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "13228:1:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "13210:20:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "baseExpression": {
                                  "baseExpression": {
                                    "expression": {
                                      "id": 35590,
                                      "name": "self",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 35524,
                                      "src": "13254:4:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                        "typeString": "struct Witnet.RadonRetrieval memory"
                                      }
                                    },
                                    "id": 35591,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "13259:7:114",
                                    "memberName": "headers",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 37792,
                                    "src": "13254:12:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                      "typeString": "string memory[2] memory[] memory"
                                    }
                                  },
                                  "id": 35593,
                                  "indexExpression": {
                                    "id": 35592,
                                    "name": "_ix",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 35570,
                                    "src": "13267:3:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "13254:17:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_string_memory_ptr_$2_memory_ptr",
                                    "typeString": "string memory[2] memory"
                                  }
                                },
                                "id": 35595,
                                "indexExpression": {
                                  "hexValue": "30",
                                  "id": 35594,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "13272:1:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_0_by_1",
                                    "typeString": "int_const 0"
                                  },
                                  "value": "0"
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "13254:20:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                }
                              },
                              {
                                "id": 35596,
                                "name": "argIndex",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35526,
                                "src": "13276:8:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              },
                              {
                                "id": 35597,
                                "name": "argValue",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35528,
                                "src": "13286:8:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                },
                                {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                },
                                {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                }
                              ],
                              "expression": {
                                "id": 35588,
                                "name": "WitnetBuffer",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 42631,
                                "src": "13233:12:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_WitnetBuffer_$42631_$",
                                  "typeString": "type(library WitnetBuffer)"
                                }
                              },
                              "id": 35589,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "13246:7:114",
                              "memberName": "replace",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 42529,
                              "src": "13233:20:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_uint8_$_t_string_memory_ptr_$returns$_t_string_memory_ptr_$",
                                "typeString": "function (string memory,uint8,string memory) pure returns (string memory)"
                              }
                            },
                            "id": 35598,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "13233:62:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            }
                          },
                          "src": "13210:85:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          }
                        },
                        "id": 35600,
                        "nodeType": "ExpressionStatement",
                        "src": "13210:85:114"
                      },
                      {
                        "expression": {
                          "id": 35619,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "baseExpression": {
                              "baseExpression": {
                                "expression": {
                                  "id": 35601,
                                  "name": "self",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35524,
                                  "src": "13310:4:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                    "typeString": "struct Witnet.RadonRetrieval memory"
                                  }
                                },
                                "id": 35605,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "13315:7:114",
                                "memberName": "headers",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37792,
                                "src": "13310:12:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                  "typeString": "string memory[2] memory[] memory"
                                }
                              },
                              "id": 35606,
                              "indexExpression": {
                                "id": 35603,
                                "name": "_ix",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35570,
                                "src": "13323:3:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "13310:17:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_string_memory_ptr_$2_memory_ptr",
                                "typeString": "string memory[2] memory"
                              }
                            },
                            "id": 35607,
                            "indexExpression": {
                              "hexValue": "31",
                              "id": 35604,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "13328:1:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_1_by_1",
                                "typeString": "int_const 1"
                              },
                              "value": "1"
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "13310:20:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "baseExpression": {
                                  "baseExpression": {
                                    "expression": {
                                      "id": 35610,
                                      "name": "self",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 35524,
                                      "src": "13354:4:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                        "typeString": "struct Witnet.RadonRetrieval memory"
                                      }
                                    },
                                    "id": 35611,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "13359:7:114",
                                    "memberName": "headers",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 37792,
                                    "src": "13354:12:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                      "typeString": "string memory[2] memory[] memory"
                                    }
                                  },
                                  "id": 35613,
                                  "indexExpression": {
                                    "id": 35612,
                                    "name": "_ix",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 35570,
                                    "src": "13367:3:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "13354:17:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_string_memory_ptr_$2_memory_ptr",
                                    "typeString": "string memory[2] memory"
                                  }
                                },
                                "id": 35615,
                                "indexExpression": {
                                  "hexValue": "31",
                                  "id": 35614,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "13372:1:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_1_by_1",
                                    "typeString": "int_const 1"
                                  },
                                  "value": "1"
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "13354:20:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                }
                              },
                              {
                                "id": 35616,
                                "name": "argIndex",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35526,
                                "src": "13376:8:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              },
                              {
                                "id": 35617,
                                "name": "argValue",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35528,
                                "src": "13386:8:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                },
                                {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                },
                                {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                }
                              ],
                              "expression": {
                                "id": 35608,
                                "name": "WitnetBuffer",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 42631,
                                "src": "13333:12:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_WitnetBuffer_$42631_$",
                                  "typeString": "type(library WitnetBuffer)"
                                }
                              },
                              "id": 35609,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "13346:7:114",
                              "memberName": "replace",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 42529,
                              "src": "13333:20:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_uint8_$_t_string_memory_ptr_$returns$_t_string_memory_ptr_$",
                                "typeString": "function (string memory,uint8,string memory) pure returns (string memory)"
                              }
                            },
                            "id": 35618,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "13333:62:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            }
                          },
                          "src": "13310:85:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          }
                        },
                        "id": 35620,
                        "nodeType": "ExpressionStatement",
                        "src": "13310:85:114"
                      }
                    ]
                  },
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 35577,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "id": 35573,
                      "name": "_ix",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 35570,
                      "src": "13160:3:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "<",
                    "rightExpression": {
                      "expression": {
                        "expression": {
                          "id": 35574,
                          "name": "self",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35524,
                          "src": "13166:4:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                            "typeString": "struct Witnet.RadonRetrieval memory"
                          }
                        },
                        "id": 35575,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "13171:7:114",
                        "memberName": "headers",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37792,
                        "src": "13166:12:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                          "typeString": "string memory[2] memory[] memory"
                        }
                      },
                      "id": 35576,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "13179:6:114",
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "src": "13166:19:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "13160:25:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 35622,
                  "initializationExpression": {
                    "assignments": [
                      35570
                    ],
                    "declarations": [
                      {
                        "constant": false,
                        "id": 35570,
                        "mutability": "mutable",
                        "name": "_ix",
                        "nameLocation": "13150:3:114",
                        "nodeType": "VariableDeclaration",
                        "scope": 35622,
                        "src": "13145:8:114",
                        "stateVariable": false,
                        "storageLocation": "default",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "typeName": {
                          "id": 35569,
                          "name": "uint",
                          "nodeType": "ElementaryTypeName",
                          "src": "13145:4:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "visibility": "internal"
                      }
                    ],
                    "id": 35572,
                    "initialValue": {
                      "hexValue": "30",
                      "id": 35571,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "13156:1:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "nodeType": "VariableDeclarationStatement",
                    "src": "13145:12:114"
                  },
                  "isSimpleCounterLoop": true,
                  "loopExpression": {
                    "expression": {
                      "id": 35579,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "UnaryOperation",
                      "operator": "++",
                      "prefix": false,
                      "src": "13187:6:114",
                      "subExpression": {
                        "id": 35578,
                        "name": "_ix",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35570,
                        "src": "13187:3:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 35580,
                    "nodeType": "ExpressionStatement",
                    "src": "13187:6:114"
                  },
                  "nodeType": "ForStatement",
                  "src": "13140:267:114"
                },
                {
                  "expression": {
                    "id": 35623,
                    "name": "self",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 35524,
                    "src": "13424:4:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                      "typeString": "struct Witnet.RadonRetrieval memory"
                    }
                  },
                  "functionReturnParameters": 35533,
                  "id": 35624,
                  "nodeType": "Return",
                  "src": "13417:11:114"
                }
              ]
            },
            "functionSelector": "31d5650c",
            "id": 35626,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "replaceWildcards",
            "nameLocation": "12722:16:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 35529,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35524,
                  "mutability": "mutable",
                  "name": "self",
                  "nameLocation": "12768:4:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35626,
                  "src": "12739:33:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                    "typeString": "struct Witnet.RadonRetrieval"
                  },
                  "typeName": {
                    "id": 35523,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 35522,
                      "name": "Witnet.RadonRetrieval",
                      "nameLocations": [
                        "12739:6:114",
                        "12746:14:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37795,
                      "src": "12739:21:114"
                    },
                    "referencedDeclaration": 37795,
                    "src": "12739:21:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage_ptr",
                      "typeString": "struct Witnet.RadonRetrieval"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35526,
                  "mutability": "mutable",
                  "name": "argIndex",
                  "nameLocation": "12780:8:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35626,
                  "src": "12774:14:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 35525,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "12774:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35528,
                  "mutability": "mutable",
                  "name": "argValue",
                  "nameLocation": "12804:8:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35626,
                  "src": "12790:22:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 35527,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "12790:6:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12738:75:114"
            },
            "returnParameters": {
              "id": 35533,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35532,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 35626,
                  "src": "12853:28:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                    "typeString": "struct Witnet.RadonRetrieval"
                  },
                  "typeName": {
                    "id": 35531,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 35530,
                      "name": "Witnet.RadonRetrieval",
                      "nameLocations": [
                        "12853:6:114",
                        "12860:14:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37795,
                      "src": "12853:21:114"
                    },
                    "referencedDeclaration": 37795,
                    "src": "12853:21:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage_ptr",
                      "typeString": "struct Witnet.RadonRetrieval"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12852:30:114"
            },
            "scope": 36466,
            "src": "12713:723:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 35724,
              "nodeType": "Block",
              "src": "13601:478:114",
              "statements": [
                {
                  "expression": {
                    "id": 35647,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "expression": {
                        "id": 35638,
                        "name": "self",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35629,
                        "src": "13612:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                          "typeString": "struct Witnet.RadonRetrieval memory"
                        }
                      },
                      "id": 35640,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberLocation": "13617:3:114",
                      "memberName": "url",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 37785,
                      "src": "13612:8:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_memory_ptr",
                        "typeString": "string memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "expression": {
                            "id": 35643,
                            "name": "self",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35629,
                            "src": "13644:4:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                              "typeString": "struct Witnet.RadonRetrieval memory"
                            }
                          },
                          "id": 35644,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "13649:3:114",
                          "memberName": "url",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37785,
                          "src": "13644:8:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          }
                        },
                        {
                          "id": 35645,
                          "name": "args",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35632,
                          "src": "13654:4:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                            "typeString": "string memory[] memory"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          },
                          {
                            "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                            "typeString": "string memory[] memory"
                          }
                        ],
                        "expression": {
                          "id": 35641,
                          "name": "WitnetBuffer",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 42631,
                          "src": "13623:12:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_WitnetBuffer_$42631_$",
                            "typeString": "type(library WitnetBuffer)"
                          }
                        },
                        "id": 35642,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "13636:7:114",
                        "memberName": "replace",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 42500,
                        "src": "13623:20:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$returns$_t_string_memory_ptr_$",
                          "typeString": "function (string memory,string memory[] memory) pure returns (string memory)"
                        }
                      },
                      "id": 35646,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "13623:36:114",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_memory_ptr",
                        "typeString": "string memory"
                      }
                    },
                    "src": "13612:47:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_memory_ptr",
                      "typeString": "string memory"
                    }
                  },
                  "id": 35648,
                  "nodeType": "ExpressionStatement",
                  "src": "13612:47:114"
                },
                {
                  "expression": {
                    "id": 35658,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "expression": {
                        "id": 35649,
                        "name": "self",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35629,
                        "src": "13670:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                          "typeString": "struct Witnet.RadonRetrieval memory"
                        }
                      },
                      "id": 35651,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberLocation": "13675:4:114",
                      "memberName": "body",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 37787,
                      "src": "13670:9:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_memory_ptr",
                        "typeString": "string memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "expression": {
                            "id": 35654,
                            "name": "self",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35629,
                            "src": "13703:4:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                              "typeString": "struct Witnet.RadonRetrieval memory"
                            }
                          },
                          "id": 35655,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "13708:4:114",
                          "memberName": "body",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37787,
                          "src": "13703:9:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          }
                        },
                        {
                          "id": 35656,
                          "name": "args",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35632,
                          "src": "13714:4:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                            "typeString": "string memory[] memory"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          },
                          {
                            "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                            "typeString": "string memory[] memory"
                          }
                        ],
                        "expression": {
                          "id": 35652,
                          "name": "WitnetBuffer",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 42631,
                          "src": "13682:12:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_WitnetBuffer_$42631_$",
                            "typeString": "type(library WitnetBuffer)"
                          }
                        },
                        "id": 35653,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "13695:7:114",
                        "memberName": "replace",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 42500,
                        "src": "13682:20:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$returns$_t_string_memory_ptr_$",
                          "typeString": "function (string memory,string memory[] memory) pure returns (string memory)"
                        }
                      },
                      "id": 35657,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "13682:37:114",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_memory_ptr",
                        "typeString": "string memory"
                      }
                    },
                    "src": "13670:49:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_memory_ptr",
                      "typeString": "string memory"
                    }
                  },
                  "id": 35659,
                  "nodeType": "ExpressionStatement",
                  "src": "13670:49:114"
                },
                {
                  "expression": {
                    "id": 35668,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "expression": {
                        "id": 35660,
                        "name": "self",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35629,
                        "src": "13730:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                          "typeString": "struct Witnet.RadonRetrieval memory"
                        }
                      },
                      "id": 35662,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberLocation": "13735:11:114",
                      "memberName": "radonScript",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 37794,
                      "src": "13730:16:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes memory"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "arguments": [
                        {
                          "expression": {
                            "id": 35664,
                            "name": "self",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35629,
                            "src": "13777:4:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                              "typeString": "struct Witnet.RadonRetrieval memory"
                            }
                          },
                          "id": 35665,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "13782:11:114",
                          "memberName": "radonScript",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37794,
                          "src": "13777:16:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        {
                          "id": 35666,
                          "name": "args",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35632,
                          "src": "13795:4:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                            "typeString": "string memory[] memory"
                          }
                        }
                      ],
                      "expression": {
                        "argumentTypes": [
                          {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          },
                          {
                            "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                            "typeString": "string memory[] memory"
                          }
                        ],
                        "id": 35663,
                        "name": "replaceCborStringsFromBytes",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [
                          35463,
                          35521
                        ],
                        "referencedDeclaration": 35521,
                        "src": "13749:27:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                          "typeString": "function (bytes memory,string memory[] memory) pure returns (bytes memory)"
                        }
                      },
                      "id": 35667,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "functionCall",
                      "lValueRequested": false,
                      "nameLocations": [],
                      "names": [],
                      "nodeType": "FunctionCall",
                      "src": "13749:51:114",
                      "tryCall": false,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes memory"
                      }
                    },
                    "src": "13730:70:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "id": 35669,
                  "nodeType": "ExpressionStatement",
                  "src": "13730:70:114"
                },
                {
                  "body": {
                    "id": 35720,
                    "nodeType": "Block",
                    "src": "13866:184:114",
                    "statements": [
                      {
                        "expression": {
                          "id": 35699,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "baseExpression": {
                              "baseExpression": {
                                "expression": {
                                  "id": 35682,
                                  "name": "self",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35629,
                                  "src": "13881:4:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                    "typeString": "struct Witnet.RadonRetrieval memory"
                                  }
                                },
                                "id": 35686,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "13886:7:114",
                                "memberName": "headers",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37792,
                                "src": "13881:12:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                  "typeString": "string memory[2] memory[] memory"
                                }
                              },
                              "id": 35687,
                              "indexExpression": {
                                "id": 35684,
                                "name": "_ix",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35671,
                                "src": "13894:3:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "13881:17:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_string_memory_ptr_$2_memory_ptr",
                                "typeString": "string memory[2] memory"
                              }
                            },
                            "id": 35688,
                            "indexExpression": {
                              "hexValue": "30",
                              "id": 35685,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "13899:1:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "13881:20:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "baseExpression": {
                                  "baseExpression": {
                                    "expression": {
                                      "id": 35691,
                                      "name": "self",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 35629,
                                      "src": "13925:4:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                        "typeString": "struct Witnet.RadonRetrieval memory"
                                      }
                                    },
                                    "id": 35692,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "13930:7:114",
                                    "memberName": "headers",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 37792,
                                    "src": "13925:12:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                      "typeString": "string memory[2] memory[] memory"
                                    }
                                  },
                                  "id": 35694,
                                  "indexExpression": {
                                    "id": 35693,
                                    "name": "_ix",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 35671,
                                    "src": "13938:3:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "13925:17:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_string_memory_ptr_$2_memory_ptr",
                                    "typeString": "string memory[2] memory"
                                  }
                                },
                                "id": 35696,
                                "indexExpression": {
                                  "hexValue": "30",
                                  "id": 35695,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "13943:1:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_0_by_1",
                                    "typeString": "int_const 0"
                                  },
                                  "value": "0"
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "13925:20:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                }
                              },
                              {
                                "id": 35697,
                                "name": "args",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35632,
                                "src": "13947:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                                  "typeString": "string memory[] memory"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                },
                                {
                                  "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                                  "typeString": "string memory[] memory"
                                }
                              ],
                              "expression": {
                                "id": 35689,
                                "name": "WitnetBuffer",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 42631,
                                "src": "13904:12:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_WitnetBuffer_$42631_$",
                                  "typeString": "type(library WitnetBuffer)"
                                }
                              },
                              "id": 35690,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "13917:7:114",
                              "memberName": "replace",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 42500,
                              "src": "13904:20:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$returns$_t_string_memory_ptr_$",
                                "typeString": "function (string memory,string memory[] memory) pure returns (string memory)"
                              }
                            },
                            "id": 35698,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "13904:48:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            }
                          },
                          "src": "13881:71:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          }
                        },
                        "id": 35700,
                        "nodeType": "ExpressionStatement",
                        "src": "13881:71:114"
                      },
                      {
                        "expression": {
                          "id": 35718,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "baseExpression": {
                              "baseExpression": {
                                "expression": {
                                  "id": 35701,
                                  "name": "self",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35629,
                                  "src": "13967:4:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                    "typeString": "struct Witnet.RadonRetrieval memory"
                                  }
                                },
                                "id": 35705,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "13972:7:114",
                                "memberName": "headers",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37792,
                                "src": "13967:12:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                  "typeString": "string memory[2] memory[] memory"
                                }
                              },
                              "id": 35706,
                              "indexExpression": {
                                "id": 35703,
                                "name": "_ix",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35671,
                                "src": "13980:3:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "13967:17:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_string_memory_ptr_$2_memory_ptr",
                                "typeString": "string memory[2] memory"
                              }
                            },
                            "id": 35707,
                            "indexExpression": {
                              "hexValue": "31",
                              "id": 35704,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "13985:1:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_1_by_1",
                                "typeString": "int_const 1"
                              },
                              "value": "1"
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "13967:20:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "arguments": [
                              {
                                "baseExpression": {
                                  "baseExpression": {
                                    "expression": {
                                      "id": 35710,
                                      "name": "self",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 35629,
                                      "src": "14011:4:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                                        "typeString": "struct Witnet.RadonRetrieval memory"
                                      }
                                    },
                                    "id": 35711,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "14016:7:114",
                                    "memberName": "headers",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 37792,
                                    "src": "14011:12:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                      "typeString": "string memory[2] memory[] memory"
                                    }
                                  },
                                  "id": 35713,
                                  "indexExpression": {
                                    "id": 35712,
                                    "name": "_ix",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 35671,
                                    "src": "14024:3:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "14011:17:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_array$_t_string_memory_ptr_$2_memory_ptr",
                                    "typeString": "string memory[2] memory"
                                  }
                                },
                                "id": 35715,
                                "indexExpression": {
                                  "hexValue": "31",
                                  "id": 35714,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "14029:1:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_1_by_1",
                                    "typeString": "int_const 1"
                                  },
                                  "value": "1"
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "14011:20:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                }
                              },
                              {
                                "id": 35716,
                                "name": "args",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35632,
                                "src": "14033:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                                  "typeString": "string memory[] memory"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                },
                                {
                                  "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                                  "typeString": "string memory[] memory"
                                }
                              ],
                              "expression": {
                                "id": 35708,
                                "name": "WitnetBuffer",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 42631,
                                "src": "13990:12:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_WitnetBuffer_$42631_$",
                                  "typeString": "type(library WitnetBuffer)"
                                }
                              },
                              "id": 35709,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "14003:7:114",
                              "memberName": "replace",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 42500,
                              "src": "13990:20:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$returns$_t_string_memory_ptr_$",
                                "typeString": "function (string memory,string memory[] memory) pure returns (string memory)"
                              }
                            },
                            "id": 35717,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "13990:48:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            }
                          },
                          "src": "13967:71:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_string_memory_ptr",
                            "typeString": "string memory"
                          }
                        },
                        "id": 35719,
                        "nodeType": "ExpressionStatement",
                        "src": "13967:71:114"
                      }
                    ]
                  },
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 35678,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "id": 35674,
                      "name": "_ix",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 35671,
                      "src": "13831:3:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "<",
                    "rightExpression": {
                      "expression": {
                        "expression": {
                          "id": 35675,
                          "name": "self",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35629,
                          "src": "13837:4:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                            "typeString": "struct Witnet.RadonRetrieval memory"
                          }
                        },
                        "id": 35676,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "13842:7:114",
                        "memberName": "headers",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37792,
                        "src": "13837:12:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                          "typeString": "string memory[2] memory[] memory"
                        }
                      },
                      "id": 35677,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "13850:6:114",
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "src": "13837:19:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "13831:25:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 35721,
                  "initializationExpression": {
                    "assignments": [
                      35671
                    ],
                    "declarations": [
                      {
                        "constant": false,
                        "id": 35671,
                        "mutability": "mutable",
                        "name": "_ix",
                        "nameLocation": "13821:3:114",
                        "nodeType": "VariableDeclaration",
                        "scope": 35721,
                        "src": "13816:8:114",
                        "stateVariable": false,
                        "storageLocation": "default",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "typeName": {
                          "id": 35670,
                          "name": "uint",
                          "nodeType": "ElementaryTypeName",
                          "src": "13816:4:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "visibility": "internal"
                      }
                    ],
                    "id": 35673,
                    "initialValue": {
                      "hexValue": "30",
                      "id": 35672,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "13827:1:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "nodeType": "VariableDeclarationStatement",
                    "src": "13816:12:114"
                  },
                  "isSimpleCounterLoop": true,
                  "loopExpression": {
                    "expression": {
                      "id": 35680,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "UnaryOperation",
                      "operator": "++",
                      "prefix": false,
                      "src": "13858:6:114",
                      "subExpression": {
                        "id": 35679,
                        "name": "_ix",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35671,
                        "src": "13858:3:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 35681,
                    "nodeType": "ExpressionStatement",
                    "src": "13858:6:114"
                  },
                  "nodeType": "ForStatement",
                  "src": "13811:239:114"
                },
                {
                  "expression": {
                    "id": 35722,
                    "name": "self",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 35629,
                    "src": "14067:4:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                      "typeString": "struct Witnet.RadonRetrieval memory"
                    }
                  },
                  "functionReturnParameters": 35637,
                  "id": 35723,
                  "nodeType": "Return",
                  "src": "14060:11:114"
                }
              ]
            },
            "functionSelector": "3b1e539b",
            "id": 35725,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "replaceWildcards",
            "nameLocation": "13453:16:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 35633,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35629,
                  "mutability": "mutable",
                  "name": "self",
                  "nameLocation": "13499:4:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35725,
                  "src": "13470:33:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                    "typeString": "struct Witnet.RadonRetrieval"
                  },
                  "typeName": {
                    "id": 35628,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 35627,
                      "name": "Witnet.RadonRetrieval",
                      "nameLocations": [
                        "13470:6:114",
                        "13477:14:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37795,
                      "src": "13470:21:114"
                    },
                    "referencedDeclaration": 37795,
                    "src": "13470:21:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage_ptr",
                      "typeString": "struct Witnet.RadonRetrieval"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35632,
                  "mutability": "mutable",
                  "name": "args",
                  "nameLocation": "13521:4:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35725,
                  "src": "13505:20:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                    "typeString": "string[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 35630,
                      "name": "string",
                      "nodeType": "ElementaryTypeName",
                      "src": "13505:6:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_storage_ptr",
                        "typeString": "string"
                      }
                    },
                    "id": 35631,
                    "nodeType": "ArrayTypeName",
                    "src": "13505:8:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                      "typeString": "string[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "13469:57:114"
            },
            "returnParameters": {
              "id": 35637,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35636,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 35725,
                  "src": "13566:28:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonRetrieval_$37795_memory_ptr",
                    "typeString": "struct Witnet.RadonRetrieval"
                  },
                  "typeName": {
                    "id": 35635,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 35634,
                      "name": "Witnet.RadonRetrieval",
                      "nameLocations": [
                        "13566:6:114",
                        "13573:14:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37795,
                      "src": "13566:21:114"
                    },
                    "referencedDeclaration": 37795,
                    "src": "13566:21:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonRetrieval_$37795_storage_ptr",
                      "typeString": "struct Witnet.RadonRetrieval"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "13565:30:114"
            },
            "scope": 36466,
            "src": "13444:635:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 35837,
              "nodeType": "Block",
              "src": "14359:779:114",
              "statements": [
                {
                  "condition": {
                    "id": 35813,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "UnaryOperation",
                    "operator": "!",
                    "prefix": true,
                    "src": "14374:500:114",
                    "subExpression": {
                      "components": [
                        {
                          "commonType": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          },
                          "id": 35811,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "commonType": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            },
                            "id": 35778,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "commonType": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              "id": 35763,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "commonType": {
                                  "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                  "typeString": "enum Witnet.RadonRetrievalMethods"
                                },
                                "id": 35748,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "id": 35744,
                                  "name": "method",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35728,
                                  "src": "14390:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                    "typeString": "enum Witnet.RadonRetrievalMethods"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": "==",
                                "rightExpression": {
                                  "expression": {
                                    "expression": {
                                      "id": 35745,
                                      "name": "Witnet",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 40741,
                                      "src": "14400:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                        "typeString": "type(library Witnet)"
                                      }
                                    },
                                    "id": 35746,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "14407:21:114",
                                    "memberName": "RadonRetrievalMethods",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 37802,
                                    "src": "14400:28:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_type$_t_enum$_RadonRetrievalMethods_$37802_$",
                                      "typeString": "type(enum Witnet.RadonRetrievalMethods)"
                                    }
                                  },
                                  "id": 35747,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "memberLocation": "14429:8:114",
                                  "memberName": "HttpPost",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 37800,
                                  "src": "14400:37:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                    "typeString": "enum Witnet.RadonRetrievalMethods"
                                  }
                                },
                                "src": "14390:47:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "||",
                              "rightExpression": {
                                "components": [
                                  {
                                    "commonType": {
                                      "typeIdentifier": "t_bool",
                                      "typeString": "bool"
                                    },
                                    "id": 35761,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "leftExpression": {
                                      "commonType": {
                                        "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                        "typeString": "enum Witnet.RadonRetrievalMethods"
                                      },
                                      "id": 35753,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "id": 35749,
                                        "name": "method",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 35728,
                                        "src": "14455:6:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                          "typeString": "enum Witnet.RadonRetrievalMethods"
                                        }
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": "==",
                                      "rightExpression": {
                                        "expression": {
                                          "expression": {
                                            "id": 35750,
                                            "name": "Witnet",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 40741,
                                            "src": "14465:6:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                              "typeString": "type(library Witnet)"
                                            }
                                          },
                                          "id": 35751,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberLocation": "14472:21:114",
                                          "memberName": "RadonRetrievalMethods",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 37802,
                                          "src": "14465:28:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_type$_t_enum$_RadonRetrievalMethods_$37802_$",
                                            "typeString": "type(enum Witnet.RadonRetrievalMethods)"
                                          }
                                        },
                                        "id": 35752,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "lValueRequested": false,
                                        "memberLocation": "14494:7:114",
                                        "memberName": "HttpGet",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 37798,
                                        "src": "14465:36:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                          "typeString": "enum Witnet.RadonRetrievalMethods"
                                        }
                                      },
                                      "src": "14455:46:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    },
                                    "nodeType": "BinaryOperation",
                                    "operator": "&&",
                                    "rightExpression": {
                                      "commonType": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      },
                                      "id": 35760,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "expression": {
                                          "arguments": [
                                            {
                                              "id": 35756,
                                              "name": "body",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 35732,
                                              "src": "14511:4:114",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_string_memory_ptr",
                                                "typeString": "string memory"
                                              }
                                            }
                                          ],
                                          "expression": {
                                            "argumentTypes": [
                                              {
                                                "typeIdentifier": "t_string_memory_ptr",
                                                "typeString": "string memory"
                                              }
                                            ],
                                            "id": 35755,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "lValueRequested": false,
                                            "nodeType": "ElementaryTypeNameExpression",
                                            "src": "14505:5:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                                              "typeString": "type(bytes storage pointer)"
                                            },
                                            "typeName": {
                                              "id": 35754,
                                              "name": "bytes",
                                              "nodeType": "ElementaryTypeName",
                                              "src": "14505:5:114",
                                              "typeDescriptions": {}
                                            }
                                          },
                                          "id": 35757,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "kind": "typeConversion",
                                          "lValueRequested": false,
                                          "nameLocations": [],
                                          "names": [],
                                          "nodeType": "FunctionCall",
                                          "src": "14505:11:114",
                                          "tryCall": false,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_bytes_memory_ptr",
                                            "typeString": "bytes memory"
                                          }
                                        },
                                        "id": 35758,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberLocation": "14517:6:114",
                                        "memberName": "length",
                                        "nodeType": "MemberAccess",
                                        "src": "14505:18:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": "==",
                                      "rightExpression": {
                                        "hexValue": "30",
                                        "id": 35759,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "14527:1:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_0_by_1",
                                          "typeString": "int_const 0"
                                        },
                                        "value": "0"
                                      },
                                      "src": "14505:23:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    },
                                    "src": "14455:73:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bool",
                                      "typeString": "bool"
                                    }
                                  }
                                ],
                                "id": 35762,
                                "isConstant": false,
                                "isInlineArray": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "TupleExpression",
                                "src": "14454:75:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "src": "14390:139:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "||",
                            "rightExpression": {
                              "components": [
                                {
                                  "commonType": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  },
                                  "id": 35776,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "commonType": {
                                      "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                      "typeString": "enum Witnet.RadonRetrievalMethods"
                                    },
                                    "id": 35768,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "leftExpression": {
                                      "id": 35764,
                                      "name": "method",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 35728,
                                      "src": "14547:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                        "typeString": "enum Witnet.RadonRetrievalMethods"
                                      }
                                    },
                                    "nodeType": "BinaryOperation",
                                    "operator": "==",
                                    "rightExpression": {
                                      "expression": {
                                        "expression": {
                                          "id": 35765,
                                          "name": "Witnet",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 40741,
                                          "src": "14557:6:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                            "typeString": "type(library Witnet)"
                                          }
                                        },
                                        "id": 35766,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberLocation": "14564:21:114",
                                        "memberName": "RadonRetrievalMethods",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 37802,
                                        "src": "14557:28:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_type$_t_enum$_RadonRetrievalMethods_$37802_$",
                                          "typeString": "type(enum Witnet.RadonRetrievalMethods)"
                                        }
                                      },
                                      "id": 35767,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "memberLocation": "14586:8:114",
                                      "memberName": "HttpHead",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": 37801,
                                      "src": "14557:37:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                        "typeString": "enum Witnet.RadonRetrievalMethods"
                                      }
                                    },
                                    "src": "14547:47:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bool",
                                      "typeString": "bool"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": "&&",
                                  "rightExpression": {
                                    "commonType": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    },
                                    "id": 35775,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "leftExpression": {
                                      "expression": {
                                        "arguments": [
                                          {
                                            "id": 35771,
                                            "name": "body",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 35732,
                                            "src": "14604:4:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_string_memory_ptr",
                                              "typeString": "string memory"
                                            }
                                          }
                                        ],
                                        "expression": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_string_memory_ptr",
                                              "typeString": "string memory"
                                            }
                                          ],
                                          "id": 35770,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "lValueRequested": false,
                                          "nodeType": "ElementaryTypeNameExpression",
                                          "src": "14598:5:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                                            "typeString": "type(bytes storage pointer)"
                                          },
                                          "typeName": {
                                            "id": 35769,
                                            "name": "bytes",
                                            "nodeType": "ElementaryTypeName",
                                            "src": "14598:5:114",
                                            "typeDescriptions": {}
                                          }
                                        },
                                        "id": 35772,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "kind": "typeConversion",
                                        "lValueRequested": false,
                                        "nameLocations": [],
                                        "names": [],
                                        "nodeType": "FunctionCall",
                                        "src": "14598:11:114",
                                        "tryCall": false,
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bytes_memory_ptr",
                                          "typeString": "bytes memory"
                                        }
                                      },
                                      "id": 35773,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberLocation": "14610:6:114",
                                      "memberName": "length",
                                      "nodeType": "MemberAccess",
                                      "src": "14598:18:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "nodeType": "BinaryOperation",
                                    "operator": "==",
                                    "rightExpression": {
                                      "hexValue": "30",
                                      "id": 35774,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "number",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "14620:1:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_rational_0_by_1",
                                        "typeString": "int_const 0"
                                      },
                                      "value": "0"
                                    },
                                    "src": "14598:23:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bool",
                                      "typeString": "bool"
                                    }
                                  },
                                  "src": "14547:74:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                }
                              ],
                              "id": 35777,
                              "isConstant": false,
                              "isInlineArray": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "TupleExpression",
                              "src": "14546:76:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            "src": "14390:232:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "||",
                          "rightExpression": {
                            "components": [
                              {
                                "commonType": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                },
                                "id": 35809,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "commonType": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  },
                                  "id": 35804,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "commonType": {
                                      "typeIdentifier": "t_bool",
                                      "typeString": "bool"
                                    },
                                    "id": 35799,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "leftExpression": {
                                      "commonType": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      },
                                      "id": 35791,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "commonType": {
                                          "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                          "typeString": "enum Witnet.RadonRetrievalMethods"
                                        },
                                        "id": 35783,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftExpression": {
                                          "id": 35779,
                                          "name": "method",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 35728,
                                          "src": "14640:6:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                            "typeString": "enum Witnet.RadonRetrievalMethods"
                                          }
                                        },
                                        "nodeType": "BinaryOperation",
                                        "operator": "==",
                                        "rightExpression": {
                                          "expression": {
                                            "expression": {
                                              "id": 35780,
                                              "name": "Witnet",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 40741,
                                              "src": "14650:6:114",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                                "typeString": "type(library Witnet)"
                                              }
                                            },
                                            "id": 35781,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": false,
                                            "lValueRequested": false,
                                            "memberLocation": "14657:21:114",
                                            "memberName": "RadonRetrievalMethods",
                                            "nodeType": "MemberAccess",
                                            "referencedDeclaration": 37802,
                                            "src": "14650:28:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_type$_t_enum$_RadonRetrievalMethods_$37802_$",
                                              "typeString": "type(enum Witnet.RadonRetrievalMethods)"
                                            }
                                          },
                                          "id": 35782,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "lValueRequested": false,
                                          "memberLocation": "14679:3:114",
                                          "memberName": "RNG",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 37799,
                                          "src": "14650:32:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                            "typeString": "enum Witnet.RadonRetrievalMethods"
                                          }
                                        },
                                        "src": "14640:42:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bool",
                                          "typeString": "bool"
                                        }
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": "&&",
                                      "rightExpression": {
                                        "commonType": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        },
                                        "id": 35790,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftExpression": {
                                          "expression": {
                                            "arguments": [
                                              {
                                                "id": 35786,
                                                "name": "url",
                                                "nodeType": "Identifier",
                                                "overloadedDeclarations": [],
                                                "referencedDeclaration": 35730,
                                                "src": "14709:3:114",
                                                "typeDescriptions": {
                                                  "typeIdentifier": "t_string_memory_ptr",
                                                  "typeString": "string memory"
                                                }
                                              }
                                            ],
                                            "expression": {
                                              "argumentTypes": [
                                                {
                                                  "typeIdentifier": "t_string_memory_ptr",
                                                  "typeString": "string memory"
                                                }
                                              ],
                                              "id": 35785,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": true,
                                              "lValueRequested": false,
                                              "nodeType": "ElementaryTypeNameExpression",
                                              "src": "14703:5:114",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                                                "typeString": "type(bytes storage pointer)"
                                              },
                                              "typeName": {
                                                "id": 35784,
                                                "name": "bytes",
                                                "nodeType": "ElementaryTypeName",
                                                "src": "14703:5:114",
                                                "typeDescriptions": {}
                                              }
                                            },
                                            "id": 35787,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": false,
                                            "kind": "typeConversion",
                                            "lValueRequested": false,
                                            "nameLocations": [],
                                            "names": [],
                                            "nodeType": "FunctionCall",
                                            "src": "14703:10:114",
                                            "tryCall": false,
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_bytes_memory_ptr",
                                              "typeString": "bytes memory"
                                            }
                                          },
                                          "id": 35788,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberLocation": "14714:6:114",
                                          "memberName": "length",
                                          "nodeType": "MemberAccess",
                                          "src": "14703:17:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "nodeType": "BinaryOperation",
                                        "operator": "==",
                                        "rightExpression": {
                                          "hexValue": "30",
                                          "id": 35789,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "number",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "14724:1:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_rational_0_by_1",
                                            "typeString": "int_const 0"
                                          },
                                          "value": "0"
                                        },
                                        "src": "14703:22:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bool",
                                          "typeString": "bool"
                                        }
                                      },
                                      "src": "14640:85:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    },
                                    "nodeType": "BinaryOperation",
                                    "operator": "&&",
                                    "rightExpression": {
                                      "commonType": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      },
                                      "id": 35798,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "leftExpression": {
                                        "expression": {
                                          "arguments": [
                                            {
                                              "id": 35794,
                                              "name": "body",
                                              "nodeType": "Identifier",
                                              "overloadedDeclarations": [],
                                              "referencedDeclaration": 35732,
                                              "src": "14752:4:114",
                                              "typeDescriptions": {
                                                "typeIdentifier": "t_string_memory_ptr",
                                                "typeString": "string memory"
                                              }
                                            }
                                          ],
                                          "expression": {
                                            "argumentTypes": [
                                              {
                                                "typeIdentifier": "t_string_memory_ptr",
                                                "typeString": "string memory"
                                              }
                                            ],
                                            "id": 35793,
                                            "isConstant": false,
                                            "isLValue": false,
                                            "isPure": true,
                                            "lValueRequested": false,
                                            "nodeType": "ElementaryTypeNameExpression",
                                            "src": "14746:5:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                                              "typeString": "type(bytes storage pointer)"
                                            },
                                            "typeName": {
                                              "id": 35792,
                                              "name": "bytes",
                                              "nodeType": "ElementaryTypeName",
                                              "src": "14746:5:114",
                                              "typeDescriptions": {}
                                            }
                                          },
                                          "id": 35795,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "kind": "typeConversion",
                                          "lValueRequested": false,
                                          "nameLocations": [],
                                          "names": [],
                                          "nodeType": "FunctionCall",
                                          "src": "14746:11:114",
                                          "tryCall": false,
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_bytes_memory_ptr",
                                            "typeString": "bytes memory"
                                          }
                                        },
                                        "id": 35796,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberLocation": "14758:6:114",
                                        "memberName": "length",
                                        "nodeType": "MemberAccess",
                                        "src": "14746:18:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "nodeType": "BinaryOperation",
                                      "operator": "==",
                                      "rightExpression": {
                                        "hexValue": "30",
                                        "id": 35797,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "14768:1:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_0_by_1",
                                          "typeString": "int_const 0"
                                        },
                                        "value": "0"
                                      },
                                      "src": "14746:23:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    },
                                    "src": "14640:129:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bool",
                                      "typeString": "bool"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": "&&",
                                  "rightExpression": {
                                    "commonType": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    },
                                    "id": 35803,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "leftExpression": {
                                      "expression": {
                                        "id": 35800,
                                        "name": "headers",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 35737,
                                        "src": "14790:7:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                          "typeString": "string memory[2] memory[] memory"
                                        }
                                      },
                                      "id": 35801,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberLocation": "14798:6:114",
                                      "memberName": "length",
                                      "nodeType": "MemberAccess",
                                      "src": "14790:14:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "nodeType": "BinaryOperation",
                                    "operator": "==",
                                    "rightExpression": {
                                      "hexValue": "30",
                                      "id": 35802,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "number",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "14808:1:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_rational_0_by_1",
                                        "typeString": "int_const 0"
                                      },
                                      "value": "0"
                                    },
                                    "src": "14790:19:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bool",
                                      "typeString": "bool"
                                    }
                                  },
                                  "src": "14640:169:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": "&&",
                                "rightExpression": {
                                  "commonType": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  },
                                  "id": 35808,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "expression": {
                                      "id": 35805,
                                      "name": "script",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 35739,
                                      "src": "14830:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes_memory_ptr",
                                        "typeString": "bytes memory"
                                      }
                                    },
                                    "id": 35806,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "14837:6:114",
                                    "memberName": "length",
                                    "nodeType": "MemberAccess",
                                    "src": "14830:13:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": ">=",
                                  "rightExpression": {
                                    "hexValue": "31",
                                    "id": 35807,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "kind": "number",
                                    "lValueRequested": false,
                                    "nodeType": "Literal",
                                    "src": "14847:1:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_rational_1_by_1",
                                      "typeString": "int_const 1"
                                    },
                                    "value": "1"
                                  },
                                  "src": "14830:18:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "src": "14640:208:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              }
                            ],
                            "id": 35810,
                            "isConstant": false,
                            "isInlineArray": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "TupleExpression",
                            "src": "14639:224:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "src": "14390:473:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        }
                      ],
                      "id": 35812,
                      "isConstant": false,
                      "isInlineArray": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "TupleExpression",
                      "src": "14375:499:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 35825,
                  "nodeType": "IfStatement",
                  "src": "14370:686:114",
                  "trueBody": {
                    "id": 35824,
                    "nodeType": "Block",
                    "src": "14876:180:114",
                    "statements": [
                      {
                        "errorCall": {
                          "arguments": [
                            {
                              "arguments": [
                                {
                                  "id": 35817,
                                  "name": "method",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35728,
                                  "src": "14951:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                    "typeString": "enum Witnet.RadonRetrievalMethods"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                                    "typeString": "enum Witnet.RadonRetrievalMethods"
                                  }
                                ],
                                "id": 35816,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "14945:5:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_uint8_$",
                                  "typeString": "type(uint8)"
                                },
                                "typeName": {
                                  "id": 35815,
                                  "name": "uint8",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "14945:5:114",
                                  "typeDescriptions": {}
                                }
                              },
                              "id": 35818,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "14945:13:114",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint8",
                                "typeString": "uint8"
                              }
                            },
                            {
                              "id": 35819,
                              "name": "url",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 35730,
                              "src": "14977:3:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_string_memory_ptr",
                                "typeString": "string memory"
                              }
                            },
                            {
                              "id": 35820,
                              "name": "body",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 35732,
                              "src": "14999:4:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_string_memory_ptr",
                                "typeString": "string memory"
                              }
                            },
                            {
                              "id": 35821,
                              "name": "headers",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 35737,
                              "src": "15022:7:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                "typeString": "string memory[2] memory[] memory"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint8",
                                "typeString": "uint8"
                              },
                              {
                                "typeIdentifier": "t_string_memory_ptr",
                                "typeString": "string memory"
                              },
                              {
                                "typeIdentifier": "t_string_memory_ptr",
                                "typeString": "string memory"
                              },
                              {
                                "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                                "typeString": "string memory[2] memory[] memory"
                              }
                            ],
                            "id": 35814,
                            "name": "UnsupportedDataRequestMethod",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 34399,
                            "src": "14898:28:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_error_pure$_t_uint8_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr_$returns$_t_error_$",
                              "typeString": "function (uint8,string memory,string memory,string memory[2] memory[] memory) pure returns (error)"
                            }
                          },
                          "id": 35822,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "14898:146:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_error",
                            "typeString": "error"
                          }
                        },
                        "id": 35823,
                        "nodeType": "RevertStatement",
                        "src": "14891:153:114"
                      }
                    ]
                  }
                },
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "id": 35829,
                            "name": "method",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35728,
                            "src": "15094:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                              "typeString": "enum Witnet.RadonRetrievalMethods"
                            }
                          },
                          {
                            "id": 35830,
                            "name": "url",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35730,
                            "src": "15102:3:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            }
                          },
                          {
                            "id": 35831,
                            "name": "body",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35732,
                            "src": "15107:4:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            }
                          },
                          {
                            "id": 35832,
                            "name": "headers",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35737,
                            "src": "15113:7:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                              "typeString": "string memory[2] memory[] memory"
                            }
                          },
                          {
                            "id": 35833,
                            "name": "script",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35739,
                            "src": "15122:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                              "typeString": "enum Witnet.RadonRetrievalMethods"
                            },
                            {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            },
                            {
                              "typeIdentifier": "t_string_memory_ptr",
                              "typeString": "string memory"
                            },
                            {
                              "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                              "typeString": "string memory[2] memory[] memory"
                            },
                            {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          ],
                          "expression": {
                            "id": 35827,
                            "name": "abi",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 4294967295,
                            "src": "15083:3:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_magic_abi",
                              "typeString": "abi"
                            }
                          },
                          "id": 35828,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "memberLocation": "15087:6:114",
                          "memberName": "encode",
                          "nodeType": "MemberAccess",
                          "src": "15083:10:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$",
                            "typeString": "function () pure returns (bytes memory)"
                          }
                        },
                        "id": 35834,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "15083:46:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      ],
                      "id": 35826,
                      "name": "keccak256",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 4294967288,
                      "src": "15073:9:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
                        "typeString": "function (bytes memory) pure returns (bytes32)"
                      }
                    },
                    "id": 35835,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "15073:57:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "functionReturnParameters": 35743,
                  "id": 35836,
                  "nodeType": "Return",
                  "src": "15066:64:114"
                }
              ]
            },
            "functionSelector": "36c6c9a4",
            "id": 35838,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "validate",
            "nameLocation": "14096:8:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 35740,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35728,
                  "mutability": "mutable",
                  "name": "method",
                  "nameLocation": "14148:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35838,
                  "src": "14119:35:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                    "typeString": "enum Witnet.RadonRetrievalMethods"
                  },
                  "typeName": {
                    "id": 35727,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 35726,
                      "name": "Witnet.RadonRetrievalMethods",
                      "nameLocations": [
                        "14119:6:114",
                        "14126:21:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37802,
                      "src": "14119:28:114"
                    },
                    "referencedDeclaration": 37802,
                    "src": "14119:28:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_RadonRetrievalMethods_$37802",
                      "typeString": "enum Witnet.RadonRetrievalMethods"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35730,
                  "mutability": "mutable",
                  "name": "url",
                  "nameLocation": "14183:3:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35838,
                  "src": "14169:17:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 35729,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "14169:6:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35732,
                  "mutability": "mutable",
                  "name": "body",
                  "nameLocation": "14215:4:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35838,
                  "src": "14201:18:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 35731,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "14201:6:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35737,
                  "mutability": "mutable",
                  "name": "headers",
                  "nameLocation": "14253:7:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35838,
                  "src": "14234:26:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_array$_t_string_memory_ptr_$2_memory_ptr_$dyn_memory_ptr",
                    "typeString": "string[2][]"
                  },
                  "typeName": {
                    "baseType": {
                      "baseType": {
                        "id": 35733,
                        "name": "string",
                        "nodeType": "ElementaryTypeName",
                        "src": "14234:6:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_string_storage_ptr",
                          "typeString": "string"
                        }
                      },
                      "id": 35735,
                      "length": {
                        "hexValue": "32",
                        "id": 35734,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "14241:1:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_2_by_1",
                          "typeString": "int_const 2"
                        },
                        "value": "2"
                      },
                      "nodeType": "ArrayTypeName",
                      "src": "14234:9:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_string_storage_$2_storage_ptr",
                        "typeString": "string[2]"
                      }
                    },
                    "id": 35736,
                    "nodeType": "ArrayTypeName",
                    "src": "14234:11:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_array$_t_string_storage_$2_storage_$dyn_storage_ptr",
                      "typeString": "string[2][]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35739,
                  "mutability": "mutable",
                  "name": "script",
                  "nameLocation": "14288:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35838,
                  "src": "14275:19:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 35738,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "14275:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "14104:201:114"
            },
            "returnParameters": {
              "id": 35743,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35742,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 35838,
                  "src": "14345:7:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 35741,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "14345:7:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "14344:9:114"
            },
            "scope": 36466,
            "src": "14087:1051:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 35928,
              "nodeType": "Block",
              "src": "15309:1016:114",
              "statements": [
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    },
                    "id": 35876,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "commonType": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      },
                      "id": 35870,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "commonType": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        "id": 35864,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "commonType": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          },
                          "id": 35858,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "commonType": {
                              "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                              "typeString": "enum Witnet.RadonDataTypes"
                            },
                            "id": 35852,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "id": 35848,
                              "name": "dataType",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 35841,
                              "src": "15338:8:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                "typeString": "enum Witnet.RadonDataTypes"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "==",
                            "rightExpression": {
                              "expression": {
                                "expression": {
                                  "id": 35849,
                                  "name": "Witnet",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 40741,
                                  "src": "15350:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                    "typeString": "type(library Witnet)"
                                  }
                                },
                                "id": 35850,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "15357:14:114",
                                "memberName": "RadonDataTypes",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37720,
                                "src": "15350:21:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_enum$_RadonDataTypes_$37720_$",
                                  "typeString": "type(enum Witnet.RadonDataTypes)"
                                }
                              },
                              "id": 35851,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "memberLocation": "15372:3:114",
                              "memberName": "Any",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 37700,
                              "src": "15350:25:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                "typeString": "enum Witnet.RadonDataTypes"
                              }
                            },
                            "src": "15338:37:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "||",
                          "rightExpression": {
                            "commonType": {
                              "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                              "typeString": "enum Witnet.RadonDataTypes"
                            },
                            "id": 35857,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "id": 35853,
                              "name": "dataType",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 35841,
                              "src": "15396:8:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                "typeString": "enum Witnet.RadonDataTypes"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "==",
                            "rightExpression": {
                              "expression": {
                                "expression": {
                                  "id": 35854,
                                  "name": "Witnet",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 40741,
                                  "src": "15408:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                    "typeString": "type(library Witnet)"
                                  }
                                },
                                "id": 35855,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "15415:14:114",
                                "memberName": "RadonDataTypes",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37720,
                                "src": "15408:21:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_enum$_RadonDataTypes_$37720_$",
                                  "typeString": "type(enum Witnet.RadonDataTypes)"
                                }
                              },
                              "id": 35856,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "memberLocation": "15430:6:114",
                              "memberName": "String",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 37707,
                              "src": "15408:28:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                "typeString": "enum Witnet.RadonDataTypes"
                              }
                            },
                            "src": "15396:40:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "src": "15338:98:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "||",
                        "rightExpression": {
                          "commonType": {
                            "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                            "typeString": "enum Witnet.RadonDataTypes"
                          },
                          "id": 35863,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "id": 35859,
                            "name": "dataType",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35841,
                            "src": "15457:8:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                              "typeString": "enum Witnet.RadonDataTypes"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "==",
                          "rightExpression": {
                            "expression": {
                              "expression": {
                                "id": 35860,
                                "name": "Witnet",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 40741,
                                "src": "15469:6:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                  "typeString": "type(library Witnet)"
                                }
                              },
                              "id": 35861,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "15476:14:114",
                              "memberName": "RadonDataTypes",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 37720,
                              "src": "15469:21:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_enum$_RadonDataTypes_$37720_$",
                                "typeString": "type(enum Witnet.RadonDataTypes)"
                              }
                            },
                            "id": 35862,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "memberLocation": "15491:5:114",
                            "memberName": "Bytes",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 37703,
                            "src": "15469:27:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                              "typeString": "enum Witnet.RadonDataTypes"
                            }
                          },
                          "src": "15457:39:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "src": "15338:158:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "||",
                      "rightExpression": {
                        "commonType": {
                          "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                          "typeString": "enum Witnet.RadonDataTypes"
                        },
                        "id": 35869,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "id": 35865,
                          "name": "dataType",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35841,
                          "src": "15517:8:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                            "typeString": "enum Witnet.RadonDataTypes"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "==",
                        "rightExpression": {
                          "expression": {
                            "expression": {
                              "id": 35866,
                              "name": "Witnet",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 40741,
                              "src": "15529:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                "typeString": "type(library Witnet)"
                              }
                            },
                            "id": 35867,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "15536:14:114",
                            "memberName": "RadonDataTypes",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 37720,
                            "src": "15529:21:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_enum$_RadonDataTypes_$37720_$",
                              "typeString": "type(enum Witnet.RadonDataTypes)"
                            }
                          },
                          "id": 35868,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "memberLocation": "15551:5:114",
                          "memberName": "Array",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37701,
                          "src": "15529:27:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                            "typeString": "enum Witnet.RadonDataTypes"
                          }
                        },
                        "src": "15517:39:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      "src": "15338:218:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "||",
                    "rightExpression": {
                      "commonType": {
                        "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                        "typeString": "enum Witnet.RadonDataTypes"
                      },
                      "id": 35875,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "id": 35871,
                        "name": "dataType",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35841,
                        "src": "15577:8:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                          "typeString": "enum Witnet.RadonDataTypes"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "==",
                      "rightExpression": {
                        "expression": {
                          "expression": {
                            "id": 35872,
                            "name": "Witnet",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 40741,
                            "src": "15589:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                              "typeString": "type(library Witnet)"
                            }
                          },
                          "id": 35873,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "15596:14:114",
                          "memberName": "RadonDataTypes",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37720,
                          "src": "15589:21:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_enum$_RadonDataTypes_$37720_$",
                            "typeString": "type(enum Witnet.RadonDataTypes)"
                          }
                        },
                        "id": 35874,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "memberLocation": "15611:3:114",
                        "memberName": "Map",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37706,
                        "src": "15589:25:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                          "typeString": "enum Witnet.RadonDataTypes"
                        }
                      },
                      "src": "15577:37:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "src": "15338:276:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "condition": {
                      "commonType": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      },
                      "id": 35911,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "commonType": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        "id": 35905,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "commonType": {
                            "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                            "typeString": "enum Witnet.RadonDataTypes"
                          },
                          "id": 35899,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "id": 35895,
                            "name": "dataType",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35841,
                            "src": "15954:8:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                              "typeString": "enum Witnet.RadonDataTypes"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "==",
                          "rightExpression": {
                            "expression": {
                              "expression": {
                                "id": 35896,
                                "name": "Witnet",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 40741,
                                "src": "15966:6:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                  "typeString": "type(library Witnet)"
                                }
                              },
                              "id": 35897,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "15973:14:114",
                              "memberName": "RadonDataTypes",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 37720,
                              "src": "15966:21:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_enum$_RadonDataTypes_$37720_$",
                                "typeString": "type(enum Witnet.RadonDataTypes)"
                              }
                            },
                            "id": 35898,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "memberLocation": "15988:7:114",
                            "memberName": "Integer",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 37704,
                            "src": "15966:29:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                              "typeString": "enum Witnet.RadonDataTypes"
                            }
                          },
                          "src": "15954:41:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "||",
                        "rightExpression": {
                          "commonType": {
                            "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                            "typeString": "enum Witnet.RadonDataTypes"
                          },
                          "id": 35904,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "id": 35900,
                            "name": "dataType",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35841,
                            "src": "16016:8:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                              "typeString": "enum Witnet.RadonDataTypes"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "==",
                          "rightExpression": {
                            "expression": {
                              "expression": {
                                "id": 35901,
                                "name": "Witnet",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 40741,
                                "src": "16028:6:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                  "typeString": "type(library Witnet)"
                                }
                              },
                              "id": 35902,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "16035:14:114",
                              "memberName": "RadonDataTypes",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 37720,
                              "src": "16028:21:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_enum$_RadonDataTypes_$37720_$",
                                "typeString": "type(enum Witnet.RadonDataTypes)"
                              }
                            },
                            "id": 35903,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "lValueRequested": false,
                            "memberLocation": "16050:5:114",
                            "memberName": "Float",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 37705,
                            "src": "16028:27:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                              "typeString": "enum Witnet.RadonDataTypes"
                            }
                          },
                          "src": "16016:39:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "src": "15954:101:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "||",
                      "rightExpression": {
                        "commonType": {
                          "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                          "typeString": "enum Witnet.RadonDataTypes"
                        },
                        "id": 35910,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "leftExpression": {
                          "id": 35906,
                          "name": "dataType",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35841,
                          "src": "16076:8:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                            "typeString": "enum Witnet.RadonDataTypes"
                          }
                        },
                        "nodeType": "BinaryOperation",
                        "operator": "==",
                        "rightExpression": {
                          "expression": {
                            "expression": {
                              "id": 35907,
                              "name": "Witnet",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 40741,
                              "src": "16088:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                "typeString": "type(library Witnet)"
                              }
                            },
                            "id": 35908,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "16095:14:114",
                            "memberName": "RadonDataTypes",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 37720,
                            "src": "16088:21:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_enum$_RadonDataTypes_$37720_$",
                              "typeString": "type(enum Witnet.RadonDataTypes)"
                            }
                          },
                          "id": 35909,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "memberLocation": "16110:4:114",
                          "memberName": "Bool",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37702,
                          "src": "16088:26:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                            "typeString": "enum Witnet.RadonDataTypes"
                          }
                        },
                        "src": "16076:38:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      },
                      "src": "15954:160:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "falseBody": {
                      "id": 35925,
                      "nodeType": "Block",
                      "src": "16178:140:114",
                      "statements": [
                        {
                          "errorCall": {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "id": 35918,
                                    "name": "dataType",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 35841,
                                    "src": "16249:8:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                      "typeString": "enum Witnet.RadonDataTypes"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                      "typeString": "enum Witnet.RadonDataTypes"
                                    }
                                  ],
                                  "id": 35917,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "nodeType": "ElementaryTypeNameExpression",
                                  "src": "16243:5:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_uint8_$",
                                    "typeString": "type(uint8)"
                                  },
                                  "typeName": {
                                    "id": 35916,
                                    "name": "uint8",
                                    "nodeType": "ElementaryTypeName",
                                    "src": "16243:5:114",
                                    "typeDescriptions": {}
                                  }
                                },
                                "id": 35919,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "typeConversion",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "16243:15:114",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              },
                              {
                                "arguments": [
                                  {
                                    "id": 35921,
                                    "name": "dataType",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 35841,
                                    "src": "16282:8:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                      "typeString": "enum Witnet.RadonDataTypes"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                      "typeString": "enum Witnet.RadonDataTypes"
                                    }
                                  ],
                                  "id": 35920,
                                  "name": "size",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 34482,
                                  "src": "16277:4:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_internal_pure$_t_enum$_RadonDataTypes_$37720_$returns$_t_uint16_$",
                                    "typeString": "function (enum Witnet.RadonDataTypes) pure returns (uint16)"
                                  }
                                },
                                "id": 35922,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "16277:14:114",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint16",
                                  "typeString": "uint16"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                },
                                {
                                  "typeIdentifier": "t_uint16",
                                  "typeString": "uint16"
                                }
                              ],
                              "id": 35915,
                              "name": "UnsupportedRadonDataType",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 34405,
                              "src": "16200:24:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_error_pure$_t_uint8_$_t_uint256_$returns$_t_error_$",
                                "typeString": "function (uint8,uint256) pure returns (error)"
                              }
                            },
                            "id": 35923,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "16200:106:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_error",
                              "typeString": "error"
                            }
                          },
                          "id": 35924,
                          "nodeType": "RevertStatement",
                          "src": "16193:113:114"
                        }
                      ]
                    },
                    "id": 35926,
                    "nodeType": "IfStatement",
                    "src": "15936:382:114",
                    "trueBody": {
                      "id": 35914,
                      "nodeType": "Block",
                      "src": "16126:46:114",
                      "statements": [
                        {
                          "expression": {
                            "hexValue": "39",
                            "id": 35912,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "16148:1:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_9_by_1",
                              "typeString": "int_const 9"
                            },
                            "value": "9"
                          },
                          "functionReturnParameters": 35847,
                          "id": 35913,
                          "nodeType": "Return",
                          "src": "16141:8:114"
                        }
                      ]
                    }
                  },
                  "id": 35927,
                  "nodeType": "IfStatement",
                  "src": "15320:998:114",
                  "trueBody": {
                    "id": 35894,
                    "nodeType": "Block",
                    "src": "15626:304:114",
                    "statements": [
                      {
                        "condition": {
                          "commonType": {
                            "typeIdentifier": "t_uint16",
                            "typeString": "uint16"
                          },
                          "id": 35879,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "id": 35877,
                            "name": "maxDataSize",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35843,
                            "src": "15645:11:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint16",
                              "typeString": "uint16"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "==",
                          "rightExpression": {
                            "hexValue": "30",
                            "id": 35878,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "15660:1:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "src": "15645:16:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 35889,
                        "nodeType": "IfStatement",
                        "src": "15641:179:114",
                        "trueBody": {
                          "id": 35888,
                          "nodeType": "Block",
                          "src": "15663:157:114",
                          "statements": [
                            {
                              "errorCall": {
                                "arguments": [
                                  {
                                    "arguments": [
                                      {
                                        "id": 35883,
                                        "name": "dataType",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 35841,
                                        "src": "15742:8:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                          "typeString": "enum Witnet.RadonDataTypes"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                          "typeString": "enum Witnet.RadonDataTypes"
                                        }
                                      ],
                                      "id": 35882,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "nodeType": "ElementaryTypeNameExpression",
                                      "src": "15736:5:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_uint8_$",
                                        "typeString": "type(uint8)"
                                      },
                                      "typeName": {
                                        "id": 35881,
                                        "name": "uint8",
                                        "nodeType": "ElementaryTypeName",
                                        "src": "15736:5:114",
                                        "typeDescriptions": {}
                                      }
                                    },
                                    "id": 35884,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "15736:15:114",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint8",
                                      "typeString": "uint8"
                                    }
                                  },
                                  {
                                    "id": 35885,
                                    "name": "maxDataSize",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 35843,
                                    "src": "15774:11:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint16",
                                      "typeString": "uint16"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_uint8",
                                      "typeString": "uint8"
                                    },
                                    {
                                      "typeIdentifier": "t_uint16",
                                      "typeString": "uint16"
                                    }
                                  ],
                                  "id": 35880,
                                  "name": "UnsupportedRadonDataType",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 34405,
                                  "src": "15689:24:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_error_pure$_t_uint8_$_t_uint256_$returns$_t_error_$",
                                    "typeString": "function (uint8,uint256) pure returns (error)"
                                  }
                                },
                                "id": 35886,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "15689:115:114",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_error",
                                  "typeString": "error"
                                }
                              },
                              "id": 35887,
                              "nodeType": "RevertStatement",
                              "src": "15682:122:114"
                            }
                          ]
                        }
                      },
                      {
                        "expression": {
                          "commonType": {
                            "typeIdentifier": "t_uint16",
                            "typeString": "uint16"
                          },
                          "id": 35892,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "id": 35890,
                            "name": "maxDataSize",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 35843,
                            "src": "15841:11:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint16",
                              "typeString": "uint16"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "+",
                          "rightExpression": {
                            "hexValue": "33",
                            "id": 35891,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "15855:1:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_3_by_1",
                              "typeString": "int_const 3"
                            },
                            "value": "3"
                          },
                          "src": "15841:15:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint16",
                            "typeString": "uint16"
                          }
                        },
                        "functionReturnParameters": 35847,
                        "id": 35893,
                        "nodeType": "Return",
                        "src": "15834:22:114"
                      }
                    ]
                  }
                }
              ]
            },
            "functionSelector": "0160730f",
            "id": 35929,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "validate",
            "nameLocation": "15159:8:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 35844,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35841,
                  "mutability": "mutable",
                  "name": "dataType",
                  "nameLocation": "15204:8:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35929,
                  "src": "15182:30:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                    "typeString": "enum Witnet.RadonDataTypes"
                  },
                  "typeName": {
                    "id": 35840,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 35839,
                      "name": "Witnet.RadonDataTypes",
                      "nameLocations": [
                        "15182:6:114",
                        "15189:14:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37720,
                      "src": "15182:21:114"
                    },
                    "referencedDeclaration": 37720,
                    "src": "15182:21:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                      "typeString": "enum Witnet.RadonDataTypes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 35843,
                  "mutability": "mutable",
                  "name": "maxDataSize",
                  "nameLocation": "15234:11:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35929,
                  "src": "15227:18:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint16",
                    "typeString": "uint16"
                  },
                  "typeName": {
                    "id": 35842,
                    "name": "uint16",
                    "nodeType": "ElementaryTypeName",
                    "src": "15227:6:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint16",
                      "typeString": "uint16"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15167:89:114"
            },
            "returnParameters": {
              "id": 35847,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35846,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 35929,
                  "src": "15296:6:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint16",
                    "typeString": "uint16"
                  },
                  "typeName": {
                    "id": 35845,
                    "name": "uint16",
                    "nodeType": "ElementaryTypeName",
                    "src": "15296:6:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint16",
                      "typeString": "uint16"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15295:8:114"
            },
            "scope": 36466,
            "src": "15150:1175:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 35994,
              "nodeType": "Block",
              "src": "16411:771:114",
              "statements": [
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_enum$_RadonFilterOpcodes_$37739",
                      "typeString": "enum Witnet.RadonFilterOpcodes"
                    },
                    "id": 35940,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "expression": {
                        "id": 35935,
                        "name": "filter",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 35932,
                        "src": "16440:6:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                          "typeString": "struct Witnet.RadonFilter memory"
                        }
                      },
                      "id": 35936,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "16447:6:114",
                      "memberName": "opcode",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 37724,
                      "src": "16440:13:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_enum$_RadonFilterOpcodes_$37739",
                        "typeString": "enum Witnet.RadonFilterOpcodes"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "==",
                    "rightExpression": {
                      "expression": {
                        "expression": {
                          "id": 35937,
                          "name": "Witnet",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 40741,
                          "src": "16457:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                            "typeString": "type(library Witnet)"
                          }
                        },
                        "id": 35938,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "16464:18:114",
                        "memberName": "RadonFilterOpcodes",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37739,
                        "src": "16457:25:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_enum$_RadonFilterOpcodes_$37739_$",
                          "typeString": "type(enum Witnet.RadonFilterOpcodes)"
                        }
                      },
                      "id": 35939,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "memberLocation": "16483:17:114",
                      "memberName": "StandardDeviation",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 37734,
                      "src": "16457:43:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_enum$_RadonFilterOpcodes_$37739",
                        "typeString": "enum Witnet.RadonFilterOpcodes"
                      }
                    },
                    "src": "16440:60:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "condition": {
                      "commonType": {
                        "typeIdentifier": "t_enum$_RadonFilterOpcodes_$37739",
                        "typeString": "enum Witnet.RadonFilterOpcodes"
                      },
                      "id": 35964,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "expression": {
                          "id": 35959,
                          "name": "filter",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35932,
                          "src": "16755:6:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                            "typeString": "struct Witnet.RadonFilter memory"
                          }
                        },
                        "id": 35960,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "16762:6:114",
                        "memberName": "opcode",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37724,
                        "src": "16755:13:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_enum$_RadonFilterOpcodes_$37739",
                          "typeString": "enum Witnet.RadonFilterOpcodes"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "==",
                      "rightExpression": {
                        "expression": {
                          "expression": {
                            "id": 35961,
                            "name": "Witnet",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 40741,
                            "src": "16772:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                              "typeString": "type(library Witnet)"
                            }
                          },
                          "id": 35962,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "16779:18:114",
                          "memberName": "RadonFilterOpcodes",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 37739,
                          "src": "16772:25:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_enum$_RadonFilterOpcodes_$37739_$",
                            "typeString": "type(enum Witnet.RadonFilterOpcodes)"
                          }
                        },
                        "id": 35963,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "memberLocation": "16798:4:114",
                        "memberName": "Mode",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37737,
                        "src": "16772:30:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_enum$_RadonFilterOpcodes_$37739",
                          "typeString": "enum Witnet.RadonFilterOpcodes"
                        }
                      },
                      "src": "16755:47:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "falseBody": {
                      "id": 35991,
                      "nodeType": "Block",
                      "src": "17048:127:114",
                      "statements": [
                        {
                          "errorCall": {
                            "arguments": [
                              {
                                "arguments": [
                                  {
                                    "expression": {
                                      "id": 35986,
                                      "name": "filter",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 35932,
                                      "src": "17148:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                                        "typeString": "struct Witnet.RadonFilter memory"
                                      }
                                    },
                                    "id": 35987,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "17155:6:114",
                                    "memberName": "opcode",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 37724,
                                    "src": "17148:13:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_enum$_RadonFilterOpcodes_$37739",
                                      "typeString": "enum Witnet.RadonFilterOpcodes"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_enum$_RadonFilterOpcodes_$37739",
                                      "typeString": "enum Witnet.RadonFilterOpcodes"
                                    }
                                  ],
                                  "id": 35985,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "nodeType": "ElementaryTypeNameExpression",
                                  "src": "17142:5:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_uint8_$",
                                    "typeString": "type(uint8)"
                                  },
                                  "typeName": {
                                    "id": 35984,
                                    "name": "uint8",
                                    "nodeType": "ElementaryTypeName",
                                    "src": "17142:5:114",
                                    "typeDescriptions": {}
                                  }
                                },
                                "id": 35988,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "typeConversion",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "17142:20:114",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              ],
                              "id": 35983,
                              "name": "UnsupportedRadonFilterOpcode",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 34409,
                              "src": "17113:28:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_error_pure$_t_uint8_$returns$_t_error_$",
                                "typeString": "function (uint8) pure returns (error)"
                              }
                            },
                            "id": 35989,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "17113:50:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_error",
                              "typeString": "error"
                            }
                          },
                          "id": 35990,
                          "nodeType": "RevertStatement",
                          "src": "17106:57:114"
                        }
                      ]
                    },
                    "id": 35992,
                    "nodeType": "IfStatement",
                    "src": "16737:438:114",
                    "trueBody": {
                      "id": 35982,
                      "nodeType": "Block",
                      "src": "16814:228:114",
                      "statements": [
                        {
                          "condition": {
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 35969,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "expression": {
                                "expression": {
                                  "id": 35965,
                                  "name": "filter",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35932,
                                  "src": "16896:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                                    "typeString": "struct Witnet.RadonFilter memory"
                                  }
                                },
                                "id": 35966,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "16903:8:114",
                                "memberName": "cborArgs",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37726,
                                "src": "16896:15:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes_memory_ptr",
                                  "typeString": "bytes memory"
                                }
                              },
                              "id": 35967,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "16912:6:114",
                              "memberName": "length",
                              "nodeType": "MemberAccess",
                              "src": "16896:22:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": ">",
                            "rightExpression": {
                              "hexValue": "30",
                              "id": 35968,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "number",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "16921:1:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_rational_0_by_1",
                                "typeString": "int_const 0"
                              },
                              "value": "0"
                            },
                            "src": "16896:26:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "id": 35981,
                          "nodeType": "IfStatement",
                          "src": "16892:139:114",
                          "trueBody": {
                            "id": 35980,
                            "nodeType": "Block",
                            "src": "16924:107:114",
                            "statements": [
                              {
                                "errorCall": {
                                  "arguments": [
                                    {
                                      "arguments": [
                                        {
                                          "expression": {
                                            "id": 35973,
                                            "name": "filter",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 35932,
                                            "src": "16983:6:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                                              "typeString": "struct Witnet.RadonFilter memory"
                                            }
                                          },
                                          "id": 35974,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberLocation": "16990:6:114",
                                          "memberName": "opcode",
                                          "nodeType": "MemberAccess",
                                          "referencedDeclaration": 37724,
                                          "src": "16983:13:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_enum$_RadonFilterOpcodes_$37739",
                                            "typeString": "enum Witnet.RadonFilterOpcodes"
                                          }
                                        }
                                      ],
                                      "expression": {
                                        "argumentTypes": [
                                          {
                                            "typeIdentifier": "t_enum$_RadonFilterOpcodes_$37739",
                                            "typeString": "enum Witnet.RadonFilterOpcodes"
                                          }
                                        ],
                                        "id": 35972,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "lValueRequested": false,
                                        "nodeType": "ElementaryTypeNameExpression",
                                        "src": "16977:5:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_type$_t_uint8_$",
                                          "typeString": "type(uint8)"
                                        },
                                        "typeName": {
                                          "id": 35971,
                                          "name": "uint8",
                                          "nodeType": "ElementaryTypeName",
                                          "src": "16977:5:114",
                                          "typeDescriptions": {}
                                        }
                                      },
                                      "id": 35975,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "typeConversion",
                                      "lValueRequested": false,
                                      "nameLocations": [],
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "16977:20:114",
                                      "tryCall": false,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint8",
                                        "typeString": "uint8"
                                      }
                                    },
                                    {
                                      "expression": {
                                        "id": 35976,
                                        "name": "filter",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 35932,
                                        "src": "16999:6:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                                          "typeString": "struct Witnet.RadonFilter memory"
                                        }
                                      },
                                      "id": 35977,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberLocation": "17006:8:114",
                                      "memberName": "cborArgs",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": 37726,
                                      "src": "16999:15:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes_memory_ptr",
                                        "typeString": "bytes memory"
                                      }
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": [
                                      {
                                        "typeIdentifier": "t_uint8",
                                        "typeString": "uint8"
                                      },
                                      {
                                        "typeIdentifier": "t_bytes_memory_ptr",
                                        "typeString": "bytes memory"
                                      }
                                    ],
                                    "id": 35970,
                                    "name": "UnsupportedRadonFilterArgs",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 34415,
                                    "src": "16950:26:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_function_error_pure$_t_uint8_$_t_bytes_memory_ptr_$returns$_t_error_$",
                                      "typeString": "function (uint8,bytes memory) pure returns (error)"
                                    }
                                  },
                                  "id": 35978,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "functionCall",
                                  "lValueRequested": false,
                                  "nameLocations": [],
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "16950:65:114",
                                  "tryCall": false,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_error",
                                    "typeString": "error"
                                  }
                                },
                                "id": 35979,
                                "nodeType": "RevertStatement",
                                "src": "16943:72:114"
                              }
                            ]
                          }
                        }
                      ]
                    }
                  },
                  "id": 35993,
                  "nodeType": "IfStatement",
                  "src": "16422:753:114",
                  "trueBody": {
                    "id": 35958,
                    "nodeType": "Block",
                    "src": "16512:219:114",
                    "statements": [
                      {
                        "condition": {
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "id": 35945,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "expression": {
                              "expression": {
                                "id": 35941,
                                "name": "filter",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35932,
                                "src": "16584:6:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                                  "typeString": "struct Witnet.RadonFilter memory"
                                }
                              },
                              "id": 35942,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "16591:8:114",
                              "memberName": "cborArgs",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 37726,
                              "src": "16584:15:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            },
                            "id": 35943,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "16600:6:114",
                            "memberName": "length",
                            "nodeType": "MemberAccess",
                            "src": "16584:22:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "==",
                          "rightExpression": {
                            "hexValue": "30",
                            "id": 35944,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "16610:1:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "src": "16584:27:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 35957,
                        "nodeType": "IfStatement",
                        "src": "16580:140:114",
                        "trueBody": {
                          "id": 35956,
                          "nodeType": "Block",
                          "src": "16613:107:114",
                          "statements": [
                            {
                              "errorCall": {
                                "arguments": [
                                  {
                                    "arguments": [
                                      {
                                        "expression": {
                                          "id": 35949,
                                          "name": "filter",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 35932,
                                          "src": "16672:6:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                                            "typeString": "struct Witnet.RadonFilter memory"
                                          }
                                        },
                                        "id": 35950,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberLocation": "16679:6:114",
                                        "memberName": "opcode",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 37724,
                                        "src": "16672:13:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_enum$_RadonFilterOpcodes_$37739",
                                          "typeString": "enum Witnet.RadonFilterOpcodes"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_enum$_RadonFilterOpcodes_$37739",
                                          "typeString": "enum Witnet.RadonFilterOpcodes"
                                        }
                                      ],
                                      "id": 35948,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "nodeType": "ElementaryTypeNameExpression",
                                      "src": "16666:5:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_uint8_$",
                                        "typeString": "type(uint8)"
                                      },
                                      "typeName": {
                                        "id": 35947,
                                        "name": "uint8",
                                        "nodeType": "ElementaryTypeName",
                                        "src": "16666:5:114",
                                        "typeDescriptions": {}
                                      }
                                    },
                                    "id": 35951,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "typeConversion",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "16666:20:114",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint8",
                                      "typeString": "uint8"
                                    }
                                  },
                                  {
                                    "expression": {
                                      "id": 35952,
                                      "name": "filter",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 35932,
                                      "src": "16688:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                                        "typeString": "struct Witnet.RadonFilter memory"
                                      }
                                    },
                                    "id": 35953,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "16695:8:114",
                                    "memberName": "cborArgs",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 37726,
                                    "src": "16688:15:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_uint8",
                                      "typeString": "uint8"
                                    },
                                    {
                                      "typeIdentifier": "t_bytes_memory_ptr",
                                      "typeString": "bytes memory"
                                    }
                                  ],
                                  "id": 35946,
                                  "name": "UnsupportedRadonFilterArgs",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 34415,
                                  "src": "16639:26:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_error_pure$_t_uint8_$_t_bytes_memory_ptr_$returns$_t_error_$",
                                    "typeString": "function (uint8,bytes memory) pure returns (error)"
                                  }
                                },
                                "id": 35954,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "nameLocations": [],
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "16639:65:114",
                                "tryCall": false,
                                "typeDescriptions": {
                                  "typeIdentifier": "t_error",
                                  "typeString": "error"
                                }
                              },
                              "id": 35955,
                              "nodeType": "RevertStatement",
                              "src": "16632:72:114"
                            }
                          ]
                        }
                      }
                    ]
                  }
                }
              ]
            },
            "functionSelector": "a97b1d31",
            "id": 35995,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "validate",
            "nameLocation": "16342:8:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 35933,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35932,
                  "mutability": "mutable",
                  "name": "filter",
                  "nameLocation": "16377:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 35995,
                  "src": "16351:32:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                    "typeString": "struct Witnet.RadonFilter"
                  },
                  "typeName": {
                    "id": 35931,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 35930,
                      "name": "Witnet.RadonFilter",
                      "nameLocations": [
                        "16351:6:114",
                        "16358:11:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37727,
                      "src": "16351:18:114"
                    },
                    "referencedDeclaration": 37727,
                    "src": "16351:18:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonFilter_$37727_storage_ptr",
                      "typeString": "struct Witnet.RadonFilter"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16350:34:114"
            },
            "returnParameters": {
              "id": 35934,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "16411:0:114"
            },
            "scope": 36466,
            "src": "16333:849:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 36068,
              "nodeType": "Block",
              "src": "17270:1049:114",
              "statements": [
                {
                  "condition": {
                    "id": 36036,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "UnaryOperation",
                    "operator": "!",
                    "prefix": true,
                    "src": "17335:419:114",
                    "subExpression": {
                      "components": [
                        {
                          "commonType": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          },
                          "id": 36034,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "commonType": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            },
                            "id": 36027,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "commonType": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              "id": 36020,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "commonType": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                },
                                "id": 36013,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "commonType": {
                                    "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                    "typeString": "enum Witnet.RadonReduceOpcodes"
                                  },
                                  "id": 36006,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "expression": {
                                      "id": 36001,
                                      "name": "reducer",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 35998,
                                      "src": "17355:7:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                                        "typeString": "struct Witnet.RadonReducer memory"
                                      }
                                    },
                                    "id": 36002,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "17363:6:114",
                                    "memberName": "opcode",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 37743,
                                    "src": "17355:14:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                      "typeString": "enum Witnet.RadonReduceOpcodes"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": "==",
                                  "rightExpression": {
                                    "expression": {
                                      "expression": {
                                        "id": 36003,
                                        "name": "Witnet",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 40741,
                                        "src": "17373:6:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                          "typeString": "type(library Witnet)"
                                        }
                                      },
                                      "id": 36004,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberLocation": "17380:18:114",
                                      "memberName": "RadonReduceOpcodes",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": 37762,
                                      "src": "17373:25:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_enum$_RadonReduceOpcodes_$37762_$",
                                        "typeString": "type(enum Witnet.RadonReduceOpcodes)"
                                      }
                                    },
                                    "id": 36005,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "lValueRequested": false,
                                    "memberLocation": "17399:11:114",
                                    "memberName": "AverageMean",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 37753,
                                    "src": "17373:37:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                      "typeString": "enum Witnet.RadonReduceOpcodes"
                                    }
                                  },
                                  "src": "17355:55:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": "||",
                                "rightExpression": {
                                  "commonType": {
                                    "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                    "typeString": "enum Witnet.RadonReduceOpcodes"
                                  },
                                  "id": 36012,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "expression": {
                                      "id": 36007,
                                      "name": "reducer",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 35998,
                                      "src": "17436:7:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                                        "typeString": "struct Witnet.RadonReducer memory"
                                      }
                                    },
                                    "id": 36008,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "17444:6:114",
                                    "memberName": "opcode",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 37743,
                                    "src": "17436:14:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                      "typeString": "enum Witnet.RadonReduceOpcodes"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": "==",
                                  "rightExpression": {
                                    "expression": {
                                      "expression": {
                                        "id": 36009,
                                        "name": "Witnet",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 40741,
                                        "src": "17454:6:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                          "typeString": "type(library Witnet)"
                                        }
                                      },
                                      "id": 36010,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberLocation": "17461:18:114",
                                      "memberName": "RadonReduceOpcodes",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": 37762,
                                      "src": "17454:25:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_enum$_RadonReduceOpcodes_$37762_$",
                                        "typeString": "type(enum Witnet.RadonReduceOpcodes)"
                                      }
                                    },
                                    "id": 36011,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "lValueRequested": false,
                                    "memberLocation": "17480:17:114",
                                    "memberName": "StandardDeviation",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 37757,
                                    "src": "17454:43:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                      "typeString": "enum Witnet.RadonReduceOpcodes"
                                    }
                                  },
                                  "src": "17436:61:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "src": "17355:142:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "||",
                              "rightExpression": {
                                "commonType": {
                                  "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                  "typeString": "enum Witnet.RadonReduceOpcodes"
                                },
                                "id": 36019,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftExpression": {
                                  "expression": {
                                    "id": 36014,
                                    "name": "reducer",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 35998,
                                    "src": "17522:7:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                                      "typeString": "struct Witnet.RadonReducer memory"
                                    }
                                  },
                                  "id": 36015,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberLocation": "17530:6:114",
                                  "memberName": "opcode",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 37743,
                                  "src": "17522:14:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                    "typeString": "enum Witnet.RadonReduceOpcodes"
                                  }
                                },
                                "nodeType": "BinaryOperation",
                                "operator": "==",
                                "rightExpression": {
                                  "expression": {
                                    "expression": {
                                      "id": 36016,
                                      "name": "Witnet",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 40741,
                                      "src": "17540:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                        "typeString": "type(library Witnet)"
                                      }
                                    },
                                    "id": 36017,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "17547:18:114",
                                    "memberName": "RadonReduceOpcodes",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 37762,
                                    "src": "17540:25:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_type$_t_enum$_RadonReduceOpcodes_$37762_$",
                                      "typeString": "type(enum Witnet.RadonReduceOpcodes)"
                                    }
                                  },
                                  "id": 36018,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "memberLocation": "17566:4:114",
                                  "memberName": "Mode",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 37752,
                                  "src": "17540:30:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                    "typeString": "enum Witnet.RadonReduceOpcodes"
                                  }
                                },
                                "src": "17522:48:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "src": "17355:215:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "||",
                            "rightExpression": {
                              "commonType": {
                                "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                "typeString": "enum Witnet.RadonReduceOpcodes"
                              },
                              "id": 36026,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "expression": {
                                  "id": 36021,
                                  "name": "reducer",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35998,
                                  "src": "17595:7:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                                    "typeString": "struct Witnet.RadonReducer memory"
                                  }
                                },
                                "id": 36022,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "17603:6:114",
                                "memberName": "opcode",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37743,
                                "src": "17595:14:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                  "typeString": "enum Witnet.RadonReduceOpcodes"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "==",
                              "rightExpression": {
                                "expression": {
                                  "expression": {
                                    "id": 36023,
                                    "name": "Witnet",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 40741,
                                    "src": "17613:6:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                      "typeString": "type(library Witnet)"
                                    }
                                  },
                                  "id": 36024,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberLocation": "17620:18:114",
                                  "memberName": "RadonReduceOpcodes",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 37762,
                                  "src": "17613:25:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_enum$_RadonReduceOpcodes_$37762_$",
                                    "typeString": "type(enum Witnet.RadonReduceOpcodes)"
                                  }
                                },
                                "id": 36025,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "memberLocation": "17639:18:114",
                                "memberName": "ConcatenateAndHash",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37761,
                                "src": "17613:44:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                  "typeString": "enum Witnet.RadonReduceOpcodes"
                                }
                              },
                              "src": "17595:62:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              }
                            },
                            "src": "17355:302:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "||",
                          "rightExpression": {
                            "commonType": {
                              "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                              "typeString": "enum Witnet.RadonReduceOpcodes"
                            },
                            "id": 36033,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "expression": {
                                "id": 36028,
                                "name": "reducer",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 35998,
                                "src": "17682:7:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                                  "typeString": "struct Witnet.RadonReducer memory"
                                }
                              },
                              "id": 36029,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "17690:6:114",
                              "memberName": "opcode",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 37743,
                              "src": "17682:14:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                "typeString": "enum Witnet.RadonReduceOpcodes"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "==",
                            "rightExpression": {
                              "expression": {
                                "expression": {
                                  "id": 36030,
                                  "name": "Witnet",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 40741,
                                  "src": "17700:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                    "typeString": "type(library Witnet)"
                                  }
                                },
                                "id": 36031,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "17707:18:114",
                                "memberName": "RadonReduceOpcodes",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37762,
                                "src": "17700:25:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_enum$_RadonReduceOpcodes_$37762_$",
                                  "typeString": "type(enum Witnet.RadonReduceOpcodes)"
                                }
                              },
                              "id": 36032,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "memberLocation": "17726:13:114",
                              "memberName": "AverageMedian",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 37755,
                              "src": "17700:39:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                "typeString": "enum Witnet.RadonReduceOpcodes"
                              }
                            },
                            "src": "17682:57:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "src": "17355:384:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        }
                      ],
                      "id": 36035,
                      "isConstant": false,
                      "isInlineArray": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "TupleExpression",
                      "src": "17336:418:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 36046,
                  "nodeType": "IfStatement",
                  "src": "17331:519:114",
                  "trueBody": {
                    "id": 36045,
                    "nodeType": "Block",
                    "src": "17756:94:114",
                    "statements": [
                      {
                        "errorCall": {
                          "arguments": [
                            {
                              "arguments": [
                                {
                                  "expression": {
                                    "id": 36040,
                                    "name": "reducer",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 35998,
                                    "src": "17818:7:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                                      "typeString": "struct Witnet.RadonReducer memory"
                                    }
                                  },
                                  "id": 36041,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberLocation": "17826:6:114",
                                  "memberName": "opcode",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 37743,
                                  "src": "17818:14:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                    "typeString": "enum Witnet.RadonReduceOpcodes"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_enum$_RadonReduceOpcodes_$37762",
                                    "typeString": "enum Witnet.RadonReduceOpcodes"
                                  }
                                ],
                                "id": 36039,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "17812:5:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_uint8_$",
                                  "typeString": "type(uint8)"
                                },
                                "typeName": {
                                  "id": 36038,
                                  "name": "uint8",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "17812:5:114",
                                  "typeDescriptions": {}
                                }
                              },
                              "id": 36042,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "17812:21:114",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint8",
                                "typeString": "uint8"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint8",
                                "typeString": "uint8"
                              }
                            ],
                            "id": 36037,
                            "name": "UnsupportedRadonReducerOpcode",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 34419,
                            "src": "17782:29:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_error_pure$_t_uint8_$returns$_t_error_$",
                              "typeString": "function (uint8) pure returns (error)"
                            }
                          },
                          "id": 36043,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "17782:52:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_error",
                            "typeString": "error"
                          }
                        },
                        "id": 36044,
                        "nodeType": "RevertStatement",
                        "src": "17775:59:114"
                      }
                    ]
                  }
                },
                {
                  "body": {
                    "id": 36066,
                    "nodeType": "Block",
                    "src": "17918:64:114",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "baseExpression": {
                                "expression": {
                                  "id": 36060,
                                  "name": "reducer",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 35998,
                                  "src": "17946:7:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                                    "typeString": "struct Witnet.RadonReducer memory"
                                  }
                                },
                                "id": 36061,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "17954:7:114",
                                "memberName": "filters",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37747,
                                "src": "17946:15:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_array$_t_struct$_RadonFilter_$37727_memory_ptr_$dyn_memory_ptr",
                                  "typeString": "struct Witnet.RadonFilter memory[] memory"
                                }
                              },
                              "id": 36063,
                              "indexExpression": {
                                "id": 36062,
                                "name": "ix",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 36048,
                                "src": "17962:2:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "17946:19:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                                "typeString": "struct Witnet.RadonFilter memory"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_struct$_RadonFilter_$37727_memory_ptr",
                                "typeString": "struct Witnet.RadonFilter memory"
                              }
                            ],
                            "id": 36059,
                            "name": "validate",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [
                              35838,
                              35929,
                              35995,
                              36069,
                              36144
                            ],
                            "referencedDeclaration": 35995,
                            "src": "17937:8:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_pure$_t_struct$_RadonFilter_$37727_memory_ptr_$returns$__$",
                              "typeString": "function (struct Witnet.RadonFilter memory) pure"
                            }
                          },
                          "id": 36064,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "17937:29:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 36065,
                        "nodeType": "ExpressionStatement",
                        "src": "17937:29:114"
                      }
                    ]
                  },
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 36055,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "id": 36051,
                      "name": "ix",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 36048,
                      "src": "17882:2:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "<",
                    "rightExpression": {
                      "expression": {
                        "expression": {
                          "id": 36052,
                          "name": "reducer",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 35998,
                          "src": "17887:7:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                            "typeString": "struct Witnet.RadonReducer memory"
                          }
                        },
                        "id": 36053,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "17895:7:114",
                        "memberName": "filters",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37747,
                        "src": "17887:15:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_struct$_RadonFilter_$37727_memory_ptr_$dyn_memory_ptr",
                          "typeString": "struct Witnet.RadonFilter memory[] memory"
                        }
                      },
                      "id": 36054,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "17903:6:114",
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "src": "17887:22:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "17882:27:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 36067,
                  "initializationExpression": {
                    "assignments": [
                      36048
                    ],
                    "declarations": [
                      {
                        "constant": false,
                        "id": 36048,
                        "mutability": "mutable",
                        "name": "ix",
                        "nameLocation": "17874:2:114",
                        "nodeType": "VariableDeclaration",
                        "scope": 36067,
                        "src": "17869:7:114",
                        "stateVariable": false,
                        "storageLocation": "default",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "typeName": {
                          "id": 36047,
                          "name": "uint",
                          "nodeType": "ElementaryTypeName",
                          "src": "17869:4:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "visibility": "internal"
                      }
                    ],
                    "id": 36050,
                    "initialValue": {
                      "hexValue": "30",
                      "id": 36049,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "17879:1:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "nodeType": "VariableDeclarationStatement",
                    "src": "17869:11:114"
                  },
                  "isSimpleCounterLoop": true,
                  "loopExpression": {
                    "expression": {
                      "id": 36057,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "UnaryOperation",
                      "operator": "++",
                      "prefix": false,
                      "src": "17911:5:114",
                      "subExpression": {
                        "id": 36056,
                        "name": "ix",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 36048,
                        "src": "17911:2:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 36058,
                    "nodeType": "ExpressionStatement",
                    "src": "17911:5:114"
                  },
                  "nodeType": "ForStatement",
                  "src": "17864:118:114"
                }
              ]
            },
            "functionSelector": "daf4b0ef",
            "id": 36069,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "validate",
            "nameLocation": "17199:8:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 35999,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 35998,
                  "mutability": "mutable",
                  "name": "reducer",
                  "nameLocation": "17235:7:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 36069,
                  "src": "17208:34:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonReducer_$37748_memory_ptr",
                    "typeString": "struct Witnet.RadonReducer"
                  },
                  "typeName": {
                    "id": 35997,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 35996,
                      "name": "Witnet.RadonReducer",
                      "nameLocations": [
                        "17208:6:114",
                        "17215:12:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37748,
                      "src": "17208:19:114"
                    },
                    "referencedDeclaration": 37748,
                    "src": "17208:19:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonReducer_$37748_storage_ptr",
                      "typeString": "struct Witnet.RadonReducer"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17207:36:114"
            },
            "returnParameters": {
              "id": 36000,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "17270:0:114"
            },
            "scope": 36466,
            "src": "17190:1129:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 36143,
              "nodeType": "Block",
              "src": "18401:938:114",
              "statements": [
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    },
                    "id": 36078,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "expression": {
                        "id": 36075,
                        "name": "sla",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 36072,
                        "src": "18416:3:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonSLAv1_$37814_memory_ptr",
                          "typeString": "struct Witnet.RadonSLAv1 memory"
                        }
                      },
                      "id": 36076,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "18420:13:114",
                      "memberName": "witnessReward",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 37809,
                      "src": "18416:17:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint64",
                        "typeString": "uint64"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "==",
                    "rightExpression": {
                      "hexValue": "30",
                      "id": 36077,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "18437:1:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "18416:22:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 36084,
                  "nodeType": "IfStatement",
                  "src": "18412:114:114",
                  "trueBody": {
                    "id": 36083,
                    "nodeType": "Block",
                    "src": "18440:86:114",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "hexValue": "5769744f7261636c655261646f6e456e636f64696e674c69623a20696e76616c696420534c413a206e6f20726577617264",
                              "id": 36080,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "string",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "18462:51:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_stringliteral_04f8ba16d0c093b5f8aeedbd38b89b45db1cae931e9ce6b7857ab483f725335d",
                                "typeString": "literal_string \"WitOracleRadonEncodingLib: invalid SLA: no reward\""
                              },
                              "value": "WitOracleRadonEncodingLib: invalid SLA: no reward"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_stringliteral_04f8ba16d0c093b5f8aeedbd38b89b45db1cae931e9ce6b7857ab483f725335d",
                                "typeString": "literal_string \"WitOracleRadonEncodingLib: invalid SLA: no reward\""
                              }
                            ],
                            "id": 36079,
                            "name": "revert",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [
                              4294967277,
                              4294967277
                            ],
                            "referencedDeclaration": 4294967277,
                            "src": "18455:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
                              "typeString": "function (string memory) pure"
                            }
                          },
                          "id": 36081,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "18455:59:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 36082,
                        "nodeType": "ExpressionStatement",
                        "src": "18455:59:114"
                      }
                    ]
                  }
                },
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    },
                    "id": 36088,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "expression": {
                        "id": 36085,
                        "name": "sla",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 36072,
                        "src": "18540:3:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonSLAv1_$37814_memory_ptr",
                          "typeString": "struct Witnet.RadonSLAv1 memory"
                        }
                      },
                      "id": 36086,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "18544:12:114",
                      "memberName": "numWitnesses",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 37805,
                      "src": "18540:16:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint8",
                        "typeString": "uint8"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "==",
                    "rightExpression": {
                      "hexValue": "30",
                      "id": 36087,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "18560:1:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "18540:21:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "condition": {
                      "commonType": {
                        "typeIdentifier": "t_uint8",
                        "typeString": "uint8"
                      },
                      "id": 36097,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "expression": {
                          "id": 36094,
                          "name": "sla",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 36072,
                          "src": "18662:3:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonSLAv1_$37814_memory_ptr",
                            "typeString": "struct Witnet.RadonSLAv1 memory"
                          }
                        },
                        "id": 36095,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "18666:12:114",
                        "memberName": "numWitnesses",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37805,
                        "src": "18662:16:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint8",
                          "typeString": "uint8"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": ">",
                      "rightExpression": {
                        "hexValue": "313237",
                        "id": 36096,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "18681:3:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_127_by_1",
                          "typeString": "int_const 127"
                        },
                        "value": "127"
                      },
                      "src": "18662:22:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "id": 36103,
                    "nodeType": "IfStatement",
                    "src": "18658:130:114",
                    "trueBody": {
                      "id": 36102,
                      "nodeType": "Block",
                      "src": "18686:102:114",
                      "statements": [
                        {
                          "expression": {
                            "arguments": [
                              {
                                "hexValue": "5769744f7261636c655261646f6e456e636f64696e674c69623a20696e76616c696420534c413a20746f6f206d616e79207769746e657373657320283e31323729",
                                "id": 36099,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "kind": "string",
                                "lValueRequested": false,
                                "nodeType": "Literal",
                                "src": "18708:67:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_stringliteral_42f3a6e356b0c1db9a0fae77d82b65ad778b2afa7e75476e6353ce66757adcd5",
                                  "typeString": "literal_string \"WitOracleRadonEncodingLib: invalid SLA: too many witnesses (>127)\""
                                },
                                "value": "WitOracleRadonEncodingLib: invalid SLA: too many witnesses (>127)"
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_stringliteral_42f3a6e356b0c1db9a0fae77d82b65ad778b2afa7e75476e6353ce66757adcd5",
                                  "typeString": "literal_string \"WitOracleRadonEncodingLib: invalid SLA: too many witnesses (>127)\""
                                }
                              ],
                              "id": 36098,
                              "name": "revert",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [
                                4294967277,
                                4294967277
                              ],
                              "referencedDeclaration": 4294967277,
                              "src": "18701:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
                                "typeString": "function (string memory) pure"
                              }
                            },
                            "id": 36100,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "18701:75:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_tuple$__$",
                              "typeString": "tuple()"
                            }
                          },
                          "id": 36101,
                          "nodeType": "ExpressionStatement",
                          "src": "18701:75:114"
                        }
                      ]
                    }
                  },
                  "id": 36104,
                  "nodeType": "IfStatement",
                  "src": "18536:252:114",
                  "trueBody": {
                    "id": 36093,
                    "nodeType": "Block",
                    "src": "18563:89:114",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "hexValue": "5769744f7261636c655261646f6e456e636f64696e674c69623a20696e76616c696420534c413a206e6f207769746e6573736573",
                              "id": 36090,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "string",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "18585:54:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_stringliteral_79d228fa71a751ad8e734cf47bae8cbc208746d64ffd9076b12d509d7a13b1c2",
                                "typeString": "literal_string \"WitOracleRadonEncodingLib: invalid SLA: no witnesses\""
                              },
                              "value": "WitOracleRadonEncodingLib: invalid SLA: no witnesses"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_stringliteral_79d228fa71a751ad8e734cf47bae8cbc208746d64ffd9076b12d509d7a13b1c2",
                                "typeString": "literal_string \"WitOracleRadonEncodingLib: invalid SLA: no witnesses\""
                              }
                            ],
                            "id": 36089,
                            "name": "revert",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [
                              4294967277,
                              4294967277
                            ],
                            "referencedDeclaration": 4294967277,
                            "src": "18578:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
                              "typeString": "function (string memory) pure"
                            }
                          },
                          "id": 36091,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "18578:62:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 36092,
                        "nodeType": "ExpressionStatement",
                        "src": "18578:62:114"
                      }
                    ]
                  }
                },
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    },
                    "id": 36113,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "commonType": {
                        "typeIdentifier": "t_uint8",
                        "typeString": "uint8"
                      },
                      "id": 36108,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "expression": {
                          "id": 36105,
                          "name": "sla",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 36072,
                          "src": "18816:3:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonSLAv1_$37814_memory_ptr",
                            "typeString": "struct Witnet.RadonSLAv1 memory"
                          }
                        },
                        "id": 36106,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "18820:22:114",
                        "memberName": "minConsensusPercentage",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37807,
                        "src": "18816:26:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint8",
                          "typeString": "uint8"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "<",
                      "rightExpression": {
                        "hexValue": "3531",
                        "id": 36107,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "18845:2:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_51_by_1",
                          "typeString": "int_const 51"
                        },
                        "value": "51"
                      },
                      "src": "18816:31:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "||",
                    "rightExpression": {
                      "commonType": {
                        "typeIdentifier": "t_uint8",
                        "typeString": "uint8"
                      },
                      "id": 36112,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "expression": {
                          "id": 36109,
                          "name": "sla",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 36072,
                          "src": "18869:3:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonSLAv1_$37814_memory_ptr",
                            "typeString": "struct Witnet.RadonSLAv1 memory"
                          }
                        },
                        "id": 36110,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "18873:22:114",
                        "memberName": "minConsensusPercentage",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37807,
                        "src": "18869:26:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint8",
                          "typeString": "uint8"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": ">",
                      "rightExpression": {
                        "hexValue": "3939",
                        "id": 36111,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "18898:2:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_99_by_1",
                          "typeString": "int_const 99"
                        },
                        "value": "99"
                      },
                      "src": "18869:31:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "src": "18816:84:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 36119,
                  "nodeType": "IfStatement",
                  "src": "18798:224:114",
                  "trueBody": {
                    "id": 36118,
                    "nodeType": "Block",
                    "src": "18912:110:114",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "hexValue": "5769744f7261636c655261646f6e456e636f64696e674c69623a20696e76616c696420534c413a20636f6e73656e7375732070657263656e74616765206f7574206f662072616e6765",
                              "id": 36115,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "string",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "18934:75:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_stringliteral_faa6f1e8fde9a6c84dd64770c1b479dec3d0221e2cc74699b10e27d46a7149c5",
                                "typeString": "literal_string \"WitOracleRadonEncodingLib: invalid SLA: consensus percentage out of range\""
                              },
                              "value": "WitOracleRadonEncodingLib: invalid SLA: consensus percentage out of range"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_stringliteral_faa6f1e8fde9a6c84dd64770c1b479dec3d0221e2cc74699b10e27d46a7149c5",
                                "typeString": "literal_string \"WitOracleRadonEncodingLib: invalid SLA: consensus percentage out of range\""
                              }
                            ],
                            "id": 36114,
                            "name": "revert",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [
                              4294967277,
                              4294967277
                            ],
                            "referencedDeclaration": 4294967277,
                            "src": "18927:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
                              "typeString": "function (string memory) pure"
                            }
                          },
                          "id": 36116,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "18927:83:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 36117,
                        "nodeType": "ExpressionStatement",
                        "src": "18927:83:114"
                      }
                    ]
                  }
                },
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    },
                    "id": 36123,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "expression": {
                        "id": 36120,
                        "name": "sla",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 36072,
                        "src": "19036:3:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_RadonSLAv1_$37814_memory_ptr",
                          "typeString": "struct Witnet.RadonSLAv1 memory"
                        }
                      },
                      "id": 36121,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "19040:17:114",
                      "memberName": "witnessCollateral",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 37811,
                      "src": "19036:21:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint64",
                        "typeString": "uint64"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">",
                    "rightExpression": {
                      "hexValue": "30",
                      "id": 36122,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "19060:1:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "19036:25:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 36129,
                  "nodeType": "IfStatement",
                  "src": "19032:121:114",
                  "trueBody": {
                    "id": 36128,
                    "nodeType": "Block",
                    "src": "19063:90:114",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "hexValue": "5769744f7261636c655261646f6e456e636f64696e674c69623a20696e76616c696420534c413a206e6f20636f6c6c61746572616c",
                              "id": 36125,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "string",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "19085:55:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_stringliteral_285f73ea2ef8e7a5d3d55eae8c4057b055c55ddec0573447c8accd8035be360f",
                                "typeString": "literal_string \"WitOracleRadonEncodingLib: invalid SLA: no collateral\""
                              },
                              "value": "WitOracleRadonEncodingLib: invalid SLA: no collateral"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_stringliteral_285f73ea2ef8e7a5d3d55eae8c4057b055c55ddec0573447c8accd8035be360f",
                                "typeString": "literal_string \"WitOracleRadonEncodingLib: invalid SLA: no collateral\""
                              }
                            ],
                            "id": 36124,
                            "name": "revert",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [
                              4294967277,
                              4294967277
                            ],
                            "referencedDeclaration": 4294967277,
                            "src": "19078:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
                              "typeString": "function (string memory) pure"
                            }
                          },
                          "id": 36126,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "19078:63:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 36127,
                        "nodeType": "ExpressionStatement",
                        "src": "19078:63:114"
                      }
                    ]
                  }
                },
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    },
                    "id": 36136,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "commonType": {
                        "typeIdentifier": "t_uint64",
                        "typeString": "uint64"
                      },
                      "id": 36134,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "expression": {
                          "id": 36130,
                          "name": "sla",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 36072,
                          "src": "19167:3:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonSLAv1_$37814_memory_ptr",
                            "typeString": "struct Witnet.RadonSLAv1 memory"
                          }
                        },
                        "id": 36131,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "19171:17:114",
                        "memberName": "witnessCollateral",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37811,
                        "src": "19167:21:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "/",
                      "rightExpression": {
                        "expression": {
                          "id": 36132,
                          "name": "sla",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 36072,
                          "src": "19191:3:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_RadonSLAv1_$37814_memory_ptr",
                            "typeString": "struct Witnet.RadonSLAv1 memory"
                          }
                        },
                        "id": 36133,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "19195:13:114",
                        "memberName": "witnessReward",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 37809,
                        "src": "19191:17:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint64",
                          "typeString": "uint64"
                        }
                      },
                      "src": "19167:41:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint64",
                        "typeString": "uint64"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">",
                    "rightExpression": {
                      "hexValue": "313237",
                      "id": 36135,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "19211:3:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_127_by_1",
                        "typeString": "int_const 127"
                      },
                      "value": "127"
                    },
                    "src": "19167:47:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 36142,
                  "nodeType": "IfStatement",
                  "src": "19163:169:114",
                  "trueBody": {
                    "id": 36141,
                    "nodeType": "Block",
                    "src": "19216:116:114",
                    "statements": [
                      {
                        "expression": {
                          "arguments": [
                            {
                              "hexValue": "5769744f7261636c655261646f6e456e636f64696e674c69623a20696e76616c696420534c413a20636f6c6c61746572616c2f72657761726420726174696f20746f6f206869676820283e31323729",
                              "id": 36138,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "string",
                              "lValueRequested": false,
                              "nodeType": "Literal",
                              "src": "19238:81:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_stringliteral_189c7783cae88dbb1922dd90187c54d41b5d3f8f4e78ec8279bd6292363dc2c8",
                                "typeString": "literal_string \"WitOracleRadonEncodingLib: invalid SLA: collateral/reward ratio too high (>127)\""
                              },
                              "value": "WitOracleRadonEncodingLib: invalid SLA: collateral/reward ratio too high (>127)"
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_stringliteral_189c7783cae88dbb1922dd90187c54d41b5d3f8f4e78ec8279bd6292363dc2c8",
                                "typeString": "literal_string \"WitOracleRadonEncodingLib: invalid SLA: collateral/reward ratio too high (>127)\""
                              }
                            ],
                            "id": 36137,
                            "name": "revert",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [
                              4294967277,
                              4294967277
                            ],
                            "referencedDeclaration": 4294967277,
                            "src": "19231:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$",
                              "typeString": "function (string memory) pure"
                            }
                          },
                          "id": 36139,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "19231:89:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 36140,
                        "nodeType": "ExpressionStatement",
                        "src": "19231:89:114"
                      }
                    ]
                  }
                }
              ]
            },
            "functionSelector": "72d22a86",
            "id": 36144,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "validate",
            "nameLocation": "18336:8:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 36073,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 36072,
                  "mutability": "mutable",
                  "name": "sla",
                  "nameLocation": "18370:3:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 36144,
                  "src": "18345:28:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_RadonSLAv1_$37814_memory_ptr",
                    "typeString": "struct Witnet.RadonSLAv1"
                  },
                  "typeName": {
                    "id": 36071,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 36070,
                      "name": "Witnet.RadonSLAv1",
                      "nameLocations": [
                        "18345:6:114",
                        "18352:10:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37814,
                      "src": "18345:17:114"
                    },
                    "referencedDeclaration": 37814,
                    "src": "18345:17:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_RadonSLAv1_$37814_storage_ptr",
                      "typeString": "struct Witnet.RadonSLAv1"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "18344:30:114"
            },
            "returnParameters": {
              "id": 36074,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "18401:0:114"
            },
            "scope": 36466,
            "src": "18327:1012:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 36160,
              "nodeType": "Block",
              "src": "19476:132:114",
              "statements": [
                {
                  "expression": {
                    "arguments": [
                      {
                        "arguments": [
                          {
                            "id": 36155,
                            "name": "script",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 36146,
                            "src": "19562:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes memory"
                            }
                          ],
                          "expression": {
                            "id": 36153,
                            "name": "WitnetCBOR",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 44174,
                            "src": "19541:10:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_type$_t_contract$_WitnetCBOR_$44174_$",
                              "typeString": "type(library WitnetCBOR)"
                            }
                          },
                          "id": 36154,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "19552:9:114",
                          "memberName": "fromBytes",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 42799,
                          "src": "19541:20:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_struct$_CBOR_$42658_memory_ptr_$",
                            "typeString": "function (bytes memory) pure returns (struct WitnetCBOR.CBOR memory)"
                          }
                        },
                        "id": 36156,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "19541:28:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                          "typeString": "struct WitnetCBOR.CBOR memory"
                        }
                      },
                      {
                        "hexValue": "66616c7365",
                        "id": 36157,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "bool",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "19584:5:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        },
                        "value": "false"
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                          "typeString": "struct WitnetCBOR.CBOR memory"
                        },
                        {
                          "typeIdentifier": "t_bool",
                          "typeString": "bool"
                        }
                      ],
                      "id": 36152,
                      "name": "_verifyRadonScriptResultDataType",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 36465,
                      "src": "19494:32:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_struct$_CBOR_$42658_memory_ptr_$_t_bool_$returns$_t_enum$_RadonDataTypes_$37720_$",
                        "typeString": "function (struct WitnetCBOR.CBOR memory,bool) pure returns (enum Witnet.RadonDataTypes)"
                      }
                    },
                    "id": 36158,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "19494:106:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                      "typeString": "enum Witnet.RadonDataTypes"
                    }
                  },
                  "functionReturnParameters": 36151,
                  "id": 36159,
                  "nodeType": "Return",
                  "src": "19487:113:114"
                }
              ]
            },
            "functionSelector": "f3106f78",
            "id": 36161,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "verifyRadonScriptResultDataType",
            "nameLocation": "19356:31:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 36147,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 36146,
                  "mutability": "mutable",
                  "name": "script",
                  "nameLocation": "19401:6:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 36161,
                  "src": "19388:19:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 36145,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "19388:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "19387:21:114"
            },
            "returnParameters": {
              "id": 36151,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 36150,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 36161,
                  "src": "19448:21:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                    "typeString": "enum Witnet.RadonDataTypes"
                  },
                  "typeName": {
                    "id": 36149,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 36148,
                      "name": "Witnet.RadonDataTypes",
                      "nameLocations": [
                        "19448:6:114",
                        "19455:14:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37720,
                      "src": "19448:21:114"
                    },
                    "referencedDeclaration": 37720,
                    "src": "19448:21:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                      "typeString": "enum Witnet.RadonDataTypes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "19447:23:114"
            },
            "scope": 36466,
            "src": "19347:261:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "public"
          },
          {
            "body": {
              "id": 36248,
              "nodeType": "Block",
              "src": "20045:587:114",
              "statements": [
                {
                  "assignments": [
                    36173
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 36173,
                      "mutability": "mutable",
                      "name": "_rewind",
                      "nameLocation": "20061:7:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 36248,
                      "src": "20056:12:114",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 36172,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "20056:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 36176,
                  "initialValue": {
                    "expression": {
                      "id": 36174,
                      "name": "self",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 36165,
                      "src": "20071:4:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                        "typeString": "struct WitnetCBOR.CBOR memory"
                      }
                    },
                    "id": 36175,
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberLocation": "20076:3:114",
                    "memberName": "len",
                    "nodeType": "MemberAccess",
                    "referencedDeclaration": 42655,
                    "src": "20071:8:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "20056:23:114"
                },
                {
                  "assignments": [
                    36178
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 36178,
                      "mutability": "mutable",
                      "name": "_start",
                      "nameLocation": "20095:6:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 36248,
                      "src": "20090:11:114",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 36177,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "20090:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 36182,
                  "initialValue": {
                    "expression": {
                      "expression": {
                        "id": 36179,
                        "name": "self",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 36165,
                        "src": "20104:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                          "typeString": "struct WitnetCBOR.CBOR memory"
                        }
                      },
                      "id": 36180,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "20109:6:114",
                      "memberName": "buffer",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 42647,
                      "src": "20104:11:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_Buffer_$40764_memory_ptr",
                        "typeString": "struct WitnetBuffer.Buffer memory"
                      }
                    },
                    "id": 36181,
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberLocation": "20116:6:114",
                    "memberName": "cursor",
                    "nodeType": "MemberAccess",
                    "referencedDeclaration": 40763,
                    "src": "20104:18:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "20090:32:114"
                },
                {
                  "assignments": [
                    36184
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 36184,
                      "mutability": "mutable",
                      "name": "_peeks",
                      "nameLocation": "20146:6:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 36248,
                      "src": "20133:19:114",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes"
                      },
                      "typeName": {
                        "id": 36183,
                        "name": "bytes",
                        "nodeType": "ElementaryTypeName",
                        "src": "20133:5:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_storage_ptr",
                          "typeString": "bytes"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 36191,
                  "initialValue": {
                    "arguments": [
                      {
                        "arguments": [],
                        "expression": {
                          "argumentTypes": [],
                          "expression": {
                            "id": 36187,
                            "name": "self",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 36165,
                            "src": "20161:4:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                              "typeString": "struct WitnetCBOR.CBOR memory"
                            }
                          },
                          "id": 36188,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "20166:10:114",
                          "memberName": "readString",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 43951,
                          "src": "20161:15:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_struct$_CBOR_$42658_memory_ptr_$returns$_t_string_memory_ptr_$attached_to$_t_struct$_CBOR_$42658_memory_ptr_$",
                            "typeString": "function (struct WitnetCBOR.CBOR memory) pure returns (string memory)"
                          }
                        },
                        "id": 36189,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "20161:17:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_string_memory_ptr",
                          "typeString": "string memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_string_memory_ptr",
                          "typeString": "string memory"
                        }
                      ],
                      "id": 36186,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "nodeType": "ElementaryTypeNameExpression",
                      "src": "20155:5:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                        "typeString": "type(bytes storage pointer)"
                      },
                      "typeName": {
                        "id": 36185,
                        "name": "bytes",
                        "nodeType": "ElementaryTypeName",
                        "src": "20155:5:114",
                        "typeDescriptions": {}
                      }
                    },
                    "id": 36190,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "typeConversion",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "20155:24:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "20133:46:114"
                },
                {
                  "assignments": [
                    36193,
                    36195
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 36193,
                      "mutability": "mutable",
                      "name": "_pokes",
                      "nameLocation": "20204:6:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 36248,
                      "src": "20191:19:114",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes"
                      },
                      "typeName": {
                        "id": 36192,
                        "name": "bytes",
                        "nodeType": "ElementaryTypeName",
                        "src": "20191:5:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_storage_ptr",
                          "typeString": "bytes"
                        }
                      },
                      "visibility": "internal"
                    },
                    {
                      "constant": false,
                      "id": 36195,
                      "mutability": "mutable",
                      "name": "_replacements",
                      "nameLocation": "20217:13:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 36248,
                      "src": "20212:18:114",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 36194,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "20212:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 36202,
                  "initialValue": {
                    "arguments": [
                      {
                        "id": 36198,
                        "name": "_peeks",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 36184,
                        "src": "20255:6:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "id": 36199,
                        "name": "argIndex",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 36167,
                        "src": "20263:8:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint8",
                          "typeString": "uint8"
                        }
                      },
                      {
                        "id": 36200,
                        "name": "argValue",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 36169,
                        "src": "20273:8:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_string_memory_ptr",
                          "typeString": "string memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_uint8",
                          "typeString": "uint8"
                        },
                        {
                          "typeIdentifier": "t_string_memory_ptr",
                          "typeString": "string memory"
                        }
                      ],
                      "expression": {
                        "id": 36196,
                        "name": "WitnetBuffer",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 42631,
                        "src": "20234:12:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_contract$_WitnetBuffer_$42631_$",
                          "typeString": "type(library WitnetBuffer)"
                        }
                      },
                      "id": 36197,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "20247:7:114",
                      "memberName": "replace",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 42473,
                      "src": "20234:20:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint8_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$_t_uint256_$",
                        "typeString": "function (bytes memory,uint8,string memory) pure returns (bytes memory,uint256)"
                      }
                    },
                    "id": 36201,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "20234:48:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$_t_bytes_memory_ptr_$_t_uint256_$",
                      "typeString": "tuple(bytes memory,uint256)"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "20190:92:114"
                },
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 36205,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "id": 36203,
                      "name": "_replacements",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 36195,
                      "src": "20297:13:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">",
                    "rightExpression": {
                      "hexValue": "30",
                      "id": 36204,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "20313:1:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "20297:17:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 36247,
                  "nodeType": "IfStatement",
                  "src": "20293:332:114",
                  "trueBody": {
                    "id": 36246,
                    "nodeType": "Block",
                    "src": "20316:309:114",
                    "statements": [
                      {
                        "assignments": [
                          36207
                        ],
                        "declarations": [
                          {
                            "constant": false,
                            "id": 36207,
                            "mutability": "mutable",
                            "name": "_encodedPokes",
                            "nameLocation": "20344:13:114",
                            "nodeType": "VariableDeclaration",
                            "scope": 36246,
                            "src": "20331:26:114",
                            "stateVariable": false,
                            "storageLocation": "memory",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes"
                            },
                            "typeName": {
                              "id": 36206,
                              "name": "bytes",
                              "nodeType": "ElementaryTypeName",
                              "src": "20331:5:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_storage_ptr",
                                "typeString": "bytes"
                              }
                            },
                            "visibility": "internal"
                          }
                        ],
                        "id": 36214,
                        "initialValue": {
                          "arguments": [
                            {
                              "arguments": [
                                {
                                  "id": 36211,
                                  "name": "_pokes",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 36193,
                                  "src": "20374:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                ],
                                "id": 36210,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "20367:6:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_string_storage_ptr_$",
                                  "typeString": "type(string storage pointer)"
                                },
                                "typeName": {
                                  "id": 36209,
                                  "name": "string",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "20367:6:114",
                                  "typeDescriptions": {}
                                }
                              },
                              "id": 36212,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "20367:14:114",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_string_memory_ptr",
                                "typeString": "string memory"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_string_memory_ptr",
                                "typeString": "string memory"
                              }
                            ],
                            "id": 36208,
                            "name": "encode",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [
                              34613,
                              34628,
                              34646,
                              34740,
                              35013,
                              35103,
                              35199,
                              35246,
                              35315,
                              35335,
                              35403
                            ],
                            "referencedDeclaration": 34646,
                            "src": "20360:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                              "typeString": "function (string memory) pure returns (bytes memory)"
                            }
                          },
                          "id": 36213,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "20360:22:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        "nodeType": "VariableDeclarationStatement",
                        "src": "20331:51:114"
                      },
                      {
                        "expression": {
                          "id": 36223,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "expression": {
                              "expression": {
                                "id": 36215,
                                "name": "self",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 36165,
                                "src": "20397:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                  "typeString": "struct WitnetCBOR.CBOR memory"
                                }
                              },
                              "id": 36218,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "20402:6:114",
                              "memberName": "buffer",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 42647,
                              "src": "20397:11:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Buffer_$40764_memory_ptr",
                                "typeString": "struct WitnetBuffer.Buffer memory"
                              }
                            },
                            "id": 36219,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberLocation": "20409:6:114",
                            "memberName": "cursor",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 40763,
                            "src": "20397:18:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 36222,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "id": 36220,
                              "name": "_start",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 36178,
                              "src": "20418:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "-",
                            "rightExpression": {
                              "id": 36221,
                              "name": "_rewind",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 36173,
                              "src": "20427:7:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "src": "20418:16:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "20397:37:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 36224,
                        "nodeType": "ExpressionStatement",
                        "src": "20397:37:114"
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "id": 36233,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "expression": {
                                  "id": 36230,
                                  "name": "_peeks",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 36184,
                                  "src": "20486:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "id": 36231,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "20493:6:114",
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "src": "20486:13:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "+",
                              "rightExpression": {
                                "id": 36232,
                                "name": "_rewind",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 36173,
                                "src": "20502:7:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "src": "20486:23:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            {
                              "id": 36234,
                              "name": "_encodedPokes",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 36207,
                              "src": "20528:13:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            ],
                            "expression": {
                              "expression": {
                                "id": 36225,
                                "name": "self",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 36165,
                                "src": "20449:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                  "typeString": "struct WitnetCBOR.CBOR memory"
                                }
                              },
                              "id": 36228,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "20454:6:114",
                              "memberName": "buffer",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 42647,
                              "src": "20449:11:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Buffer_$40764_memory_ptr",
                                "typeString": "struct WitnetBuffer.Buffer memory"
                              }
                            },
                            "id": 36229,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "20461:6:114",
                            "memberName": "mutate",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 40926,
                            "src": "20449:18:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_pure$_t_struct$_Buffer_$40764_memory_ptr_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$attached_to$_t_struct$_Buffer_$40764_memory_ptr_$",
                              "typeString": "function (struct WitnetBuffer.Buffer memory,uint256,bytes memory) pure"
                            }
                          },
                          "id": 36235,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "20449:107:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 36236,
                        "nodeType": "ExpressionStatement",
                        "src": "20449:107:114"
                      },
                      {
                        "expression": {
                          "id": 36244,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "expression": {
                              "expression": {
                                "id": 36237,
                                "name": "self",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 36165,
                                "src": "20571:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                  "typeString": "struct WitnetCBOR.CBOR memory"
                                }
                              },
                              "id": 36240,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "20576:6:114",
                              "memberName": "buffer",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 42647,
                              "src": "20571:11:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Buffer_$40764_memory_ptr",
                                "typeString": "struct WitnetBuffer.Buffer memory"
                              }
                            },
                            "id": 36241,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberLocation": "20583:6:114",
                            "memberName": "cursor",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 40763,
                            "src": "20571:18:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "+=",
                          "rightHandSide": {
                            "expression": {
                              "id": 36242,
                              "name": "_encodedPokes",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 36207,
                              "src": "20593:13:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            },
                            "id": 36243,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "20607:6:114",
                            "memberName": "length",
                            "nodeType": "MemberAccess",
                            "src": "20593:20:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "20571:42:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 36245,
                        "nodeType": "ExpressionStatement",
                        "src": "20571:42:114"
                      }
                    ]
                  }
                }
              ]
            },
            "documentation": {
              "id": 36162,
              "nodeType": "StructuredDocumentation",
              "src": "19618:254:114",
              "text": "===============================================================================================================\n --- WitOracleRadonEncodingLib private methods ---------------------------------------------------------------------------------"
            },
            "id": 36249,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "_replaceCborWildcard",
            "nameLocation": "19887:20:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 36170,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 36165,
                  "mutability": "mutable",
                  "name": "self",
                  "nameLocation": "19945:4:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 36249,
                  "src": "19922:27:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                    "typeString": "struct WitnetCBOR.CBOR"
                  },
                  "typeName": {
                    "id": 36164,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 36163,
                      "name": "WitnetCBOR.CBOR",
                      "nameLocations": [
                        "19922:10:114",
                        "19933:4:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 42658,
                      "src": "19922:15:114"
                    },
                    "referencedDeclaration": 42658,
                    "src": "19922:15:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_CBOR_$42658_storage_ptr",
                      "typeString": "struct WitnetCBOR.CBOR"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 36167,
                  "mutability": "mutable",
                  "name": "argIndex",
                  "nameLocation": "19970:8:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 36249,
                  "src": "19964:14:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 36166,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "19964:5:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 36169,
                  "mutability": "mutable",
                  "name": "argValue",
                  "nameLocation": "20007:8:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 36249,
                  "src": "19993:22:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 36168,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "19993:6:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "19907:119:114"
            },
            "returnParameters": {
              "id": 36171,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "20045:0:114"
            },
            "scope": 36466,
            "src": "19878:754:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "private"
          },
          {
            "body": {
              "id": 36333,
              "nodeType": "Block",
              "src": "20777:573:114",
              "statements": [
                {
                  "assignments": [
                    36259
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 36259,
                      "mutability": "mutable",
                      "name": "_rewind",
                      "nameLocation": "20793:7:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 36333,
                      "src": "20788:12:114",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 36258,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "20788:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 36262,
                  "initialValue": {
                    "expression": {
                      "id": 36260,
                      "name": "self",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 36252,
                      "src": "20803:4:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                        "typeString": "struct WitnetCBOR.CBOR memory"
                      }
                    },
                    "id": 36261,
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberLocation": "20808:3:114",
                    "memberName": "len",
                    "nodeType": "MemberAccess",
                    "referencedDeclaration": 42655,
                    "src": "20803:8:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "20788:23:114"
                },
                {
                  "assignments": [
                    36264
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 36264,
                      "mutability": "mutable",
                      "name": "_start",
                      "nameLocation": "20827:6:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 36333,
                      "src": "20822:11:114",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 36263,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "20822:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 36268,
                  "initialValue": {
                    "expression": {
                      "expression": {
                        "id": 36265,
                        "name": "self",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 36252,
                        "src": "20836:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                          "typeString": "struct WitnetCBOR.CBOR memory"
                        }
                      },
                      "id": 36266,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "20841:6:114",
                      "memberName": "buffer",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 42647,
                      "src": "20836:11:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_Buffer_$40764_memory_ptr",
                        "typeString": "struct WitnetBuffer.Buffer memory"
                      }
                    },
                    "id": 36267,
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "memberLocation": "20848:6:114",
                    "memberName": "cursor",
                    "nodeType": "MemberAccess",
                    "referencedDeclaration": 40763,
                    "src": "20836:18:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "20822:32:114"
                },
                {
                  "assignments": [
                    36270
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 36270,
                      "mutability": "mutable",
                      "name": "_peeks",
                      "nameLocation": "20878:6:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 36333,
                      "src": "20865:19:114",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes"
                      },
                      "typeName": {
                        "id": 36269,
                        "name": "bytes",
                        "nodeType": "ElementaryTypeName",
                        "src": "20865:5:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_storage_ptr",
                          "typeString": "bytes"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 36277,
                  "initialValue": {
                    "arguments": [
                      {
                        "arguments": [],
                        "expression": {
                          "argumentTypes": [],
                          "expression": {
                            "id": 36273,
                            "name": "self",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 36252,
                            "src": "20893:4:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                              "typeString": "struct WitnetCBOR.CBOR memory"
                            }
                          },
                          "id": 36274,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberLocation": "20898:10:114",
                          "memberName": "readString",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 43951,
                          "src": "20893:15:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_function_internal_pure$_t_struct$_CBOR_$42658_memory_ptr_$returns$_t_string_memory_ptr_$attached_to$_t_struct$_CBOR_$42658_memory_ptr_$",
                            "typeString": "function (struct WitnetCBOR.CBOR memory) pure returns (string memory)"
                          }
                        },
                        "id": 36275,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "functionCall",
                        "lValueRequested": false,
                        "nameLocations": [],
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "20893:17:114",
                        "tryCall": false,
                        "typeDescriptions": {
                          "typeIdentifier": "t_string_memory_ptr",
                          "typeString": "string memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_string_memory_ptr",
                          "typeString": "string memory"
                        }
                      ],
                      "id": 36272,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "nodeType": "ElementaryTypeNameExpression",
                      "src": "20887:5:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
                        "typeString": "type(bytes storage pointer)"
                      },
                      "typeName": {
                        "id": 36271,
                        "name": "bytes",
                        "nodeType": "ElementaryTypeName",
                        "src": "20887:5:114",
                        "typeDescriptions": {}
                      }
                    },
                    "id": 36276,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "typeConversion",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "20887:24:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_memory_ptr",
                      "typeString": "bytes memory"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "20865:46:114"
                },
                {
                  "assignments": [
                    36279,
                    36281
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 36279,
                      "mutability": "mutable",
                      "name": "_pokes",
                      "nameLocation": "20936:6:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 36333,
                      "src": "20923:19:114",
                      "stateVariable": false,
                      "storageLocation": "memory",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_memory_ptr",
                        "typeString": "bytes"
                      },
                      "typeName": {
                        "id": 36278,
                        "name": "bytes",
                        "nodeType": "ElementaryTypeName",
                        "src": "20923:5:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_storage_ptr",
                          "typeString": "bytes"
                        }
                      },
                      "visibility": "internal"
                    },
                    {
                      "constant": false,
                      "id": 36281,
                      "mutability": "mutable",
                      "name": "_replacements",
                      "nameLocation": "20949:13:114",
                      "nodeType": "VariableDeclaration",
                      "scope": 36333,
                      "src": "20944:18:114",
                      "stateVariable": false,
                      "storageLocation": "default",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "typeName": {
                        "id": 36280,
                        "name": "uint",
                        "nodeType": "ElementaryTypeName",
                        "src": "20944:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "visibility": "internal"
                    }
                  ],
                  "id": 36287,
                  "initialValue": {
                    "arguments": [
                      {
                        "id": 36284,
                        "name": "_peeks",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 36270,
                        "src": "20987:6:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        }
                      },
                      {
                        "id": 36285,
                        "name": "args",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 36255,
                        "src": "20995:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                          "typeString": "string memory[] memory"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes_memory_ptr",
                          "typeString": "bytes memory"
                        },
                        {
                          "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                          "typeString": "string memory[] memory"
                        }
                      ],
                      "expression": {
                        "id": 36282,
                        "name": "WitnetBuffer",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 42631,
                        "src": "20966:12:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_contract$_WitnetBuffer_$42631_$",
                          "typeString": "type(library WitnetBuffer)"
                        }
                      },
                      "id": 36283,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "20979:7:114",
                      "memberName": "replace",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 42246,
                      "src": "20966:20:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$_t_uint256_$",
                        "typeString": "function (bytes memory,string memory[] memory) pure returns (bytes memory,uint256)"
                      }
                    },
                    "id": 36286,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "nameLocations": [],
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "20966:34:114",
                    "tryCall": false,
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$_t_bytes_memory_ptr_$_t_uint256_$",
                      "typeString": "tuple(bytes memory,uint256)"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "20922:78:114"
                },
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 36290,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "id": 36288,
                      "name": "_replacements",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 36281,
                      "src": "21015:13:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": ">",
                    "rightExpression": {
                      "hexValue": "30",
                      "id": 36289,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "21031:1:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "src": "21015:17:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 36332,
                  "nodeType": "IfStatement",
                  "src": "21011:332:114",
                  "trueBody": {
                    "id": 36331,
                    "nodeType": "Block",
                    "src": "21034:309:114",
                    "statements": [
                      {
                        "assignments": [
                          36292
                        ],
                        "declarations": [
                          {
                            "constant": false,
                            "id": 36292,
                            "mutability": "mutable",
                            "name": "_encodedPokes",
                            "nameLocation": "21062:13:114",
                            "nodeType": "VariableDeclaration",
                            "scope": 36331,
                            "src": "21049:26:114",
                            "stateVariable": false,
                            "storageLocation": "memory",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes_memory_ptr",
                              "typeString": "bytes"
                            },
                            "typeName": {
                              "id": 36291,
                              "name": "bytes",
                              "nodeType": "ElementaryTypeName",
                              "src": "21049:5:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_storage_ptr",
                                "typeString": "bytes"
                              }
                            },
                            "visibility": "internal"
                          }
                        ],
                        "id": 36299,
                        "initialValue": {
                          "arguments": [
                            {
                              "arguments": [
                                {
                                  "id": 36296,
                                  "name": "_pokes",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 36279,
                                  "src": "21092:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                ],
                                "id": 36295,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "21085:6:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_string_storage_ptr_$",
                                  "typeString": "type(string storage pointer)"
                                },
                                "typeName": {
                                  "id": 36294,
                                  "name": "string",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "21085:6:114",
                                  "typeDescriptions": {}
                                }
                              },
                              "id": 36297,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "21085:14:114",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_string_memory_ptr",
                                "typeString": "string memory"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_string_memory_ptr",
                                "typeString": "string memory"
                              }
                            ],
                            "id": 36293,
                            "name": "encode",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [
                              34613,
                              34628,
                              34646,
                              34740,
                              35013,
                              35103,
                              35199,
                              35246,
                              35315,
                              35335,
                              35403
                            ],
                            "referencedDeclaration": 34646,
                            "src": "21078:6:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                              "typeString": "function (string memory) pure returns (bytes memory)"
                            }
                          },
                          "id": 36298,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "21078:22:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes_memory_ptr",
                            "typeString": "bytes memory"
                          }
                        },
                        "nodeType": "VariableDeclarationStatement",
                        "src": "21049:51:114"
                      },
                      {
                        "expression": {
                          "id": 36308,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "expression": {
                              "expression": {
                                "id": 36300,
                                "name": "self",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 36252,
                                "src": "21115:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                  "typeString": "struct WitnetCBOR.CBOR memory"
                                }
                              },
                              "id": 36303,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "21120:6:114",
                              "memberName": "buffer",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 42647,
                              "src": "21115:11:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Buffer_$40764_memory_ptr",
                                "typeString": "struct WitnetBuffer.Buffer memory"
                              }
                            },
                            "id": 36304,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberLocation": "21127:6:114",
                            "memberName": "cursor",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 40763,
                            "src": "21115:18:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "commonType": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            },
                            "id": 36307,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "id": 36305,
                              "name": "_start",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 36264,
                              "src": "21136:6:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": "-",
                            "rightExpression": {
                              "id": 36306,
                              "name": "_rewind",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 36259,
                              "src": "21145:7:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "src": "21136:16:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "21115:37:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 36309,
                        "nodeType": "ExpressionStatement",
                        "src": "21115:37:114"
                      },
                      {
                        "expression": {
                          "arguments": [
                            {
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "id": 36318,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "leftExpression": {
                                "expression": {
                                  "id": 36315,
                                  "name": "_peeks",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 36270,
                                  "src": "21204:6:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes_memory_ptr",
                                    "typeString": "bytes memory"
                                  }
                                },
                                "id": 36316,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "21211:6:114",
                                "memberName": "length",
                                "nodeType": "MemberAccess",
                                "src": "21204:13:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "nodeType": "BinaryOperation",
                              "operator": "+",
                              "rightExpression": {
                                "id": 36317,
                                "name": "_rewind",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 36259,
                                "src": "21220:7:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "src": "21204:23:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            {
                              "id": 36319,
                              "name": "_encodedPokes",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 36292,
                              "src": "21246:13:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            ],
                            "expression": {
                              "expression": {
                                "id": 36310,
                                "name": "self",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 36252,
                                "src": "21167:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                  "typeString": "struct WitnetCBOR.CBOR memory"
                                }
                              },
                              "id": 36313,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "21172:6:114",
                              "memberName": "buffer",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 42647,
                              "src": "21167:11:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Buffer_$40764_memory_ptr",
                                "typeString": "struct WitnetBuffer.Buffer memory"
                              }
                            },
                            "id": 36314,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "21179:6:114",
                            "memberName": "mutate",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 40926,
                            "src": "21167:18:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_pure$_t_struct$_Buffer_$40764_memory_ptr_$_t_uint256_$_t_bytes_memory_ptr_$returns$__$attached_to$_t_struct$_Buffer_$40764_memory_ptr_$",
                              "typeString": "function (struct WitnetBuffer.Buffer memory,uint256,bytes memory) pure"
                            }
                          },
                          "id": 36320,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "21167:107:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_tuple$__$",
                            "typeString": "tuple()"
                          }
                        },
                        "id": 36321,
                        "nodeType": "ExpressionStatement",
                        "src": "21167:107:114"
                      },
                      {
                        "expression": {
                          "id": 36329,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "expression": {
                              "expression": {
                                "id": 36322,
                                "name": "self",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 36252,
                                "src": "21289:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                  "typeString": "struct WitnetCBOR.CBOR memory"
                                }
                              },
                              "id": 36325,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "21294:6:114",
                              "memberName": "buffer",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 42647,
                              "src": "21289:11:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Buffer_$40764_memory_ptr",
                                "typeString": "struct WitnetBuffer.Buffer memory"
                              }
                            },
                            "id": 36326,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberLocation": "21301:6:114",
                            "memberName": "cursor",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 40763,
                            "src": "21289:18:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "+=",
                          "rightHandSide": {
                            "expression": {
                              "id": 36327,
                              "name": "_encodedPokes",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 36292,
                              "src": "21311:13:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes_memory_ptr",
                                "typeString": "bytes memory"
                              }
                            },
                            "id": 36328,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "21325:6:114",
                            "memberName": "length",
                            "nodeType": "MemberAccess",
                            "src": "21311:20:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "21289:42:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 36330,
                        "nodeType": "ExpressionStatement",
                        "src": "21289:42:114"
                      }
                    ]
                  }
                }
              ]
            },
            "id": 36334,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "_replaceCborWildcards",
            "nameLocation": "20649:21:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 36256,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 36252,
                  "mutability": "mutable",
                  "name": "self",
                  "nameLocation": "20708:4:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 36334,
                  "src": "20685:27:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                    "typeString": "struct WitnetCBOR.CBOR"
                  },
                  "typeName": {
                    "id": 36251,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 36250,
                      "name": "WitnetCBOR.CBOR",
                      "nameLocations": [
                        "20685:10:114",
                        "20696:4:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 42658,
                      "src": "20685:15:114"
                    },
                    "referencedDeclaration": 42658,
                    "src": "20685:15:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_CBOR_$42658_storage_ptr",
                      "typeString": "struct WitnetCBOR.CBOR"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 36255,
                  "mutability": "mutable",
                  "name": "args",
                  "nameLocation": "20743:4:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 36334,
                  "src": "20727:20:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                    "typeString": "string[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 36253,
                      "name": "string",
                      "nodeType": "ElementaryTypeName",
                      "src": "20727:6:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_storage_ptr",
                        "typeString": "string"
                      }
                    },
                    "id": 36254,
                    "nodeType": "ArrayTypeName",
                    "src": "20727:8:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                      "typeString": "string[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "20670:88:114"
            },
            "returnParameters": {
              "id": 36257,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "20777:0:114"
            },
            "scope": 36466,
            "src": "20640:710:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "private"
          },
          {
            "body": {
              "id": 36464,
              "nodeType": "Block",
              "src": "21512:1314:114",
              "statements": [
                {
                  "condition": {
                    "commonType": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    },
                    "id": 36349,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "expression": {
                        "id": 36345,
                        "name": "self",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 36337,
                        "src": "21527:4:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                          "typeString": "struct WitnetCBOR.CBOR memory"
                        }
                      },
                      "id": 36346,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberLocation": "21532:9:114",
                      "memberName": "majorType",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 42651,
                      "src": "21527:14:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint8",
                        "typeString": "uint8"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "==",
                    "rightExpression": {
                      "expression": {
                        "id": 36347,
                        "name": "WitnetCBOR",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 44174,
                        "src": "21545:10:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_type$_t_contract$_WitnetCBOR_$44174_$",
                          "typeString": "type(library WitnetCBOR)"
                        }
                      },
                      "id": 36348,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "lValueRequested": false,
                      "memberLocation": "21556:16:114",
                      "memberName": "MAJOR_TYPE_ARRAY",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 42673,
                      "src": "21545:27:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint8",
                        "typeString": "uint8"
                      }
                    },
                    "src": "21527:45:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "condition": {
                      "commonType": {
                        "typeIdentifier": "t_uint8",
                        "typeString": "uint8"
                      },
                      "id": 36394,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "expression": {
                          "id": 36390,
                          "name": "self",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 36337,
                          "src": "21993:4:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                            "typeString": "struct WitnetCBOR.CBOR memory"
                          }
                        },
                        "id": 36391,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberLocation": "21998:9:114",
                        "memberName": "majorType",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 42651,
                        "src": "21993:14:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint8",
                          "typeString": "uint8"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "==",
                      "rightExpression": {
                        "expression": {
                          "id": 36392,
                          "name": "WitnetCBOR",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 44174,
                          "src": "22011:10:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_contract$_WitnetCBOR_$44174_$",
                            "typeString": "type(library WitnetCBOR)"
                          }
                        },
                        "id": 36393,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "memberLocation": "22022:14:114",
                        "memberName": "MAJOR_TYPE_INT",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 42661,
                        "src": "22011:25:114",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint8",
                          "typeString": "uint8"
                        }
                      },
                      "src": "21993:43:114",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "falseBody": {
                      "id": 36461,
                      "nodeType": "Block",
                      "src": "22663:156:114",
                      "statements": [
                        {
                          "errorCall": {
                            "arguments": [
                              {
                                "expression": {
                                  "id": 36455,
                                  "name": "WitnetCBOR",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 44174,
                                  "src": "22734:10:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_contract$_WitnetCBOR_$44174_$",
                                    "typeString": "type(library WitnetCBOR)"
                                  }
                                },
                                "id": 36456,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "memberLocation": "22745:14:114",
                                "memberName": "MAJOR_TYPE_INT",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 42661,
                                "src": "22734:25:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              },
                              {
                                "expression": {
                                  "id": 36457,
                                  "name": "self",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 36337,
                                  "src": "22778:4:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                    "typeString": "struct WitnetCBOR.CBOR memory"
                                  }
                                },
                                "id": 36458,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberLocation": "22783:9:114",
                                "memberName": "majorType",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 42651,
                                "src": "22778:14:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                },
                                {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              ],
                              "expression": {
                                "id": 36452,
                                "name": "WitnetCBOR",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 44174,
                                "src": "22685:10:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_WitnetCBOR_$44174_$",
                                  "typeString": "type(library WitnetCBOR)"
                                }
                              },
                              "id": 36454,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "22696:19:114",
                              "memberName": "UnexpectedMajorType",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 42708,
                              "src": "22685:30:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_error_pure$_t_uint256_$_t_uint256_$returns$_t_error_$",
                                "typeString": "function (uint256,uint256) pure returns (error)"
                              }
                            },
                            "id": 36459,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "22685:122:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_error",
                              "typeString": "error"
                            }
                          },
                          "id": 36460,
                          "nodeType": "RevertStatement",
                          "src": "22678:129:114"
                        }
                      ]
                    },
                    "id": 36462,
                    "nodeType": "IfStatement",
                    "src": "21989:830:114",
                    "trueBody": {
                      "id": 36451,
                      "nodeType": "Block",
                      "src": "22038:619:114",
                      "statements": [
                        {
                          "assignments": [
                            36396
                          ],
                          "declarations": [
                            {
                              "constant": false,
                              "id": 36396,
                              "mutability": "mutable",
                              "name": "cursor",
                              "nameLocation": "22070:6:114",
                              "nodeType": "VariableDeclaration",
                              "scope": 36451,
                              "src": "22065:11:114",
                              "stateVariable": false,
                              "storageLocation": "default",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "typeName": {
                                "id": 36395,
                                "name": "uint",
                                "nodeType": "ElementaryTypeName",
                                "src": "22065:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "visibility": "internal"
                            }
                          ],
                          "id": 36400,
                          "initialValue": {
                            "expression": {
                              "expression": {
                                "id": 36397,
                                "name": "self",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 36337,
                                "src": "22079:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                  "typeString": "struct WitnetCBOR.CBOR memory"
                                }
                              },
                              "id": 36398,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "22084:6:114",
                              "memberName": "buffer",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 42647,
                              "src": "22079:11:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Buffer_$40764_memory_ptr",
                                "typeString": "struct WitnetBuffer.Buffer memory"
                              }
                            },
                            "id": 36399,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "22091:6:114",
                            "memberName": "cursor",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 40763,
                            "src": "22079:18:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "VariableDeclarationStatement",
                          "src": "22065:32:114"
                        },
                        {
                          "assignments": [
                            36402
                          ],
                          "declarations": [
                            {
                              "constant": false,
                              "id": 36402,
                              "mutability": "mutable",
                              "name": "opcode",
                              "nameLocation": "22117:6:114",
                              "nodeType": "VariableDeclaration",
                              "scope": 36451,
                              "src": "22112:11:114",
                              "stateVariable": false,
                              "storageLocation": "default",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "typeName": {
                                "id": 36401,
                                "name": "uint",
                                "nodeType": "ElementaryTypeName",
                                "src": "22112:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "visibility": "internal"
                            }
                          ],
                          "id": 36406,
                          "initialValue": {
                            "arguments": [],
                            "expression": {
                              "argumentTypes": [],
                              "expression": {
                                "id": 36403,
                                "name": "self",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 36337,
                                "src": "22126:4:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                  "typeString": "struct WitnetCBOR.CBOR memory"
                                }
                              },
                              "id": 36404,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "22131:8:114",
                              "memberName": "readUint",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 44043,
                              "src": "22126:13:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_function_internal_pure$_t_struct$_CBOR_$42658_memory_ptr_$returns$_t_uint64_$attached_to$_t_struct$_CBOR_$42658_memory_ptr_$",
                                "typeString": "function (struct WitnetCBOR.CBOR memory) pure returns (uint64)"
                              }
                            },
                            "id": 36405,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "functionCall",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "22126:15:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint64",
                              "typeString": "uint64"
                            }
                          },
                          "nodeType": "VariableDeclarationStatement",
                          "src": "22112:29:114"
                        },
                        {
                          "assignments": [
                            36408
                          ],
                          "declarations": [
                            {
                              "constant": false,
                              "id": 36408,
                              "mutability": "mutable",
                              "name": "dataType",
                              "nameLocation": "22162:8:114",
                              "nodeType": "VariableDeclaration",
                              "scope": 36451,
                              "src": "22156:14:114",
                              "stateVariable": false,
                              "storageLocation": "default",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint8",
                                "typeString": "uint8"
                              },
                              "typeName": {
                                "id": 36407,
                                "name": "uint8",
                                "nodeType": "ElementaryTypeName",
                                "src": "22156:5:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              },
                              "visibility": "internal"
                            }
                          ],
                          "id": 36422,
                          "initialValue": {
                            "components": [
                              {
                                "condition": {
                                  "commonType": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  },
                                  "id": 36412,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "leftExpression": {
                                    "id": 36409,
                                    "name": "opcode",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 36402,
                                    "src": "22174:6:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "nodeType": "BinaryOperation",
                                  "operator": ">",
                                  "rightExpression": {
                                    "expression": {
                                      "id": 36410,
                                      "name": "WITNET_RADON_OPCODES_RESULT_TYPES",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 34386,
                                      "src": "22183:33:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes_memory_ptr",
                                        "typeString": "bytes memory"
                                      }
                                    },
                                    "id": 36411,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberLocation": "22217:6:114",
                                    "memberName": "length",
                                    "nodeType": "MemberAccess",
                                    "src": "22183:40:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "src": "22174:49:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "falseExpression": {
                                  "arguments": [
                                    {
                                      "baseExpression": {
                                        "id": 36416,
                                        "name": "WITNET_RADON_OPCODES_RESULT_TYPES",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 34386,
                                        "src": "22273:33:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_bytes_memory_ptr",
                                          "typeString": "bytes memory"
                                        }
                                      },
                                      "id": 36418,
                                      "indexExpression": {
                                        "id": 36417,
                                        "name": "opcode",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 36402,
                                        "src": "22307:6:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "nodeType": "IndexAccess",
                                      "src": "22273:41:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes1",
                                        "typeString": "bytes1"
                                      }
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": [
                                      {
                                        "typeIdentifier": "t_bytes1",
                                        "typeString": "bytes1"
                                      }
                                    ],
                                    "id": 36415,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": true,
                                    "lValueRequested": false,
                                    "nodeType": "ElementaryTypeNameExpression",
                                    "src": "22267:5:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_type$_t_uint8_$",
                                      "typeString": "type(uint8)"
                                    },
                                    "typeName": {
                                      "id": 36414,
                                      "name": "uint8",
                                      "nodeType": "ElementaryTypeName",
                                      "src": "22267:5:114",
                                      "typeDescriptions": {}
                                    }
                                  },
                                  "id": 36419,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "typeConversion",
                                  "lValueRequested": false,
                                  "nameLocations": [],
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "22267:48:114",
                                  "tryCall": false,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint8",
                                    "typeString": "uint8"
                                  }
                                },
                                "id": 36420,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "Conditional",
                                "src": "22174:141:114",
                                "trueExpression": {
                                  "hexValue": "30786666",
                                  "id": 36413,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "kind": "number",
                                  "lValueRequested": false,
                                  "nodeType": "Literal",
                                  "src": "22243:4:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_rational_255_by_1",
                                    "typeString": "int_const 255"
                                  },
                                  "value": "0xff"
                                },
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              }
                            ],
                            "id": 36421,
                            "isConstant": false,
                            "isInlineArray": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "TupleExpression",
                            "src": "22173:157:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint8",
                              "typeString": "uint8"
                            }
                          },
                          "nodeType": "VariableDeclarationStatement",
                          "src": "22156:174:114"
                        },
                        {
                          "condition": {
                            "commonType": {
                              "typeIdentifier": "t_uint8",
                              "typeString": "uint8"
                            },
                            "id": 36432,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "leftExpression": {
                              "id": 36423,
                              "name": "dataType",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 36408,
                              "src": "22349:8:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint8",
                                "typeString": "uint8"
                              }
                            },
                            "nodeType": "BinaryOperation",
                            "operator": ">",
                            "rightExpression": {
                              "arguments": [
                                {
                                  "expression": {
                                    "arguments": [
                                      {
                                        "expression": {
                                          "id": 36427,
                                          "name": "Witnet",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 40741,
                                          "src": "22371:6:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                            "typeString": "type(library Witnet)"
                                          }
                                        },
                                        "id": 36428,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberLocation": "22378:14:114",
                                        "memberName": "RadonDataTypes",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 37720,
                                        "src": "22371:21:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_type$_t_enum$_RadonDataTypes_$37720_$",
                                          "typeString": "type(enum Witnet.RadonDataTypes)"
                                        }
                                      }
                                    ],
                                    "expression": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_type$_t_enum$_RadonDataTypes_$37720_$",
                                          "typeString": "type(enum Witnet.RadonDataTypes)"
                                        }
                                      ],
                                      "id": 36426,
                                      "name": "type",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 4294967269,
                                      "src": "22366:4:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_function_metatype_pure$__$returns$__$",
                                        "typeString": "function () pure"
                                      }
                                    },
                                    "id": 36429,
                                    "isConstant": false,
                                    "isLValue": false,
                                    "isPure": false,
                                    "kind": "functionCall",
                                    "lValueRequested": false,
                                    "nameLocations": [],
                                    "names": [],
                                    "nodeType": "FunctionCall",
                                    "src": "22366:27:114",
                                    "tryCall": false,
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_magic_meta_type_t_enum$_RadonDataTypes_$37720",
                                      "typeString": "type(enum Witnet.RadonDataTypes)"
                                    }
                                  },
                                  "id": 36430,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "memberLocation": "22394:3:114",
                                  "memberName": "max",
                                  "nodeType": "MemberAccess",
                                  "src": "22366:31:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                    "typeString": "enum Witnet.RadonDataTypes"
                                  }
                                }
                              ],
                              "expression": {
                                "argumentTypes": [
                                  {
                                    "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                    "typeString": "enum Witnet.RadonDataTypes"
                                  }
                                ],
                                "id": 36425,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "nodeType": "ElementaryTypeNameExpression",
                                "src": "22360:5:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_uint8_$",
                                  "typeString": "type(uint8)"
                                },
                                "typeName": {
                                  "id": 36424,
                                  "name": "uint8",
                                  "nodeType": "ElementaryTypeName",
                                  "src": "22360:5:114",
                                  "typeDescriptions": {}
                                }
                              },
                              "id": 36431,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "kind": "typeConversion",
                              "lValueRequested": false,
                              "nameLocations": [],
                              "names": [],
                              "nodeType": "FunctionCall",
                              "src": "22360:38:114",
                              "tryCall": false,
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint8",
                                "typeString": "uint8"
                              }
                            },
                            "src": "22349:49:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "id": 36445,
                          "nodeType": "IfStatement",
                          "src": "22345:248:114",
                          "trueBody": {
                            "id": 36444,
                            "nodeType": "Block",
                            "src": "22400:193:114",
                            "statements": [
                              {
                                "errorCall": {
                                  "arguments": [
                                    {
                                      "expression": {
                                        "expression": {
                                          "id": 36434,
                                          "name": "self",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 36337,
                                          "src": "22477:4:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                            "typeString": "struct WitnetCBOR.CBOR memory"
                                          }
                                        },
                                        "id": 36435,
                                        "isConstant": false,
                                        "isLValue": true,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "memberLocation": "22482:6:114",
                                        "memberName": "buffer",
                                        "nodeType": "MemberAccess",
                                        "referencedDeclaration": 42647,
                                        "src": "22477:11:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_struct$_Buffer_$40764_memory_ptr",
                                          "typeString": "struct WitnetBuffer.Buffer memory"
                                        }
                                      },
                                      "id": 36436,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "memberLocation": "22489:4:114",
                                      "memberName": "data",
                                      "nodeType": "MemberAccess",
                                      "referencedDeclaration": 40761,
                                      "src": "22477:16:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes_memory_ptr",
                                        "typeString": "bytes memory"
                                      }
                                    },
                                    {
                                      "id": 36437,
                                      "name": "cursor",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 36396,
                                      "src": "22516:6:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    {
                                      "arguments": [
                                        {
                                          "id": 36440,
                                          "name": "opcode",
                                          "nodeType": "Identifier",
                                          "overloadedDeclarations": [],
                                          "referencedDeclaration": 36402,
                                          "src": "22551:6:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        }
                                      ],
                                      "expression": {
                                        "argumentTypes": [
                                          {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        ],
                                        "id": 36439,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "lValueRequested": false,
                                        "nodeType": "ElementaryTypeNameExpression",
                                        "src": "22545:5:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_type$_t_uint8_$",
                                          "typeString": "type(uint8)"
                                        },
                                        "typeName": {
                                          "id": 36438,
                                          "name": "uint8",
                                          "nodeType": "ElementaryTypeName",
                                          "src": "22545:5:114",
                                          "typeDescriptions": {}
                                        }
                                      },
                                      "id": 36441,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "kind": "typeConversion",
                                      "lValueRequested": false,
                                      "nameLocations": [],
                                      "names": [],
                                      "nodeType": "FunctionCall",
                                      "src": "22545:13:114",
                                      "tryCall": false,
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint8",
                                        "typeString": "uint8"
                                      }
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": [
                                      {
                                        "typeIdentifier": "t_bytes_memory_ptr",
                                        "typeString": "bytes memory"
                                      },
                                      {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      },
                                      {
                                        "typeIdentifier": "t_uint8",
                                        "typeString": "uint8"
                                      }
                                    ],
                                    "id": 36433,
                                    "name": "UnsupportedRadonScriptOpcode",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 34441,
                                    "src": "22426:28:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_function_error_pure$_t_bytes_memory_ptr_$_t_uint256_$_t_uint8_$returns$_t_error_$",
                                      "typeString": "function (bytes memory,uint256,uint8) pure returns (error)"
                                    }
                                  },
                                  "id": 36442,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "functionCall",
                                  "lValueRequested": false,
                                  "nameLocations": [],
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "22426:151:114",
                                  "tryCall": false,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_error",
                                    "typeString": "error"
                                  }
                                },
                                "id": 36443,
                                "nodeType": "RevertStatement",
                                "src": "22419:158:114"
                              }
                            ]
                          }
                        },
                        {
                          "expression": {
                            "arguments": [
                              {
                                "id": 36448,
                                "name": "dataType",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 36408,
                                "src": "22636:8:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              }
                            ],
                            "expression": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                }
                              ],
                              "expression": {
                                "id": 36446,
                                "name": "Witnet",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 40741,
                                "src": "22614:6:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                  "typeString": "type(library Witnet)"
                                }
                              },
                              "id": 36447,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberLocation": "22621:14:114",
                              "memberName": "RadonDataTypes",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 37720,
                              "src": "22614:21:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_type$_t_enum$_RadonDataTypes_$37720_$",
                                "typeString": "type(enum Witnet.RadonDataTypes)"
                              }
                            },
                            "id": 36449,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "kind": "typeConversion",
                            "lValueRequested": false,
                            "nameLocations": [],
                            "names": [],
                            "nodeType": "FunctionCall",
                            "src": "22614:31:114",
                            "tryCall": false,
                            "typeDescriptions": {
                              "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                              "typeString": "enum Witnet.RadonDataTypes"
                            }
                          },
                          "functionReturnParameters": 36344,
                          "id": 36450,
                          "nodeType": "Return",
                          "src": "22607:38:114"
                        }
                      ]
                    }
                  },
                  "id": 36463,
                  "nodeType": "IfStatement",
                  "src": "21523:1296:114",
                  "trueBody": {
                    "id": 36389,
                    "nodeType": "Block",
                    "src": "21574:409:114",
                    "statements": [
                      {
                        "assignments": [
                          36355
                        ],
                        "declarations": [
                          {
                            "constant": false,
                            "id": 36355,
                            "mutability": "mutable",
                            "name": "items",
                            "nameLocation": "21614:5:114",
                            "nodeType": "VariableDeclaration",
                            "scope": 36389,
                            "src": "21589:30:114",
                            "stateVariable": false,
                            "storageLocation": "memory",
                            "typeDescriptions": {
                              "typeIdentifier": "t_array$_t_struct$_CBOR_$42658_memory_ptr_$dyn_memory_ptr",
                              "typeString": "struct WitnetCBOR.CBOR[]"
                            },
                            "typeName": {
                              "baseType": {
                                "id": 36353,
                                "nodeType": "UserDefinedTypeName",
                                "pathNode": {
                                  "id": 36352,
                                  "name": "WitnetCBOR.CBOR",
                                  "nameLocations": [
                                    "21589:10:114",
                                    "21600:4:114"
                                  ],
                                  "nodeType": "IdentifierPath",
                                  "referencedDeclaration": 42658,
                                  "src": "21589:15:114"
                                },
                                "referencedDeclaration": 42658,
                                "src": "21589:15:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_CBOR_$42658_storage_ptr",
                                  "typeString": "struct WitnetCBOR.CBOR"
                                }
                              },
                              "id": 36354,
                              "nodeType": "ArrayTypeName",
                              "src": "21589:17:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_struct$_CBOR_$42658_storage_$dyn_storage_ptr",
                                "typeString": "struct WitnetCBOR.CBOR[]"
                              }
                            },
                            "visibility": "internal"
                          }
                        ],
                        "id": 36359,
                        "initialValue": {
                          "arguments": [],
                          "expression": {
                            "argumentTypes": [],
                            "expression": {
                              "id": 36356,
                              "name": "self",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 36337,
                              "src": "21622:4:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                "typeString": "struct WitnetCBOR.CBOR memory"
                              }
                            },
                            "id": 36357,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "21627:9:114",
                            "memberName": "readArray",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 43240,
                            "src": "21622:14:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_internal_pure$_t_struct$_CBOR_$42658_memory_ptr_$returns$_t_array$_t_struct$_CBOR_$42658_memory_ptr_$dyn_memory_ptr_$attached_to$_t_struct$_CBOR_$42658_memory_ptr_$",
                              "typeString": "function (struct WitnetCBOR.CBOR memory) pure returns (struct WitnetCBOR.CBOR memory[] memory)"
                            }
                          },
                          "id": 36358,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "nameLocations": [],
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "21622:16:114",
                          "tryCall": false,
                          "typeDescriptions": {
                            "typeIdentifier": "t_array$_t_struct$_CBOR_$42658_memory_ptr_$dyn_memory_ptr",
                            "typeString": "struct WitnetCBOR.CBOR memory[] memory"
                          }
                        },
                        "nodeType": "VariableDeclarationStatement",
                        "src": "21589:49:114"
                      },
                      {
                        "condition": {
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "id": 36363,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "expression": {
                              "id": 36360,
                              "name": "items",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 36355,
                              "src": "21657:5:114",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_struct$_CBOR_$42658_memory_ptr_$dyn_memory_ptr",
                                "typeString": "struct WitnetCBOR.CBOR memory[] memory"
                              }
                            },
                            "id": 36361,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberLocation": "21663:6:114",
                            "memberName": "length",
                            "nodeType": "MemberAccess",
                            "src": "21657:12:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": ">",
                          "rightExpression": {
                            "hexValue": "31",
                            "id": 36362,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "21672:1:114",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_1_by_1",
                              "typeString": "int_const 1"
                            },
                            "value": "1"
                          },
                          "src": "21657:16:114",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "falseBody": {
                          "id": 36387,
                          "nodeType": "Block",
                          "src": "21905:67:114",
                          "statements": [
                            {
                              "expression": {
                                "expression": {
                                  "expression": {
                                    "id": 36383,
                                    "name": "Witnet",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 40741,
                                    "src": "21931:6:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_type$_t_contract$_Witnet_$40741_$",
                                      "typeString": "type(library Witnet)"
                                    }
                                  },
                                  "id": 36384,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberLocation": "21938:14:114",
                                  "memberName": "RadonDataTypes",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 37720,
                                  "src": "21931:21:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_type$_t_enum$_RadonDataTypes_$37720_$",
                                    "typeString": "type(enum Witnet.RadonDataTypes)"
                                  }
                                },
                                "id": 36385,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": true,
                                "lValueRequested": false,
                                "memberLocation": "21953:3:114",
                                "memberName": "Any",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 37700,
                                "src": "21931:25:114",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                  "typeString": "enum Witnet.RadonDataTypes"
                                }
                              },
                              "functionReturnParameters": 36344,
                              "id": 36386,
                              "nodeType": "Return",
                              "src": "21924:32:114"
                            }
                          ]
                        },
                        "id": 36388,
                        "nodeType": "IfStatement",
                        "src": "21653:319:114",
                        "trueBody": {
                          "id": 36382,
                          "nodeType": "Block",
                          "src": "21675:224:114",
                          "statements": [
                            {
                              "expression": {
                                "condition": {
                                  "id": 36364,
                                  "name": "flip",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 36339,
                                  "src": "21701:4:114",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bool",
                                    "typeString": "bool"
                                  }
                                },
                                "falseExpression": {
                                  "arguments": [
                                    {
                                      "baseExpression": {
                                        "id": 36372,
                                        "name": "items",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 36355,
                                        "src": "21835:5:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_struct$_CBOR_$42658_memory_ptr_$dyn_memory_ptr",
                                          "typeString": "struct WitnetCBOR.CBOR memory[] memory"
                                        }
                                      },
                                      "id": 36377,
                                      "indexExpression": {
                                        "commonType": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        },
                                        "id": 36376,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": false,
                                        "lValueRequested": false,
                                        "leftExpression": {
                                          "expression": {
                                            "id": 36373,
                                            "name": "items",
                                            "nodeType": "Identifier",
                                            "overloadedDeclarations": [],
                                            "referencedDeclaration": 36355,
                                            "src": "21841:5:114",
                                            "typeDescriptions": {
                                              "typeIdentifier": "t_array$_t_struct$_CBOR_$42658_memory_ptr_$dyn_memory_ptr",
                                              "typeString": "struct WitnetCBOR.CBOR memory[] memory"
                                            }
                                          },
                                          "id": 36374,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "memberLocation": "21847:6:114",
                                          "memberName": "length",
                                          "nodeType": "MemberAccess",
                                          "src": "21841:12:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_uint256",
                                            "typeString": "uint256"
                                          }
                                        },
                                        "nodeType": "BinaryOperation",
                                        "operator": "-",
                                        "rightExpression": {
                                          "hexValue": "32",
                                          "id": 36375,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "kind": "number",
                                          "lValueRequested": false,
                                          "nodeType": "Literal",
                                          "src": "21856:1:114",
                                          "typeDescriptions": {
                                            "typeIdentifier": "t_rational_2_by_1",
                                            "typeString": "int_const 2"
                                          },
                                          "value": "2"
                                        },
                                        "src": "21841:16:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      },
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "nodeType": "IndexAccess",
                                      "src": "21835:23:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                        "typeString": "struct WitnetCBOR.CBOR memory"
                                      }
                                    },
                                    {
                                      "hexValue": "74727565",
                                      "id": 36378,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "bool",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "21860:4:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      },
                                      "value": "true"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": [
                                      {
                                        "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                        "typeString": "struct WitnetCBOR.CBOR memory"
                                      },
                                      {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    ],
                                    "id": 36371,
                                    "name": "_verifyRadonScriptResultDataType",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 36465,
                                    "src": "21802:32:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_function_internal_pure$_t_struct$_CBOR_$42658_memory_ptr_$_t_bool_$returns$_t_enum$_RadonDataTypes_$37720_$",
                                      "typeString": "function (struct WitnetCBOR.CBOR memory,bool) pure returns (enum Witnet.RadonDataTypes)"
                                    }
                                  },
                                  "id": 36379,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "functionCall",
                                  "lValueRequested": false,
                                  "nameLocations": [],
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "21802:63:114",
                                  "tryCall": false,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                    "typeString": "enum Witnet.RadonDataTypes"
                                  }
                                },
                                "id": 36380,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "Conditional",
                                "src": "21701:164:114",
                                "trueExpression": {
                                  "arguments": [
                                    {
                                      "baseExpression": {
                                        "id": 36366,
                                        "name": "items",
                                        "nodeType": "Identifier",
                                        "overloadedDeclarations": [],
                                        "referencedDeclaration": 36355,
                                        "src": "21762:5:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_array$_t_struct$_CBOR_$42658_memory_ptr_$dyn_memory_ptr",
                                          "typeString": "struct WitnetCBOR.CBOR memory[] memory"
                                        }
                                      },
                                      "id": 36368,
                                      "indexExpression": {
                                        "hexValue": "30",
                                        "id": 36367,
                                        "isConstant": false,
                                        "isLValue": false,
                                        "isPure": true,
                                        "kind": "number",
                                        "lValueRequested": false,
                                        "nodeType": "Literal",
                                        "src": "21768:1:114",
                                        "typeDescriptions": {
                                          "typeIdentifier": "t_rational_0_by_1",
                                          "typeString": "int_const 0"
                                        },
                                        "value": "0"
                                      },
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "nodeType": "IndexAccess",
                                      "src": "21762:8:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                        "typeString": "struct WitnetCBOR.CBOR memory"
                                      }
                                    },
                                    {
                                      "hexValue": "66616c7365",
                                      "id": 36369,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "kind": "bool",
                                      "lValueRequested": false,
                                      "nodeType": "Literal",
                                      "src": "21772:5:114",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      },
                                      "value": "false"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": [
                                      {
                                        "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                                        "typeString": "struct WitnetCBOR.CBOR memory"
                                      },
                                      {
                                        "typeIdentifier": "t_bool",
                                        "typeString": "bool"
                                      }
                                    ],
                                    "id": 36365,
                                    "name": "_verifyRadonScriptResultDataType",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 36465,
                                    "src": "21729:32:114",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_function_internal_pure$_t_struct$_CBOR_$42658_memory_ptr_$_t_bool_$returns$_t_enum$_RadonDataTypes_$37720_$",
                                      "typeString": "function (struct WitnetCBOR.CBOR memory,bool) pure returns (enum Witnet.RadonDataTypes)"
                                    }
                                  },
                                  "id": 36370,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "kind": "functionCall",
                                  "lValueRequested": false,
                                  "nameLocations": [],
                                  "names": [],
                                  "nodeType": "FunctionCall",
                                  "src": "21729:49:114",
                                  "tryCall": false,
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                    "typeString": "enum Witnet.RadonDataTypes"
                                  }
                                },
                                "typeDescriptions": {
                                  "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                                  "typeString": "enum Witnet.RadonDataTypes"
                                }
                              },
                              "functionReturnParameters": 36344,
                              "id": 36381,
                              "nodeType": "Return",
                              "src": "21694:171:114"
                            }
                          ]
                        }
                      }
                    ]
                  }
                }
              ]
            },
            "id": 36465,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "_verifyRadonScriptResultDataType",
            "nameLocation": "21371:32:114",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 36340,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 36337,
                  "mutability": "mutable",
                  "name": "self",
                  "nameLocation": "21427:4:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 36465,
                  "src": "21404:27:114",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_CBOR_$42658_memory_ptr",
                    "typeString": "struct WitnetCBOR.CBOR"
                  },
                  "typeName": {
                    "id": 36336,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 36335,
                      "name": "WitnetCBOR.CBOR",
                      "nameLocations": [
                        "21404:10:114",
                        "21415:4:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 42658,
                      "src": "21404:15:114"
                    },
                    "referencedDeclaration": 42658,
                    "src": "21404:15:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_CBOR_$42658_storage_ptr",
                      "typeString": "struct WitnetCBOR.CBOR"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 36339,
                  "mutability": "mutable",
                  "name": "flip",
                  "nameLocation": "21438:4:114",
                  "nodeType": "VariableDeclaration",
                  "scope": 36465,
                  "src": "21433:9:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 36338,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "21433:4:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "21403:40:114"
            },
            "returnParameters": {
              "id": 36344,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 36343,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 36465,
                  "src": "21484:21:114",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                    "typeString": "enum Witnet.RadonDataTypes"
                  },
                  "typeName": {
                    "id": 36342,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 36341,
                      "name": "Witnet.RadonDataTypes",
                      "nameLocations": [
                        "21484:6:114",
                        "21491:14:114"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 37720,
                      "src": "21484:21:114"
                    },
                    "referencedDeclaration": 37720,
                    "src": "21484:21:114",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_RadonDataTypes_$37720",
                      "typeString": "enum Witnet.RadonDataTypes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "21483:23:114"
            },
            "scope": 36466,
            "src": "21362:1464:114",
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "private"
          }
        ],
        "scope": 36467,
        "src": "189:22642:114",
        "usedErrors": [
          34399,
          34405,
          34409,
          34415,
          34419,
          34427,
          34433,
          34441,
          34445,
          40746,
          40752,
          40758,
          42702,
          42708,
          42716
        ],
        "usedEvents": []
      }
    ],
    "src": "35:22796:114"
  },
  "compiler": {
    "name": "solc",
    "version": "0.8.30+commit.73712a01.Emscripten.clang"
  },
  "networks": {
    "1": {
      "events": {},
      "links": {},
      "address": "0x5A13430A283701BE24cE7E1712B38F31d4B9ac58",
      "transactionHash": "0x9a20641be8571534e34432a94687372242cae95322a2c4cb808f008347c49de8"
    },
    "1285": {
      "events": {},
      "links": {},
      "address": "0xC467B6E0F700D3E044C9F20BB76957eEC0B33c8C"
    },
    "1287": {
      "events": {},
      "links": {},
      "address": "0xb5aff00A290D7c9bd8dD7f984f3d2b31e1BCD63e",
      "transactionHash": "0xb2cedecbbe9fa437e3a17b93c9e4ec98198d92b3e175b4ebb52d54f45c1f63b3"
    },
    "4801": {
      "events": {},
      "links": {},
      "address": "0x65772461641A4A6E8B10c81bae1a132E04e77262",
      "transactionHash": "0xc3657349ebab125ddcc8d3b0f3c0314d1935e14b1dd9180a062cbabdddedd4df"
    },
    "84532": {
      "events": {},
      "links": {},
      "address": "0x98DbB216138aA6a0b3ff2ae9bBdeC254398E5B2E",
      "transactionHash": "0x9efc2b24ca51a79f1b346a3afc9f0f6cb43380dc639263e95d3f11f0c71376d5"
    },
    "11142220": {
      "events": {},
      "links": {},
      "address": "0xB5447342cA17A40e59d410b340ba412E22e36201"
    },
    "11155111": {
      "events": {},
      "links": {},
      "address": "0xFf66F442a1F9449579B181b9D7e0A90022275235",
      "transactionHash": "0x8e7b88d7870015752ae6e6e6e50558c13e8de210e3a8c4aeda1c5f11b97305c1"
    },
    "11155420": {
      "events": {},
      "links": {},
      "address": "0x72202A5d3628fB57a7b7789c861A83405ebc49FE",
      "transactionHash": "0x1df48cf3e896a4344a9c321b8b23e6583c8e171ee55f714bf86cfdaa3757fa44"
    }
  },
  "schemaVersion": "3.4.16",
  "updatedAt": "2025-10-15T14:34:45.975Z",
  "devdoc": {
    "author": "The Witnet Foundation.",
    "kind": "dev",
    "methods": {
      "encode(bytes)": {
        "params": {
          "buf": "Bytes array"
        },
        "returns": {
          "_0": "Mashaled bytes"
        }
      },
      "encode(bytes,uint256)": {
        "params": {
          "buf": "Bytes array"
        },
        "returns": {
          "_0": "Marshaled bytes"
        }
      },
      "encode(string)": {
        "params": {
          "str": "String bytes."
        },
        "returns": {
          "_0": "Mashaled bytes"
        }
      },
      "encode(uint64,bytes1)": {
        "details": "Encode uint64 into tagged varint.See https://developers.google.com/protocol-buffers/docs/encoding#varints.",
        "params": {
          "n": "Number",
          "t": "Tag"
        },
        "returns": {
          "buf": "Marshaled bytes"
        }
      }
    },
    "title": "A library for encoding Witnet Data Requests.",
    "version": 1
  },
  "userdoc": {
    "kind": "user",
    "methods": {
      "encode(bytes)": {
        "notice": "Encode bytes array."
      },
      "encode(bytes,uint256)": {
        "notice": "Encode bytes array into given major type (UTF-8 not yet supported)"
      },
      "encode(string)": {
        "notice": "Encode string array (UTF-8 not yet supported)."
      }
    },
    "version": 1
  }
}