{
  "abi": [
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "target",
          "type": "address"
        }
      ],
      "name": "accesses",
      "outputs": [
        {
          "internalType": "bytes32[]",
          "name": "readSlots",
          "type": "bytes32[]"
        },
        {
          "internalType": "bytes32[]",
          "name": "writeSlots",
          "type": "bytes32[]"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "privateKey",
          "type": "uint256"
        }
      ],
      "name": "addr",
      "outputs": [
        {
          "internalType": "address",
          "name": "keyAddr",
          "type": "address"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bool",
          "name": "condition",
          "type": "bool"
        }
      ],
      "name": "assume",
      "outputs": [],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "char",
          "type": "string"
        }
      ],
      "name": "breakpoint",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "char",
          "type": "string"
        },
        {
          "internalType": "bool",
          "name": "value",
          "type": "bool"
        }
      ],
      "name": "breakpoint",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "broadcast",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "signer",
          "type": "address"
        }
      ],
      "name": "broadcast",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "privateKey",
          "type": "uint256"
        }
      ],
      "name": "broadcast",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "path",
          "type": "string"
        }
      ],
      "name": "closeFile",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "path",
          "type": "string"
        },
        {
          "internalType": "bool",
          "name": "recursive",
          "type": "bool"
        }
      ],
      "name": "createDir",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "mnemonic",
          "type": "string"
        },
        {
          "internalType": "uint32",
          "name": "index",
          "type": "uint32"
        }
      ],
      "name": "deriveKey",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "privateKey",
          "type": "uint256"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "mnemonic",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "derivationPath",
          "type": "string"
        },
        {
          "internalType": "uint32",
          "name": "index",
          "type": "uint32"
        }
      ],
      "name": "deriveKey",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "privateKey",
          "type": "uint256"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        }
      ],
      "name": "envAddress",
      "outputs": [
        {
          "internalType": "address",
          "name": "value",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "delim",
          "type": "string"
        }
      ],
      "name": "envAddress",
      "outputs": [
        {
          "internalType": "address[]",
          "name": "value",
          "type": "address[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        }
      ],
      "name": "envBool",
      "outputs": [
        {
          "internalType": "bool",
          "name": "value",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "delim",
          "type": "string"
        }
      ],
      "name": "envBool",
      "outputs": [
        {
          "internalType": "bool[]",
          "name": "value",
          "type": "bool[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        }
      ],
      "name": "envBytes",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "value",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "delim",
          "type": "string"
        }
      ],
      "name": "envBytes",
      "outputs": [
        {
          "internalType": "bytes[]",
          "name": "value",
          "type": "bytes[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "delim",
          "type": "string"
        }
      ],
      "name": "envBytes32",
      "outputs": [
        {
          "internalType": "bytes32[]",
          "name": "value",
          "type": "bytes32[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        }
      ],
      "name": "envBytes32",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "value",
          "type": "bytes32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "delim",
          "type": "string"
        }
      ],
      "name": "envInt",
      "outputs": [
        {
          "internalType": "int256[]",
          "name": "value",
          "type": "int256[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        }
      ],
      "name": "envInt",
      "outputs": [
        {
          "internalType": "int256",
          "name": "value",
          "type": "int256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "delim",
          "type": "string"
        },
        {
          "internalType": "bytes32[]",
          "name": "defaultValue",
          "type": "bytes32[]"
        }
      ],
      "name": "envOr",
      "outputs": [
        {
          "internalType": "bytes32[]",
          "name": "value",
          "type": "bytes32[]"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "delim",
          "type": "string"
        },
        {
          "internalType": "int256[]",
          "name": "defaultValue",
          "type": "int256[]"
        }
      ],
      "name": "envOr",
      "outputs": [
        {
          "internalType": "int256[]",
          "name": "value",
          "type": "int256[]"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "bool",
          "name": "defaultValue",
          "type": "bool"
        }
      ],
      "name": "envOr",
      "outputs": [
        {
          "internalType": "bool",
          "name": "value",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "address",
          "name": "defaultValue",
          "type": "address"
        }
      ],
      "name": "envOr",
      "outputs": [
        {
          "internalType": "address",
          "name": "value",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "uint256",
          "name": "defaultValue",
          "type": "uint256"
        }
      ],
      "name": "envOr",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "delim",
          "type": "string"
        },
        {
          "internalType": "bytes[]",
          "name": "defaultValue",
          "type": "bytes[]"
        }
      ],
      "name": "envOr",
      "outputs": [
        {
          "internalType": "bytes[]",
          "name": "value",
          "type": "bytes[]"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "delim",
          "type": "string"
        },
        {
          "internalType": "uint256[]",
          "name": "defaultValue",
          "type": "uint256[]"
        }
      ],
      "name": "envOr",
      "outputs": [
        {
          "internalType": "uint256[]",
          "name": "value",
          "type": "uint256[]"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "delim",
          "type": "string"
        },
        {
          "internalType": "string[]",
          "name": "defaultValue",
          "type": "string[]"
        }
      ],
      "name": "envOr",
      "outputs": [
        {
          "internalType": "string[]",
          "name": "value",
          "type": "string[]"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "bytes",
          "name": "defaultValue",
          "type": "bytes"
        }
      ],
      "name": "envOr",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "value",
          "type": "bytes"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "bytes32",
          "name": "defaultValue",
          "type": "bytes32"
        }
      ],
      "name": "envOr",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "value",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "int256",
          "name": "defaultValue",
          "type": "int256"
        }
      ],
      "name": "envOr",
      "outputs": [
        {
          "internalType": "int256",
          "name": "value",
          "type": "int256"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "delim",
          "type": "string"
        },
        {
          "internalType": "address[]",
          "name": "defaultValue",
          "type": "address[]"
        }
      ],
      "name": "envOr",
      "outputs": [
        {
          "internalType": "address[]",
          "name": "value",
          "type": "address[]"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "defaultValue",
          "type": "string"
        }
      ],
      "name": "envOr",
      "outputs": [
        {
          "internalType": "string",
          "name": "value",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "delim",
          "type": "string"
        },
        {
          "internalType": "bool[]",
          "name": "defaultValue",
          "type": "bool[]"
        }
      ],
      "name": "envOr",
      "outputs": [
        {
          "internalType": "bool[]",
          "name": "value",
          "type": "bool[]"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "delim",
          "type": "string"
        }
      ],
      "name": "envString",
      "outputs": [
        {
          "internalType": "string[]",
          "name": "value",
          "type": "string[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        }
      ],
      "name": "envString",
      "outputs": [
        {
          "internalType": "string",
          "name": "value",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        }
      ],
      "name": "envUint",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "delim",
          "type": "string"
        }
      ],
      "name": "envUint",
      "outputs": [
        {
          "internalType": "uint256[]",
          "name": "value",
          "type": "uint256[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string[]",
          "name": "commandInput",
          "type": "string[]"
        }
      ],
      "name": "ffi",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "result",
          "type": "bytes"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "path",
          "type": "string"
        }
      ],
      "name": "fsMetadata",
      "outputs": [
        {
          "components": [
            {
              "internalType": "bool",
              "name": "isDir",
              "type": "bool"
            },
            {
              "internalType": "bool",
              "name": "isSymlink",
              "type": "bool"
            },
            {
              "internalType": "uint256",
              "name": "length",
              "type": "uint256"
            },
            {
              "internalType": "bool",
              "name": "readOnly",
              "type": "bool"
            },
            {
              "internalType": "uint256",
              "name": "modified",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "accessed",
              "type": "uint256"
            },
            {
              "internalType": "uint256",
              "name": "created",
              "type": "uint256"
            }
          ],
          "internalType": "struct VmSafe.FsMetadata",
          "name": "metadata",
          "type": "tuple"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "artifactPath",
          "type": "string"
        }
      ],
      "name": "getCode",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "creationBytecode",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "artifactPath",
          "type": "string"
        }
      ],
      "name": "getDeployedCode",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "runtimeBytecode",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        }
      ],
      "name": "getLabel",
      "outputs": [
        {
          "internalType": "string",
          "name": "currentLabel",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        }
      ],
      "name": "getNonce",
      "outputs": [
        {
          "internalType": "uint64",
          "name": "nonce",
          "type": "uint64"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getRecordedLogs",
      "outputs": [
        {
          "components": [
            {
              "internalType": "bytes32[]",
              "name": "topics",
              "type": "bytes32[]"
            },
            {
              "internalType": "bytes",
              "name": "data",
              "type": "bytes"
            },
            {
              "internalType": "address",
              "name": "emitter",
              "type": "address"
            }
          ],
          "internalType": "struct VmSafe.Log[]",
          "name": "logs",
          "type": "tuple[]"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        },
        {
          "internalType": "string",
          "name": "newLabel",
          "type": "string"
        }
      ],
      "name": "label",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "target",
          "type": "address"
        },
        {
          "internalType": "bytes32",
          "name": "slot",
          "type": "bytes32"
        }
      ],
      "name": "load",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "data",
          "type": "bytes32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "stringifiedValue",
          "type": "string"
        }
      ],
      "name": "parseAddress",
      "outputs": [
        {
          "internalType": "address",
          "name": "parsedValue",
          "type": "address"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "stringifiedValue",
          "type": "string"
        }
      ],
      "name": "parseBool",
      "outputs": [
        {
          "internalType": "bool",
          "name": "parsedValue",
          "type": "bool"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "stringifiedValue",
          "type": "string"
        }
      ],
      "name": "parseBytes",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "parsedValue",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "stringifiedValue",
          "type": "string"
        }
      ],
      "name": "parseBytes32",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "parsedValue",
          "type": "bytes32"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "stringifiedValue",
          "type": "string"
        }
      ],
      "name": "parseInt",
      "outputs": [
        {
          "internalType": "int256",
          "name": "parsedValue",
          "type": "int256"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        }
      ],
      "name": "parseJson",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "abiEncodedData",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "key",
          "type": "string"
        }
      ],
      "name": "parseJson",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "abiEncodedData",
          "type": "bytes"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "name": "parseJsonAddress",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "name": "parseJsonAddressArray",
      "outputs": [
        {
          "internalType": "address[]",
          "name": "",
          "type": "address[]"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "name": "parseJsonBool",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "name": "parseJsonBoolArray",
      "outputs": [
        {
          "internalType": "bool[]",
          "name": "",
          "type": "bool[]"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "name": "parseJsonBytes",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "name": "parseJsonBytes32",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "name": "parseJsonBytes32Array",
      "outputs": [
        {
          "internalType": "bytes32[]",
          "name": "",
          "type": "bytes32[]"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "name": "parseJsonBytesArray",
      "outputs": [
        {
          "internalType": "bytes[]",
          "name": "",
          "type": "bytes[]"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "name": "parseJsonInt",
      "outputs": [
        {
          "internalType": "int256",
          "name": "",
          "type": "int256"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "name": "parseJsonIntArray",
      "outputs": [
        {
          "internalType": "int256[]",
          "name": "",
          "type": "int256[]"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "name": "parseJsonString",
      "outputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "name": "parseJsonStringArray",
      "outputs": [
        {
          "internalType": "string[]",
          "name": "",
          "type": "string[]"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "name": "parseJsonUint",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "name": "parseJsonUintArray",
      "outputs": [
        {
          "internalType": "uint256[]",
          "name": "",
          "type": "uint256[]"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "stringifiedValue",
          "type": "string"
        }
      ],
      "name": "parseUint",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "parsedValue",
          "type": "uint256"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "pauseGasMetering",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "projectRoot",
      "outputs": [
        {
          "internalType": "string",
          "name": "path",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "path",
          "type": "string"
        },
        {
          "internalType": "uint64",
          "name": "maxDepth",
          "type": "uint64"
        }
      ],
      "name": "readDir",
      "outputs": [
        {
          "components": [
            {
              "internalType": "string",
              "name": "errorMessage",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            },
            {
              "internalType": "uint64",
              "name": "depth",
              "type": "uint64"
            },
            {
              "internalType": "bool",
              "name": "isDir",
              "type": "bool"
            },
            {
              "internalType": "bool",
              "name": "isSymlink",
              "type": "bool"
            }
          ],
          "internalType": "struct VmSafe.DirEntry[]",
          "name": "entries",
          "type": "tuple[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "path",
          "type": "string"
        },
        {
          "internalType": "uint64",
          "name": "maxDepth",
          "type": "uint64"
        },
        {
          "internalType": "bool",
          "name": "followLinks",
          "type": "bool"
        }
      ],
      "name": "readDir",
      "outputs": [
        {
          "components": [
            {
              "internalType": "string",
              "name": "errorMessage",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            },
            {
              "internalType": "uint64",
              "name": "depth",
              "type": "uint64"
            },
            {
              "internalType": "bool",
              "name": "isDir",
              "type": "bool"
            },
            {
              "internalType": "bool",
              "name": "isSymlink",
              "type": "bool"
            }
          ],
          "internalType": "struct VmSafe.DirEntry[]",
          "name": "entries",
          "type": "tuple[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "path",
          "type": "string"
        }
      ],
      "name": "readDir",
      "outputs": [
        {
          "components": [
            {
              "internalType": "string",
              "name": "errorMessage",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            },
            {
              "internalType": "uint64",
              "name": "depth",
              "type": "uint64"
            },
            {
              "internalType": "bool",
              "name": "isDir",
              "type": "bool"
            },
            {
              "internalType": "bool",
              "name": "isSymlink",
              "type": "bool"
            }
          ],
          "internalType": "struct VmSafe.DirEntry[]",
          "name": "entries",
          "type": "tuple[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "path",
          "type": "string"
        }
      ],
      "name": "readFile",
      "outputs": [
        {
          "internalType": "string",
          "name": "data",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "path",
          "type": "string"
        }
      ],
      "name": "readFileBinary",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "data",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "path",
          "type": "string"
        }
      ],
      "name": "readLine",
      "outputs": [
        {
          "internalType": "string",
          "name": "line",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "linkPath",
          "type": "string"
        }
      ],
      "name": "readLink",
      "outputs": [
        {
          "internalType": "string",
          "name": "targetPath",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "record",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "recordLogs",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "privateKey",
          "type": "uint256"
        }
      ],
      "name": "rememberKey",
      "outputs": [
        {
          "internalType": "address",
          "name": "keyAddr",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "path",
          "type": "string"
        },
        {
          "internalType": "bool",
          "name": "recursive",
          "type": "bool"
        }
      ],
      "name": "removeDir",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "path",
          "type": "string"
        }
      ],
      "name": "removeFile",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "resumeGasMetering",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "rpcAlias",
          "type": "string"
        }
      ],
      "name": "rpcUrl",
      "outputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "rpcUrlStructs",
      "outputs": [
        {
          "components": [
            {
              "internalType": "string",
              "name": "key",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "url",
              "type": "string"
            }
          ],
          "internalType": "struct VmSafe.Rpc[]",
          "name": "urls",
          "type": "tuple[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "rpcUrls",
      "outputs": [
        {
          "internalType": "string[2][]",
          "name": "urls",
          "type": "string[2][]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "objectKey",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "valueKey",
          "type": "string"
        },
        {
          "internalType": "address[]",
          "name": "values",
          "type": "address[]"
        }
      ],
      "name": "serializeAddress",
      "outputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "objectKey",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "valueKey",
          "type": "string"
        },
        {
          "internalType": "address",
          "name": "value",
          "type": "address"
        }
      ],
      "name": "serializeAddress",
      "outputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "objectKey",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "valueKey",
          "type": "string"
        },
        {
          "internalType": "bool[]",
          "name": "values",
          "type": "bool[]"
        }
      ],
      "name": "serializeBool",
      "outputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "objectKey",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "valueKey",
          "type": "string"
        },
        {
          "internalType": "bool",
          "name": "value",
          "type": "bool"
        }
      ],
      "name": "serializeBool",
      "outputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "objectKey",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "valueKey",
          "type": "string"
        },
        {
          "internalType": "bytes[]",
          "name": "values",
          "type": "bytes[]"
        }
      ],
      "name": "serializeBytes",
      "outputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "objectKey",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "valueKey",
          "type": "string"
        },
        {
          "internalType": "bytes",
          "name": "value",
          "type": "bytes"
        }
      ],
      "name": "serializeBytes",
      "outputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "objectKey",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "valueKey",
          "type": "string"
        },
        {
          "internalType": "bytes32[]",
          "name": "values",
          "type": "bytes32[]"
        }
      ],
      "name": "serializeBytes32",
      "outputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "objectKey",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "valueKey",
          "type": "string"
        },
        {
          "internalType": "bytes32",
          "name": "value",
          "type": "bytes32"
        }
      ],
      "name": "serializeBytes32",
      "outputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "objectKey",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "valueKey",
          "type": "string"
        },
        {
          "internalType": "int256",
          "name": "value",
          "type": "int256"
        }
      ],
      "name": "serializeInt",
      "outputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "objectKey",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "valueKey",
          "type": "string"
        },
        {
          "internalType": "int256[]",
          "name": "values",
          "type": "int256[]"
        }
      ],
      "name": "serializeInt",
      "outputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "objectKey",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "valueKey",
          "type": "string"
        },
        {
          "internalType": "string[]",
          "name": "values",
          "type": "string[]"
        }
      ],
      "name": "serializeString",
      "outputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "objectKey",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "valueKey",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "value",
          "type": "string"
        }
      ],
      "name": "serializeString",
      "outputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "objectKey",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "valueKey",
          "type": "string"
        },
        {
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        }
      ],
      "name": "serializeUint",
      "outputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "objectKey",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "valueKey",
          "type": "string"
        },
        {
          "internalType": "uint256[]",
          "name": "values",
          "type": "uint256[]"
        }
      ],
      "name": "serializeUint",
      "outputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "value",
          "type": "string"
        }
      ],
      "name": "setEnv",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "privateKey",
          "type": "uint256"
        },
        {
          "internalType": "bytes32",
          "name": "digest",
          "type": "bytes32"
        }
      ],
      "name": "sign",
      "outputs": [
        {
          "internalType": "uint8",
          "name": "v",
          "type": "uint8"
        },
        {
          "internalType": "bytes32",
          "name": "r",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "s",
          "type": "bytes32"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "startBroadcast",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "signer",
          "type": "address"
        }
      ],
      "name": "startBroadcast",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "privateKey",
          "type": "uint256"
        }
      ],
      "name": "startBroadcast",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "stopBroadcast",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "value",
          "type": "address"
        }
      ],
      "name": "toString",
      "outputs": [
        {
          "internalType": "string",
          "name": "stringifiedValue",
          "type": "string"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        }
      ],
      "name": "toString",
      "outputs": [
        {
          "internalType": "string",
          "name": "stringifiedValue",
          "type": "string"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "value",
          "type": "bytes"
        }
      ],
      "name": "toString",
      "outputs": [
        {
          "internalType": "string",
          "name": "stringifiedValue",
          "type": "string"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bool",
          "name": "value",
          "type": "bool"
        }
      ],
      "name": "toString",
      "outputs": [
        {
          "internalType": "string",
          "name": "stringifiedValue",
          "type": "string"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "int256",
          "name": "value",
          "type": "int256"
        }
      ],
      "name": "toString",
      "outputs": [
        {
          "internalType": "string",
          "name": "stringifiedValue",
          "type": "string"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "value",
          "type": "bytes32"
        }
      ],
      "name": "toString",
      "outputs": [
        {
          "internalType": "string",
          "name": "stringifiedValue",
          "type": "string"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "path",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "data",
          "type": "string"
        }
      ],
      "name": "writeFile",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "path",
          "type": "string"
        },
        {
          "internalType": "bytes",
          "name": "data",
          "type": "bytes"
        }
      ],
      "name": "writeFileBinary",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "path",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "valueKey",
          "type": "string"
        }
      ],
      "name": "writeJson",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "json",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "path",
          "type": "string"
        }
      ],
      "name": "writeJson",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "path",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "data",
          "type": "string"
        }
      ],
      "name": "writeLine",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": {
    "object": "0x",
    "sourceMap": "",
    "linkReferences": {}
  },
  "deployedBytecode": {
    "object": "0x",
    "sourceMap": "",
    "linkReferences": {}
  },
  "methodIdentifiers": {
    "accesses(address)": "65bc9481",
    "addr(uint256)": "ffa18649",
    "assume(bool)": "4c63e562",
    "breakpoint(string)": "f0259e92",
    "breakpoint(string,bool)": "f7d39a8d",
    "broadcast()": "afc98040",
    "broadcast(address)": "e6962cdb",
    "broadcast(uint256)": "f67a965b",
    "closeFile(string)": "48c3241f",
    "createDir(string,bool)": "168b64d3",
    "deriveKey(string,string,uint32)": "6bcb2c1b",
    "deriveKey(string,uint32)": "6229498b",
    "envAddress(string)": "350d56bf",
    "envAddress(string,string)": "ad31b9fa",
    "envBool(string)": "7ed1ec7d",
    "envBool(string,string)": "aaaddeaf",
    "envBytes(string)": "4d7baf06",
    "envBytes(string,string)": "ddc2651b",
    "envBytes32(string)": "97949042",
    "envBytes32(string,string)": "5af231c1",
    "envInt(string)": "892a0c61",
    "envInt(string,string)": "42181150",
    "envOr(string,address)": "561fe540",
    "envOr(string,bool)": "4777f3cf",
    "envOr(string,bytes)": "b3e47705",
    "envOr(string,bytes32)": "b4a85892",
    "envOr(string,int256)": "bbcb713e",
    "envOr(string,string)": "d145736c",
    "envOr(string,string,address[])": "c74e9deb",
    "envOr(string,string,bool[])": "eb85e83b",
    "envOr(string,string,bytes32[])": "2281f367",
    "envOr(string,string,bytes[])": "64bc3e64",
    "envOr(string,string,int256[])": "4700d74b",
    "envOr(string,string,string[])": "859216bc",
    "envOr(string,string,uint256[])": "74318528",
    "envOr(string,uint256)": "5e97348f",
    "envString(string)": "f877cb19",
    "envString(string,string)": "14b02bc9",
    "envUint(string)": "c1978d1f",
    "envUint(string,string)": "f3dec099",
    "ffi(string[])": "89160467",
    "fsMetadata(string)": "af368a08",
    "getCode(string)": "8d1cc925",
    "getDeployedCode(string)": "3ebf73b4",
    "getLabel(address)": "28a249b0",
    "getNonce(address)": "2d0335ab",
    "getRecordedLogs()": "191553a4",
    "label(address,string)": "c657c718",
    "load(address,bytes32)": "667f9d70",
    "parseAddress(string)": "c6ce059d",
    "parseBool(string)": "974ef924",
    "parseBytes(string)": "8f5d232d",
    "parseBytes32(string)": "087e6e81",
    "parseInt(string)": "42346c5e",
    "parseJson(string)": "6a82600a",
    "parseJson(string,string)": "85940ef1",
    "parseJsonAddress(string,string)": "1e19e657",
    "parseJsonAddressArray(string,string)": "2fce7883",
    "parseJsonBool(string,string)": "9f86dc91",
    "parseJsonBoolArray(string,string)": "91f3b94f",
    "parseJsonBytes(string,string)": "fd921be8",
    "parseJsonBytes32(string,string)": "1777e59d",
    "parseJsonBytes32Array(string,string)": "91c75bc3",
    "parseJsonBytesArray(string,string)": "6631aa99",
    "parseJsonInt(string,string)": "7b048ccd",
    "parseJsonIntArray(string,string)": "9983c28a",
    "parseJsonString(string,string)": "49c4fac8",
    "parseJsonStringArray(string,string)": "498fdcf4",
    "parseJsonUint(string,string)": "addde2b6",
    "parseJsonUintArray(string,string)": "522074ab",
    "parseUint(string)": "fa91454d",
    "pauseGasMetering()": "d1a5b36f",
    "projectRoot()": "d930a0e6",
    "readDir(string)": "c4bc59e0",
    "readDir(string,uint64)": "1497876c",
    "readDir(string,uint64,bool)": "8102d70d",
    "readFile(string)": "60f9bb11",
    "readFileBinary(string)": "16ed7bc4",
    "readLine(string)": "70f55728",
    "readLink(string)": "9f5684a2",
    "record()": "266cf109",
    "recordLogs()": "41af2f52",
    "rememberKey(uint256)": "22100064",
    "removeDir(string,bool)": "45c62011",
    "removeFile(string)": "f1afe04d",
    "resumeGasMetering()": "2bcd50e0",
    "rpcUrl(string)": "975a6ce9",
    "rpcUrlStructs()": "9d2ad72a",
    "rpcUrls()": "a85a8418",
    "serializeAddress(string,string,address)": "972c6062",
    "serializeAddress(string,string,address[])": "1e356e1a",
    "serializeBool(string,string,bool)": "ac22e971",
    "serializeBool(string,string,bool[])": "92925aa1",
    "serializeBytes(string,string,bytes)": "f21d52c7",
    "serializeBytes(string,string,bytes[])": "9884b232",
    "serializeBytes32(string,string,bytes32)": "2d812b44",
    "serializeBytes32(string,string,bytes32[])": "201e43e2",
    "serializeInt(string,string,int256)": "3f33db60",
    "serializeInt(string,string,int256[])": "7676e127",
    "serializeString(string,string,string)": "88da6d35",
    "serializeString(string,string,string[])": "561cd6f3",
    "serializeUint(string,string,uint256)": "129e9002",
    "serializeUint(string,string,uint256[])": "fee9a469",
    "setEnv(string,string)": "3d5923ee",
    "sign(uint256,bytes32)": "e341eaa4",
    "startBroadcast()": "7fb5297f",
    "startBroadcast(address)": "7fec2a8d",
    "startBroadcast(uint256)": "ce817d47",
    "stopBroadcast()": "76eadd36",
    "toString(address)": "56ca623e",
    "toString(bool)": "71dce7da",
    "toString(bytes)": "71aad10d",
    "toString(bytes32)": "b11a19e8",
    "toString(int256)": "a322c40e",
    "toString(uint256)": "6900a3ae",
    "writeFile(string,string)": "897e0a97",
    "writeFileBinary(string,bytes)": "1f21fc80",
    "writeJson(string,string)": "e23cd19f",
    "writeJson(string,string,string)": "35d6ad46",
    "writeLine(string,string)": "619d897f"
  },
  "rawMetadata": "{\"compiler\":{\"version\":\"0.8.22+commit.4fc1097e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"}],\"name\":\"accesses\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"readSlots\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes32[]\",\"name\":\"writeSlots\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"addr\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"keyAddr\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"condition\",\"type\":\"bool\"}],\"name\":\"assume\",\"outputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"char\",\"type\":\"string\"}],\"name\":\"breakpoint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"char\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"name\":\"breakpoint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"broadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"signer\",\"type\":\"address\"}],\"name\":\"broadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"broadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"closeFile\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"recursive\",\"type\":\"bool\"}],\"name\":\"createDir\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"mnemonic\",\"type\":\"string\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"name\":\"deriveKey\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"mnemonic\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"derivationPath\",\"type\":\"string\"},{\"internalType\":\"uint32\",\"name\":\"index\",\"type\":\"uint32\"}],\"name\":\"deriveKey\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envAddress\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"value\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envBool\",\"outputs\":[{\"internalType\":\"bool[]\",\"name\":\"value\",\"type\":\"bool[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envBytes\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"value\",\"type\":\"bytes[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envBytes32\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"value\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envInt\",\"outputs\":[{\"internalType\":\"int256[]\",\"name\":\"value\",\"type\":\"int256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envInt\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"bytes32[]\",\"name\":\"defaultValue\",\"type\":\"bytes32[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"value\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"int256[]\",\"name\":\"defaultValue\",\"type\":\"int256[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"int256[]\",\"name\":\"value\",\"type\":\"int256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"defaultValue\",\"type\":\"bool\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"defaultValue\",\"type\":\"address\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"defaultValue\",\"type\":\"uint256\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"bytes[]\",\"name\":\"defaultValue\",\"type\":\"bytes[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"value\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"uint256[]\",\"name\":\"defaultValue\",\"type\":\"uint256[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"value\",\"type\":\"uint256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"string[]\",\"name\":\"defaultValue\",\"type\":\"string[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"value\",\"type\":\"string[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"defaultValue\",\"type\":\"bytes\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"defaultValue\",\"type\":\"bytes32\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"defaultValue\",\"type\":\"int256\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"address[]\",\"name\":\"defaultValue\",\"type\":\"address[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"value\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"defaultValue\",\"type\":\"string\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"},{\"internalType\":\"bool[]\",\"name\":\"defaultValue\",\"type\":\"bool[]\"}],\"name\":\"envOr\",\"outputs\":[{\"internalType\":\"bool[]\",\"name\":\"value\",\"type\":\"bool[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envString\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"value\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"}],\"name\":\"envUint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"delim\",\"type\":\"string\"}],\"name\":\"envUint\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"value\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string[]\",\"name\":\"commandInput\",\"type\":\"string[]\"}],\"name\":\"ffi\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"result\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"fsMetadata\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"isDir\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isSymlink\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"readOnly\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"modified\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"created\",\"type\":\"uint256\"}],\"internalType\":\"struct VmSafe.FsMetadata\",\"name\":\"metadata\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"artifactPath\",\"type\":\"string\"}],\"name\":\"getCode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"creationBytecode\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"artifactPath\",\"type\":\"string\"}],\"name\":\"getDeployedCode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"runtimeBytecode\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"getLabel\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"currentLabel\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"getNonce\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"nonce\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRecordedLogs\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32[]\",\"name\":\"topics\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"emitter\",\"type\":\"address\"}],\"internalType\":\"struct VmSafe.Log[]\",\"name\":\"logs\",\"type\":\"tuple[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"newLabel\",\"type\":\"string\"}],\"name\":\"label\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"slot\",\"type\":\"bytes32\"}],\"name\":\"load\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"data\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"parsedValue\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"parsedValue\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"parsedValue\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"parsedValue\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseInt\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"parsedValue\",\"type\":\"int256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"name\":\"parseJson\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"abiEncodedData\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"}],\"name\":\"parseJson\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"abiEncodedData\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"parseJsonAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"parseJsonAddressArray\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"parseJsonBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"parseJsonBoolArray\",\"outputs\":[{\"internalType\":\"bool[]\",\"name\":\"\",\"type\":\"bool[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"parseJsonBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"parseJsonBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"parseJsonBytes32Array\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"parseJsonBytesArray\",\"outputs\":[{\"internalType\":\"bytes[]\",\"name\":\"\",\"type\":\"bytes[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"parseJsonInt\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"parseJsonIntArray\",\"outputs\":[{\"internalType\":\"int256[]\",\"name\":\"\",\"type\":\"int256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"parseJsonString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"parseJsonStringArray\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"\",\"type\":\"string[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"parseJsonUint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"parseJsonUintArray\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"name\":\"parseUint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"parsedValue\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pauseGasMetering\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"projectRoot\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"uint64\",\"name\":\"maxDepth\",\"type\":\"uint64\"}],\"name\":\"readDir\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"errorMessage\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"uint64\",\"name\":\"depth\",\"type\":\"uint64\"},{\"internalType\":\"bool\",\"name\":\"isDir\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isSymlink\",\"type\":\"bool\"}],\"internalType\":\"struct VmSafe.DirEntry[]\",\"name\":\"entries\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"uint64\",\"name\":\"maxDepth\",\"type\":\"uint64\"},{\"internalType\":\"bool\",\"name\":\"followLinks\",\"type\":\"bool\"}],\"name\":\"readDir\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"errorMessage\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"uint64\",\"name\":\"depth\",\"type\":\"uint64\"},{\"internalType\":\"bool\",\"name\":\"isDir\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isSymlink\",\"type\":\"bool\"}],\"internalType\":\"struct VmSafe.DirEntry[]\",\"name\":\"entries\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"readDir\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"errorMessage\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"uint64\",\"name\":\"depth\",\"type\":\"uint64\"},{\"internalType\":\"bool\",\"name\":\"isDir\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"isSymlink\",\"type\":\"bool\"}],\"internalType\":\"struct VmSafe.DirEntry[]\",\"name\":\"entries\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"readFile\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"data\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"readFileBinary\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"readLine\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"line\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"linkPath\",\"type\":\"string\"}],\"name\":\"readLink\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"targetPath\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"record\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recordLogs\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"rememberKey\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"keyAddr\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"recursive\",\"type\":\"bool\"}],\"name\":\"removeDir\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"removeFile\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"resumeGasMetering\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"rpcAlias\",\"type\":\"string\"}],\"name\":\"rpcUrl\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rpcUrlStructs\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"url\",\"type\":\"string\"}],\"internalType\":\"struct VmSafe.Rpc[]\",\"name\":\"urls\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"rpcUrls\",\"outputs\":[{\"internalType\":\"string[2][]\",\"name\":\"urls\",\"type\":\"string[2][]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"address[]\",\"name\":\"values\",\"type\":\"address[]\"}],\"name\":\"serializeAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"name\":\"serializeAddress\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bool[]\",\"name\":\"values\",\"type\":\"bool[]\"}],\"name\":\"serializeBool\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"name\":\"serializeBool\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes[]\",\"name\":\"values\",\"type\":\"bytes[]\"}],\"name\":\"serializeBytes\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"serializeBytes\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes32[]\",\"name\":\"values\",\"type\":\"bytes32[]\"}],\"name\":\"serializeBytes32\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"name\":\"serializeBytes32\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"name\":\"serializeInt\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"int256[]\",\"name\":\"values\",\"type\":\"int256[]\"}],\"name\":\"serializeInt\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"string[]\",\"name\":\"values\",\"type\":\"string[]\"}],\"name\":\"serializeString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"name\":\"serializeString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"serializeUint\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"objectKey\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"},{\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\"}],\"name\":\"serializeUint\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\"}],\"name\":\"setEnv\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"digest\",\"type\":\"bytes32\"}],\"name\":\"sign\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"startBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"signer\",\"type\":\"address\"}],\"name\":\"startBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"privateKey\",\"type\":\"uint256\"}],\"name\":\"startBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stopBroadcast\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"value\",\"type\":\"address\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"value\",\"type\":\"bytes\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"value\",\"type\":\"bool\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"int256\",\"name\":\"value\",\"type\":\"int256\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"value\",\"type\":\"bytes32\"}],\"name\":\"toString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"stringifiedValue\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"data\",\"type\":\"string\"}],\"name\":\"writeFile\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"writeFileBinary\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"valueKey\",\"type\":\"string\"}],\"name\":\"writeJson\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"json\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"}],\"name\":\"writeJson\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"path\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"data\",\"type\":\"string\"}],\"name\":\"writeLine\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/Vm.sol\":\"VmSafe\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"details\":{\"constantOptimizer\":true,\"cse\":true,\"deduplicate\":true,\"inliner\":true,\"jumpdestRemover\":true,\"orderLiterals\":true,\"peephole\":true,\"simpleCounterForLoopUncheckedIncrement\":true,\"yul\":true,\"yulDetails\":{\"optimizerSteps\":\"dhfoD[xarrscLMcCTU]uljmul:fDnTOcmu\",\"stackAllocation\":true}},\"runs\":999999999},\"remappings\":[\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@uniswap/v3-core/=lib_uniswap/v3-core/\",\":@uniswap/v3-periphery/=lib_uniswap/v3-periphery/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":v3-core/=lib_uniswap/v3-core/\",\":v3-periphery/libraries/=lib_uniswap/v3-periphery/contracts/libraries/\"]},\"sources\":{\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xb569d0b4398fad95f508fb854e832143edf69a897af4250f5f60fe195a2066c5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://84b722ada97ea7bb841cdc0fa556aa36a02ff2d380fa24f6dc0717a71c6d9c7c\",\"dweb:/ipfs/QmfCH9Q4tvJhPM286GFsE4UCP4YncLpRu4Nwa2ZkHdRfbw\"]}},\"version\":1}",
  "metadata": {
    "compiler": {
      "version": "0.8.22+commit.4fc1097e"
    },
    "language": "Solidity",
    "output": {
      "abi": [
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "target",
              "type": "address"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "accesses",
          "outputs": [
            {
              "internalType": "bytes32[]",
              "name": "readSlots",
              "type": "bytes32[]"
            },
            {
              "internalType": "bytes32[]",
              "name": "writeSlots",
              "type": "bytes32[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "uint256",
              "name": "privateKey",
              "type": "uint256"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "addr",
          "outputs": [
            {
              "internalType": "address",
              "name": "keyAddr",
              "type": "address"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "bool",
              "name": "condition",
              "type": "bool"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "assume"
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "char",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "breakpoint"
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "char",
              "type": "string"
            },
            {
              "internalType": "bool",
              "name": "value",
              "type": "bool"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "breakpoint"
        },
        {
          "inputs": [],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "broadcast"
        },
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "signer",
              "type": "address"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "broadcast"
        },
        {
          "inputs": [
            {
              "internalType": "uint256",
              "name": "privateKey",
              "type": "uint256"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "broadcast"
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "closeFile"
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            },
            {
              "internalType": "bool",
              "name": "recursive",
              "type": "bool"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "createDir"
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "mnemonic",
              "type": "string"
            },
            {
              "internalType": "uint32",
              "name": "index",
              "type": "uint32"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "deriveKey",
          "outputs": [
            {
              "internalType": "uint256",
              "name": "privateKey",
              "type": "uint256"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "mnemonic",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "derivationPath",
              "type": "string"
            },
            {
              "internalType": "uint32",
              "name": "index",
              "type": "uint32"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "deriveKey",
          "outputs": [
            {
              "internalType": "uint256",
              "name": "privateKey",
              "type": "uint256"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "envAddress",
          "outputs": [
            {
              "internalType": "address",
              "name": "value",
              "type": "address"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "delim",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "envAddress",
          "outputs": [
            {
              "internalType": "address[]",
              "name": "value",
              "type": "address[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "envBool",
          "outputs": [
            {
              "internalType": "bool",
              "name": "value",
              "type": "bool"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "delim",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "envBool",
          "outputs": [
            {
              "internalType": "bool[]",
              "name": "value",
              "type": "bool[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "envBytes",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "value",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "delim",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "envBytes",
          "outputs": [
            {
              "internalType": "bytes[]",
              "name": "value",
              "type": "bytes[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "delim",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "envBytes32",
          "outputs": [
            {
              "internalType": "bytes32[]",
              "name": "value",
              "type": "bytes32[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "envBytes32",
          "outputs": [
            {
              "internalType": "bytes32",
              "name": "value",
              "type": "bytes32"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "delim",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "envInt",
          "outputs": [
            {
              "internalType": "int256[]",
              "name": "value",
              "type": "int256[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "envInt",
          "outputs": [
            {
              "internalType": "int256",
              "name": "value",
              "type": "int256"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "delim",
              "type": "string"
            },
            {
              "internalType": "bytes32[]",
              "name": "defaultValue",
              "type": "bytes32[]"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "envOr",
          "outputs": [
            {
              "internalType": "bytes32[]",
              "name": "value",
              "type": "bytes32[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "delim",
              "type": "string"
            },
            {
              "internalType": "int256[]",
              "name": "defaultValue",
              "type": "int256[]"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "envOr",
          "outputs": [
            {
              "internalType": "int256[]",
              "name": "value",
              "type": "int256[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "bool",
              "name": "defaultValue",
              "type": "bool"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "envOr",
          "outputs": [
            {
              "internalType": "bool",
              "name": "value",
              "type": "bool"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "address",
              "name": "defaultValue",
              "type": "address"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "envOr",
          "outputs": [
            {
              "internalType": "address",
              "name": "value",
              "type": "address"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "uint256",
              "name": "defaultValue",
              "type": "uint256"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "envOr",
          "outputs": [
            {
              "internalType": "uint256",
              "name": "value",
              "type": "uint256"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "delim",
              "type": "string"
            },
            {
              "internalType": "bytes[]",
              "name": "defaultValue",
              "type": "bytes[]"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "envOr",
          "outputs": [
            {
              "internalType": "bytes[]",
              "name": "value",
              "type": "bytes[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "delim",
              "type": "string"
            },
            {
              "internalType": "uint256[]",
              "name": "defaultValue",
              "type": "uint256[]"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "envOr",
          "outputs": [
            {
              "internalType": "uint256[]",
              "name": "value",
              "type": "uint256[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "delim",
              "type": "string"
            },
            {
              "internalType": "string[]",
              "name": "defaultValue",
              "type": "string[]"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "envOr",
          "outputs": [
            {
              "internalType": "string[]",
              "name": "value",
              "type": "string[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "bytes",
              "name": "defaultValue",
              "type": "bytes"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "envOr",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "value",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "bytes32",
              "name": "defaultValue",
              "type": "bytes32"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "envOr",
          "outputs": [
            {
              "internalType": "bytes32",
              "name": "value",
              "type": "bytes32"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "int256",
              "name": "defaultValue",
              "type": "int256"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "envOr",
          "outputs": [
            {
              "internalType": "int256",
              "name": "value",
              "type": "int256"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "delim",
              "type": "string"
            },
            {
              "internalType": "address[]",
              "name": "defaultValue",
              "type": "address[]"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "envOr",
          "outputs": [
            {
              "internalType": "address[]",
              "name": "value",
              "type": "address[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "defaultValue",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "envOr",
          "outputs": [
            {
              "internalType": "string",
              "name": "value",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "delim",
              "type": "string"
            },
            {
              "internalType": "bool[]",
              "name": "defaultValue",
              "type": "bool[]"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "envOr",
          "outputs": [
            {
              "internalType": "bool[]",
              "name": "value",
              "type": "bool[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "delim",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "envString",
          "outputs": [
            {
              "internalType": "string[]",
              "name": "value",
              "type": "string[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "envString",
          "outputs": [
            {
              "internalType": "string",
              "name": "value",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "envUint",
          "outputs": [
            {
              "internalType": "uint256",
              "name": "value",
              "type": "uint256"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "delim",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "envUint",
          "outputs": [
            {
              "internalType": "uint256[]",
              "name": "value",
              "type": "uint256[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string[]",
              "name": "commandInput",
              "type": "string[]"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "ffi",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "result",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "fsMetadata",
          "outputs": [
            {
              "internalType": "struct VmSafe.FsMetadata",
              "name": "metadata",
              "type": "tuple",
              "components": [
                {
                  "internalType": "bool",
                  "name": "isDir",
                  "type": "bool"
                },
                {
                  "internalType": "bool",
                  "name": "isSymlink",
                  "type": "bool"
                },
                {
                  "internalType": "uint256",
                  "name": "length",
                  "type": "uint256"
                },
                {
                  "internalType": "bool",
                  "name": "readOnly",
                  "type": "bool"
                },
                {
                  "internalType": "uint256",
                  "name": "modified",
                  "type": "uint256"
                },
                {
                  "internalType": "uint256",
                  "name": "accessed",
                  "type": "uint256"
                },
                {
                  "internalType": "uint256",
                  "name": "created",
                  "type": "uint256"
                }
              ]
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "artifactPath",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "getCode",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "creationBytecode",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "artifactPath",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "getDeployedCode",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "runtimeBytecode",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "account",
              "type": "address"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "getLabel",
          "outputs": [
            {
              "internalType": "string",
              "name": "currentLabel",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "account",
              "type": "address"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "getNonce",
          "outputs": [
            {
              "internalType": "uint64",
              "name": "nonce",
              "type": "uint64"
            }
          ]
        },
        {
          "inputs": [],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "getRecordedLogs",
          "outputs": [
            {
              "internalType": "struct VmSafe.Log[]",
              "name": "logs",
              "type": "tuple[]",
              "components": [
                {
                  "internalType": "bytes32[]",
                  "name": "topics",
                  "type": "bytes32[]"
                },
                {
                  "internalType": "bytes",
                  "name": "data",
                  "type": "bytes"
                },
                {
                  "internalType": "address",
                  "name": "emitter",
                  "type": "address"
                }
              ]
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "account",
              "type": "address"
            },
            {
              "internalType": "string",
              "name": "newLabel",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "label"
        },
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "target",
              "type": "address"
            },
            {
              "internalType": "bytes32",
              "name": "slot",
              "type": "bytes32"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "load",
          "outputs": [
            {
              "internalType": "bytes32",
              "name": "data",
              "type": "bytes32"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "stringifiedValue",
              "type": "string"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "parseAddress",
          "outputs": [
            {
              "internalType": "address",
              "name": "parsedValue",
              "type": "address"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "stringifiedValue",
              "type": "string"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "parseBool",
          "outputs": [
            {
              "internalType": "bool",
              "name": "parsedValue",
              "type": "bool"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "stringifiedValue",
              "type": "string"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "parseBytes",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "parsedValue",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "stringifiedValue",
              "type": "string"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "parseBytes32",
          "outputs": [
            {
              "internalType": "bytes32",
              "name": "parsedValue",
              "type": "bytes32"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "stringifiedValue",
              "type": "string"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "parseInt",
          "outputs": [
            {
              "internalType": "int256",
              "name": "parsedValue",
              "type": "int256"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "parseJson",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "abiEncodedData",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "key",
              "type": "string"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "parseJson",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "abiEncodedData",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "parseJsonAddress",
          "outputs": [
            {
              "internalType": "address",
              "name": "",
              "type": "address"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "parseJsonAddressArray",
          "outputs": [
            {
              "internalType": "address[]",
              "name": "",
              "type": "address[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "parseJsonBool",
          "outputs": [
            {
              "internalType": "bool",
              "name": "",
              "type": "bool"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "parseJsonBoolArray",
          "outputs": [
            {
              "internalType": "bool[]",
              "name": "",
              "type": "bool[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "parseJsonBytes",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "parseJsonBytes32",
          "outputs": [
            {
              "internalType": "bytes32",
              "name": "",
              "type": "bytes32"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "parseJsonBytes32Array",
          "outputs": [
            {
              "internalType": "bytes32[]",
              "name": "",
              "type": "bytes32[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "parseJsonBytesArray",
          "outputs": [
            {
              "internalType": "bytes[]",
              "name": "",
              "type": "bytes[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "parseJsonInt",
          "outputs": [
            {
              "internalType": "int256",
              "name": "",
              "type": "int256"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "parseJsonIntArray",
          "outputs": [
            {
              "internalType": "int256[]",
              "name": "",
              "type": "int256[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "parseJsonString",
          "outputs": [
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "parseJsonStringArray",
          "outputs": [
            {
              "internalType": "string[]",
              "name": "",
              "type": "string[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "parseJsonUint",
          "outputs": [
            {
              "internalType": "uint256",
              "name": "",
              "type": "uint256"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "parseJsonUintArray",
          "outputs": [
            {
              "internalType": "uint256[]",
              "name": "",
              "type": "uint256[]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "stringifiedValue",
              "type": "string"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "parseUint",
          "outputs": [
            {
              "internalType": "uint256",
              "name": "parsedValue",
              "type": "uint256"
            }
          ]
        },
        {
          "inputs": [],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "pauseGasMetering"
        },
        {
          "inputs": [],
          "stateMutability": "view",
          "type": "function",
          "name": "projectRoot",
          "outputs": [
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            },
            {
              "internalType": "uint64",
              "name": "maxDepth",
              "type": "uint64"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "readDir",
          "outputs": [
            {
              "internalType": "struct VmSafe.DirEntry[]",
              "name": "entries",
              "type": "tuple[]",
              "components": [
                {
                  "internalType": "string",
                  "name": "errorMessage",
                  "type": "string"
                },
                {
                  "internalType": "string",
                  "name": "path",
                  "type": "string"
                },
                {
                  "internalType": "uint64",
                  "name": "depth",
                  "type": "uint64"
                },
                {
                  "internalType": "bool",
                  "name": "isDir",
                  "type": "bool"
                },
                {
                  "internalType": "bool",
                  "name": "isSymlink",
                  "type": "bool"
                }
              ]
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            },
            {
              "internalType": "uint64",
              "name": "maxDepth",
              "type": "uint64"
            },
            {
              "internalType": "bool",
              "name": "followLinks",
              "type": "bool"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "readDir",
          "outputs": [
            {
              "internalType": "struct VmSafe.DirEntry[]",
              "name": "entries",
              "type": "tuple[]",
              "components": [
                {
                  "internalType": "string",
                  "name": "errorMessage",
                  "type": "string"
                },
                {
                  "internalType": "string",
                  "name": "path",
                  "type": "string"
                },
                {
                  "internalType": "uint64",
                  "name": "depth",
                  "type": "uint64"
                },
                {
                  "internalType": "bool",
                  "name": "isDir",
                  "type": "bool"
                },
                {
                  "internalType": "bool",
                  "name": "isSymlink",
                  "type": "bool"
                }
              ]
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "readDir",
          "outputs": [
            {
              "internalType": "struct VmSafe.DirEntry[]",
              "name": "entries",
              "type": "tuple[]",
              "components": [
                {
                  "internalType": "string",
                  "name": "errorMessage",
                  "type": "string"
                },
                {
                  "internalType": "string",
                  "name": "path",
                  "type": "string"
                },
                {
                  "internalType": "uint64",
                  "name": "depth",
                  "type": "uint64"
                },
                {
                  "internalType": "bool",
                  "name": "isDir",
                  "type": "bool"
                },
                {
                  "internalType": "bool",
                  "name": "isSymlink",
                  "type": "bool"
                }
              ]
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "readFile",
          "outputs": [
            {
              "internalType": "string",
              "name": "data",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "readFileBinary",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "data",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "readLine",
          "outputs": [
            {
              "internalType": "string",
              "name": "line",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "linkPath",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "readLink",
          "outputs": [
            {
              "internalType": "string",
              "name": "targetPath",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "record"
        },
        {
          "inputs": [],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "recordLogs"
        },
        {
          "inputs": [
            {
              "internalType": "uint256",
              "name": "privateKey",
              "type": "uint256"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "rememberKey",
          "outputs": [
            {
              "internalType": "address",
              "name": "keyAddr",
              "type": "address"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            },
            {
              "internalType": "bool",
              "name": "recursive",
              "type": "bool"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "removeDir"
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "removeFile"
        },
        {
          "inputs": [],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "resumeGasMetering"
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "rpcAlias",
              "type": "string"
            }
          ],
          "stateMutability": "view",
          "type": "function",
          "name": "rpcUrl",
          "outputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [],
          "stateMutability": "view",
          "type": "function",
          "name": "rpcUrlStructs",
          "outputs": [
            {
              "internalType": "struct VmSafe.Rpc[]",
              "name": "urls",
              "type": "tuple[]",
              "components": [
                {
                  "internalType": "string",
                  "name": "key",
                  "type": "string"
                },
                {
                  "internalType": "string",
                  "name": "url",
                  "type": "string"
                }
              ]
            }
          ]
        },
        {
          "inputs": [],
          "stateMutability": "view",
          "type": "function",
          "name": "rpcUrls",
          "outputs": [
            {
              "internalType": "string[2][]",
              "name": "urls",
              "type": "string[2][]"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "objectKey",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "valueKey",
              "type": "string"
            },
            {
              "internalType": "address[]",
              "name": "values",
              "type": "address[]"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "serializeAddress",
          "outputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "objectKey",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "valueKey",
              "type": "string"
            },
            {
              "internalType": "address",
              "name": "value",
              "type": "address"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "serializeAddress",
          "outputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "objectKey",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "valueKey",
              "type": "string"
            },
            {
              "internalType": "bool[]",
              "name": "values",
              "type": "bool[]"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "serializeBool",
          "outputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "objectKey",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "valueKey",
              "type": "string"
            },
            {
              "internalType": "bool",
              "name": "value",
              "type": "bool"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "serializeBool",
          "outputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "objectKey",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "valueKey",
              "type": "string"
            },
            {
              "internalType": "bytes[]",
              "name": "values",
              "type": "bytes[]"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "serializeBytes",
          "outputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "objectKey",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "valueKey",
              "type": "string"
            },
            {
              "internalType": "bytes",
              "name": "value",
              "type": "bytes"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "serializeBytes",
          "outputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "objectKey",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "valueKey",
              "type": "string"
            },
            {
              "internalType": "bytes32[]",
              "name": "values",
              "type": "bytes32[]"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "serializeBytes32",
          "outputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "objectKey",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "valueKey",
              "type": "string"
            },
            {
              "internalType": "bytes32",
              "name": "value",
              "type": "bytes32"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "serializeBytes32",
          "outputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "objectKey",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "valueKey",
              "type": "string"
            },
            {
              "internalType": "int256",
              "name": "value",
              "type": "int256"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "serializeInt",
          "outputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "objectKey",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "valueKey",
              "type": "string"
            },
            {
              "internalType": "int256[]",
              "name": "values",
              "type": "int256[]"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "serializeInt",
          "outputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "objectKey",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "valueKey",
              "type": "string"
            },
            {
              "internalType": "string[]",
              "name": "values",
              "type": "string[]"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "serializeString",
          "outputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "objectKey",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "valueKey",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "value",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "serializeString",
          "outputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "objectKey",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "valueKey",
              "type": "string"
            },
            {
              "internalType": "uint256",
              "name": "value",
              "type": "uint256"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "serializeUint",
          "outputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "objectKey",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "valueKey",
              "type": "string"
            },
            {
              "internalType": "uint256[]",
              "name": "values",
              "type": "uint256[]"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "serializeUint",
          "outputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "name",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "value",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "setEnv"
        },
        {
          "inputs": [
            {
              "internalType": "uint256",
              "name": "privateKey",
              "type": "uint256"
            },
            {
              "internalType": "bytes32",
              "name": "digest",
              "type": "bytes32"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "sign",
          "outputs": [
            {
              "internalType": "uint8",
              "name": "v",
              "type": "uint8"
            },
            {
              "internalType": "bytes32",
              "name": "r",
              "type": "bytes32"
            },
            {
              "internalType": "bytes32",
              "name": "s",
              "type": "bytes32"
            }
          ]
        },
        {
          "inputs": [],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "startBroadcast"
        },
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "signer",
              "type": "address"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "startBroadcast"
        },
        {
          "inputs": [
            {
              "internalType": "uint256",
              "name": "privateKey",
              "type": "uint256"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "startBroadcast"
        },
        {
          "inputs": [],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "stopBroadcast"
        },
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "value",
              "type": "address"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "toString",
          "outputs": [
            {
              "internalType": "string",
              "name": "stringifiedValue",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "uint256",
              "name": "value",
              "type": "uint256"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "toString",
          "outputs": [
            {
              "internalType": "string",
              "name": "stringifiedValue",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "bytes",
              "name": "value",
              "type": "bytes"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "toString",
          "outputs": [
            {
              "internalType": "string",
              "name": "stringifiedValue",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "bool",
              "name": "value",
              "type": "bool"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "toString",
          "outputs": [
            {
              "internalType": "string",
              "name": "stringifiedValue",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "int256",
              "name": "value",
              "type": "int256"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "toString",
          "outputs": [
            {
              "internalType": "string",
              "name": "stringifiedValue",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "bytes32",
              "name": "value",
              "type": "bytes32"
            }
          ],
          "stateMutability": "pure",
          "type": "function",
          "name": "toString",
          "outputs": [
            {
              "internalType": "string",
              "name": "stringifiedValue",
              "type": "string"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "data",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "writeFile"
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            },
            {
              "internalType": "bytes",
              "name": "data",
              "type": "bytes"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "writeFileBinary"
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "valueKey",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "writeJson"
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "json",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "writeJson"
        },
        {
          "inputs": [
            {
              "internalType": "string",
              "name": "path",
              "type": "string"
            },
            {
              "internalType": "string",
              "name": "data",
              "type": "string"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "writeLine"
        }
      ],
      "devdoc": {
        "kind": "dev",
        "methods": {},
        "version": 1
      },
      "userdoc": {
        "kind": "user",
        "methods": {},
        "version": 1
      }
    },
    "settings": {
      "remappings": [
        "@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/",
        "@uniswap/v3-core/=lib_uniswap/v3-core/",
        "@uniswap/v3-periphery/=lib_uniswap/v3-periphery/",
        "ds-test/=lib/forge-std/lib/ds-test/src/",
        "forge-std/=lib/forge-std/src/",
        "openzeppelin-contracts/=lib/openzeppelin-contracts/",
        "v3-core/=lib_uniswap/v3-core/",
        "v3-periphery/libraries/=lib_uniswap/v3-periphery/contracts/libraries/"
      ],
      "optimizer": {
        "runs": 999999999,
        "details": {
          "peephole": true,
          "inliner": true,
          "jumpdestRemover": true,
          "orderLiterals": true,
          "deduplicate": true,
          "cse": true,
          "constantOptimizer": true,
          "yul": true,
          "yulDetails": {
            "stackAllocation": true,
            "optimizerSteps": "dhfoD[xarrscLMcCTU]uljmul:fDnTOcmu"
          }
        }
      },
      "metadata": {
        "bytecodeHash": "ipfs"
      },
      "compilationTarget": {
        "lib/forge-std/src/Vm.sol": "VmSafe"
      },
      "libraries": {}
    },
    "sources": {
      "lib/forge-std/src/Vm.sol": {
        "keccak256": "0xb569d0b4398fad95f508fb854e832143edf69a897af4250f5f60fe195a2066c5",
        "urls": [
          "bzz-raw://84b722ada97ea7bb841cdc0fa556aa36a02ff2d380fa24f6dc0717a71c6d9c7c",
          "dweb:/ipfs/QmfCH9Q4tvJhPM286GFsE4UCP4YncLpRu4Nwa2ZkHdRfbw"
        ],
        "license": "MIT"
      }
    },
    "version": 1
  },
  "ast": {
    "absolutePath": "lib/forge-std/src/Vm.sol",
    "id": 13465,
    "exportedSymbols": {
      "Vm": [
        13464
      ],
      "VmSafe": [
        12992
      ]
    },
    "nodeType": "SourceUnit",
    "src": "32:33276:14",
    "nodes": [
      {
        "id": 11939,
        "nodeType": "PragmaDirective",
        "src": "32:31:14",
        "nodes": [],
        "literals": [
          "solidity",
          ">=",
          "0.6",
          ".2",
          "<",
          "0.9",
          ".0"
        ]
      },
      {
        "id": 11940,
        "nodeType": "PragmaDirective",
        "src": "65:33:14",
        "nodes": [],
        "literals": [
          "experimental",
          "ABIEncoderV2"
        ]
      },
      {
        "id": 12992,
        "nodeType": "ContractDefinition",
        "src": "571:21124:14",
        "nodes": [
          {
            "id": 11946,
            "nodeType": "EnumDefinition",
            "src": "594:122:14",
            "nodes": [],
            "canonicalName": "VmSafe.CallerMode",
            "members": [
              {
                "id": 11941,
                "name": "None",
                "nameLocation": "620:4:14",
                "nodeType": "EnumValue",
                "src": "620:4:14"
              },
              {
                "id": 11942,
                "name": "Broadcast",
                "nameLocation": "634:9:14",
                "nodeType": "EnumValue",
                "src": "634:9:14"
              },
              {
                "id": 11943,
                "name": "RecurrentBroadcast",
                "nameLocation": "653:18:14",
                "nodeType": "EnumValue",
                "src": "653:18:14"
              },
              {
                "id": 11944,
                "name": "Prank",
                "nameLocation": "681:5:14",
                "nodeType": "EnumValue",
                "src": "681:5:14"
              },
              {
                "id": 11945,
                "name": "RecurrentPrank",
                "nameLocation": "696:14:14",
                "nodeType": "EnumValue",
                "src": "696:14:14"
              }
            ],
            "name": "CallerMode",
            "nameLocation": "599:10:14"
          },
          {
            "id": 11954,
            "nodeType": "StructDefinition",
            "src": "722:89:14",
            "nodes": [],
            "canonicalName": "VmSafe.Log",
            "members": [
              {
                "constant": false,
                "id": 11949,
                "mutability": "mutable",
                "name": "topics",
                "nameLocation": "753:6:14",
                "nodeType": "VariableDeclaration",
                "scope": 11954,
                "src": "743:16:14",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                  "typeString": "bytes32[]"
                },
                "typeName": {
                  "baseType": {
                    "id": 11947,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "743:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "id": 11948,
                  "nodeType": "ArrayTypeName",
                  "src": "743:9:14",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                    "typeString": "bytes32[]"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11951,
                "mutability": "mutable",
                "name": "data",
                "nameLocation": "775:4:14",
                "nodeType": "VariableDeclaration",
                "scope": 11954,
                "src": "769:10:14",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bytes_storage_ptr",
                  "typeString": "bytes"
                },
                "typeName": {
                  "id": 11950,
                  "name": "bytes",
                  "nodeType": "ElementaryTypeName",
                  "src": "769:5:14",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_storage_ptr",
                    "typeString": "bytes"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11953,
                "mutability": "mutable",
                "name": "emitter",
                "nameLocation": "797:7:14",
                "nodeType": "VariableDeclaration",
                "scope": 11954,
                "src": "789:15:14",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_address",
                  "typeString": "address"
                },
                "typeName": {
                  "id": 11952,
                  "name": "address",
                  "nodeType": "ElementaryTypeName",
                  "src": "789:7:14",
                  "stateMutability": "nonpayable",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  }
                },
                "visibility": "internal"
              }
            ],
            "name": "Log",
            "nameLocation": "729:3:14",
            "scope": 12992,
            "visibility": "public"
          },
          {
            "id": 11959,
            "nodeType": "StructDefinition",
            "src": "817:58:14",
            "nodes": [],
            "canonicalName": "VmSafe.Rpc",
            "members": [
              {
                "constant": false,
                "id": 11956,
                "mutability": "mutable",
                "name": "key",
                "nameLocation": "845:3:14",
                "nodeType": "VariableDeclaration",
                "scope": 11959,
                "src": "838:10:14",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_string_storage_ptr",
                  "typeString": "string"
                },
                "typeName": {
                  "id": 11955,
                  "name": "string",
                  "nodeType": "ElementaryTypeName",
                  "src": "838:6:14",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_storage_ptr",
                    "typeString": "string"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11958,
                "mutability": "mutable",
                "name": "url",
                "nameLocation": "865:3:14",
                "nodeType": "VariableDeclaration",
                "scope": 11959,
                "src": "858:10:14",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_string_storage_ptr",
                  "typeString": "string"
                },
                "typeName": {
                  "id": 11957,
                  "name": "string",
                  "nodeType": "ElementaryTypeName",
                  "src": "858:6:14",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_storage_ptr",
                    "typeString": "string"
                  }
                },
                "visibility": "internal"
              }
            ],
            "name": "Rpc",
            "nameLocation": "824:3:14",
            "scope": 12992,
            "visibility": "public"
          },
          {
            "id": 11970,
            "nodeType": "StructDefinition",
            "src": "881:139:14",
            "nodes": [],
            "canonicalName": "VmSafe.DirEntry",
            "members": [
              {
                "constant": false,
                "id": 11961,
                "mutability": "mutable",
                "name": "errorMessage",
                "nameLocation": "914:12:14",
                "nodeType": "VariableDeclaration",
                "scope": 11970,
                "src": "907:19:14",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_string_storage_ptr",
                  "typeString": "string"
                },
                "typeName": {
                  "id": 11960,
                  "name": "string",
                  "nodeType": "ElementaryTypeName",
                  "src": "907:6:14",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_storage_ptr",
                    "typeString": "string"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11963,
                "mutability": "mutable",
                "name": "path",
                "nameLocation": "943:4:14",
                "nodeType": "VariableDeclaration",
                "scope": 11970,
                "src": "936:11:14",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_string_storage_ptr",
                  "typeString": "string"
                },
                "typeName": {
                  "id": 11962,
                  "name": "string",
                  "nodeType": "ElementaryTypeName",
                  "src": "936:6:14",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_storage_ptr",
                    "typeString": "string"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11965,
                "mutability": "mutable",
                "name": "depth",
                "nameLocation": "964:5:14",
                "nodeType": "VariableDeclaration",
                "scope": 11970,
                "src": "957:12:14",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint64",
                  "typeString": "uint64"
                },
                "typeName": {
                  "id": 11964,
                  "name": "uint64",
                  "nodeType": "ElementaryTypeName",
                  "src": "957:6:14",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11967,
                "mutability": "mutable",
                "name": "isDir",
                "nameLocation": "984:5:14",
                "nodeType": "VariableDeclaration",
                "scope": 11970,
                "src": "979:10:14",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                },
                "typeName": {
                  "id": 11966,
                  "name": "bool",
                  "nodeType": "ElementaryTypeName",
                  "src": "979:4:14",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11969,
                "mutability": "mutable",
                "name": "isSymlink",
                "nameLocation": "1004:9:14",
                "nodeType": "VariableDeclaration",
                "scope": 11970,
                "src": "999:14:14",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                },
                "typeName": {
                  "id": 11968,
                  "name": "bool",
                  "nodeType": "ElementaryTypeName",
                  "src": "999:4:14",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  }
                },
                "visibility": "internal"
              }
            ],
            "name": "DirEntry",
            "nameLocation": "888:8:14",
            "scope": 12992,
            "visibility": "public"
          },
          {
            "id": 11985,
            "nodeType": "StructDefinition",
            "src": "1026:193:14",
            "nodes": [],
            "canonicalName": "VmSafe.FsMetadata",
            "members": [
              {
                "constant": false,
                "id": 11972,
                "mutability": "mutable",
                "name": "isDir",
                "nameLocation": "1059:5:14",
                "nodeType": "VariableDeclaration",
                "scope": 11985,
                "src": "1054:10:14",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                },
                "typeName": {
                  "id": 11971,
                  "name": "bool",
                  "nodeType": "ElementaryTypeName",
                  "src": "1054:4:14",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11974,
                "mutability": "mutable",
                "name": "isSymlink",
                "nameLocation": "1079:9:14",
                "nodeType": "VariableDeclaration",
                "scope": 11985,
                "src": "1074:14:14",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                },
                "typeName": {
                  "id": 11973,
                  "name": "bool",
                  "nodeType": "ElementaryTypeName",
                  "src": "1074:4:14",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11976,
                "mutability": "mutable",
                "name": "length",
                "nameLocation": "1106:6:14",
                "nodeType": "VariableDeclaration",
                "scope": 11985,
                "src": "1098:14:14",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11975,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "1098:7:14",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11978,
                "mutability": "mutable",
                "name": "readOnly",
                "nameLocation": "1127:8:14",
                "nodeType": "VariableDeclaration",
                "scope": 11985,
                "src": "1122:13:14",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                },
                "typeName": {
                  "id": 11977,
                  "name": "bool",
                  "nodeType": "ElementaryTypeName",
                  "src": "1122:4:14",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11980,
                "mutability": "mutable",
                "name": "modified",
                "nameLocation": "1153:8:14",
                "nodeType": "VariableDeclaration",
                "scope": 11985,
                "src": "1145:16:14",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11979,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "1145:7:14",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11982,
                "mutability": "mutable",
                "name": "accessed",
                "nameLocation": "1179:8:14",
                "nodeType": "VariableDeclaration",
                "scope": 11985,
                "src": "1171:16:14",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11981,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "1171:7:14",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "visibility": "internal"
              },
              {
                "constant": false,
                "id": 11984,
                "mutability": "mutable",
                "name": "created",
                "nameLocation": "1205:7:14",
                "nodeType": "VariableDeclaration",
                "scope": 11985,
                "src": "1197:15:14",
                "stateVariable": false,
                "storageLocation": "default",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                },
                "typeName": {
                  "id": 11983,
                  "name": "uint256",
                  "nodeType": "ElementaryTypeName",
                  "src": "1197:7:14",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "visibility": "internal"
              }
            ],
            "name": "FsMetadata",
            "nameLocation": "1033:10:14",
            "scope": 12992,
            "visibility": "public"
          },
          {
            "id": 11994,
            "nodeType": "FunctionDefinition",
            "src": "1269:81:14",
            "nodes": [],
            "functionSelector": "667f9d70",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "load",
            "nameLocation": "1278:4:14",
            "parameters": {
              "id": 11990,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11987,
                  "mutability": "mutable",
                  "name": "target",
                  "nameLocation": "1291:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 11994,
                  "src": "1283:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 11986,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1283:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11989,
                  "mutability": "mutable",
                  "name": "slot",
                  "nameLocation": "1307:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 11994,
                  "src": "1299:12:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 11988,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1299:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1282:30:14"
            },
            "returnParameters": {
              "id": 11993,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11992,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "1344:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 11994,
                  "src": "1336:12:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 11991,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1336:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1335:14:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12007,
            "nodeType": "FunctionDefinition",
            "src": "1373:104:14",
            "nodes": [],
            "functionSelector": "e341eaa4",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "sign",
            "nameLocation": "1382:4:14",
            "parameters": {
              "id": 11999,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11996,
                  "mutability": "mutable",
                  "name": "privateKey",
                  "nameLocation": "1395:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12007,
                  "src": "1387:18:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11995,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1387:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11998,
                  "mutability": "mutable",
                  "name": "digest",
                  "nameLocation": "1415:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12007,
                  "src": "1407:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 11997,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1407:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1386:36:14"
            },
            "returnParameters": {
              "id": 12006,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12001,
                  "mutability": "mutable",
                  "name": "v",
                  "nameLocation": "1452:1:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12007,
                  "src": "1446:7:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 12000,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "1446:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12003,
                  "mutability": "mutable",
                  "name": "r",
                  "nameLocation": "1463:1:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12007,
                  "src": "1455:9:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 12002,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1455:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12005,
                  "mutability": "mutable",
                  "name": "s",
                  "nameLocation": "1474:1:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12007,
                  "src": "1466:9:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 12004,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "1466:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1445:31:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12014,
            "nodeType": "FunctionDefinition",
            "src": "1530:74:14",
            "nodes": [],
            "functionSelector": "ffa18649",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "addr",
            "nameLocation": "1539:4:14",
            "parameters": {
              "id": 12010,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12009,
                  "mutability": "mutable",
                  "name": "privateKey",
                  "nameLocation": "1552:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12014,
                  "src": "1544:18:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12008,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1544:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1543:20:14"
            },
            "returnParameters": {
              "id": 12013,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12012,
                  "mutability": "mutable",
                  "name": "keyAddr",
                  "nameLocation": "1595:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12014,
                  "src": "1587:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 12011,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1587:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1586:17:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12021,
            "nodeType": "FunctionDefinition",
            "src": "1645:72:14",
            "nodes": [],
            "functionSelector": "2d0335ab",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getNonce",
            "nameLocation": "1654:8:14",
            "parameters": {
              "id": 12017,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12016,
                  "mutability": "mutable",
                  "name": "account",
                  "nameLocation": "1671:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12021,
                  "src": "1663:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 12015,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1663:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1662:17:14"
            },
            "returnParameters": {
              "id": 12020,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12019,
                  "mutability": "mutable",
                  "name": "nonce",
                  "nameLocation": "1710:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12021,
                  "src": "1703:12:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 12018,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "1703:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1702:14:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12029,
            "nodeType": "FunctionDefinition",
            "src": "1779:84:14",
            "nodes": [],
            "functionSelector": "89160467",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "ffi",
            "nameLocation": "1788:3:14",
            "parameters": {
              "id": 12025,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12024,
                  "mutability": "mutable",
                  "name": "commandInput",
                  "nameLocation": "1810:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12029,
                  "src": "1792:30:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                    "typeString": "string[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12022,
                      "name": "string",
                      "nodeType": "ElementaryTypeName",
                      "src": "1792:6:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_storage_ptr",
                        "typeString": "string"
                      }
                    },
                    "id": 12023,
                    "nodeType": "ArrayTypeName",
                    "src": "1792:8:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                      "typeString": "string[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1791:32:14"
            },
            "returnParameters": {
              "id": 12028,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12027,
                  "mutability": "mutable",
                  "name": "result",
                  "nameLocation": "1855:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12029,
                  "src": "1842:19:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 12026,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "1842:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1841:21:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12036,
            "nodeType": "FunctionDefinition",
            "src": "1902:70:14",
            "nodes": [],
            "functionSelector": "3d5923ee",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "setEnv",
            "nameLocation": "1911:6:14",
            "parameters": {
              "id": 12034,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12031,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "1934:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12036,
                  "src": "1918:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12030,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "1918:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12033,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "1956:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12036,
                  "src": "1940:21:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12032,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "1940:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1917:45:14"
            },
            "returnParameters": {
              "id": 12035,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1971:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12043,
            "nodeType": "FunctionDefinition",
            "src": "2031:74:14",
            "nodes": [],
            "functionSelector": "7ed1ec7d",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envBool",
            "nameLocation": "2040:7:14",
            "parameters": {
              "id": 12039,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12038,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "2064:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12043,
                  "src": "2048:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12037,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "2048:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2047:22:14"
            },
            "returnParameters": {
              "id": 12042,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12041,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "2098:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12043,
                  "src": "2093:10:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 12040,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "2093:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2092:12:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12050,
            "nodeType": "FunctionDefinition",
            "src": "2110:77:14",
            "nodes": [],
            "functionSelector": "c1978d1f",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envUint",
            "nameLocation": "2119:7:14",
            "parameters": {
              "id": 12046,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12045,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "2143:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12050,
                  "src": "2127:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12044,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "2127:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2126:22:14"
            },
            "returnParameters": {
              "id": 12049,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12048,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "2180:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12050,
                  "src": "2172:13:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12047,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2172:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2171:15:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12057,
            "nodeType": "FunctionDefinition",
            "src": "2192:75:14",
            "nodes": [],
            "functionSelector": "892a0c61",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envInt",
            "nameLocation": "2201:6:14",
            "parameters": {
              "id": 12053,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12052,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "2224:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12057,
                  "src": "2208:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12051,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "2208:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2207:22:14"
            },
            "returnParameters": {
              "id": 12056,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12055,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "2260:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12057,
                  "src": "2253:12:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_int256",
                    "typeString": "int256"
                  },
                  "typeName": {
                    "id": 12054,
                    "name": "int256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2253:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_int256",
                      "typeString": "int256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2252:14:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12064,
            "nodeType": "FunctionDefinition",
            "src": "2272:80:14",
            "nodes": [],
            "functionSelector": "350d56bf",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envAddress",
            "nameLocation": "2281:10:14",
            "parameters": {
              "id": 12060,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12059,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "2308:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12064,
                  "src": "2292:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12058,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "2292:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2291:22:14"
            },
            "returnParameters": {
              "id": 12063,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12062,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "2345:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12064,
                  "src": "2337:13:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 12061,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2337:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2336:15:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12071,
            "nodeType": "FunctionDefinition",
            "src": "2357:80:14",
            "nodes": [],
            "functionSelector": "97949042",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envBytes32",
            "nameLocation": "2366:10:14",
            "parameters": {
              "id": 12067,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12066,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "2393:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12071,
                  "src": "2377:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12065,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "2377:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2376:22:14"
            },
            "returnParameters": {
              "id": 12070,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12069,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "2430:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12071,
                  "src": "2422:13:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 12068,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2422:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2421:15:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12078,
            "nodeType": "FunctionDefinition",
            "src": "2442:85:14",
            "nodes": [],
            "functionSelector": "f877cb19",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envString",
            "nameLocation": "2451:9:14",
            "parameters": {
              "id": 12074,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12073,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "2477:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12078,
                  "src": "2461:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12072,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "2461:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2460:22:14"
            },
            "returnParameters": {
              "id": 12077,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12076,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "2520:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12078,
                  "src": "2506:19:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12075,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "2506:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2505:21:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12085,
            "nodeType": "FunctionDefinition",
            "src": "2532:83:14",
            "nodes": [],
            "functionSelector": "4d7baf06",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envBytes",
            "nameLocation": "2541:8:14",
            "parameters": {
              "id": 12081,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12080,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "2566:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12085,
                  "src": "2550:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12079,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "2550:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2549:22:14"
            },
            "returnParameters": {
              "id": 12084,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12083,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "2608:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12085,
                  "src": "2595:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 12082,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "2595:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2594:20:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12095,
            "nodeType": "FunctionDefinition",
            "src": "2665:106:14",
            "nodes": [],
            "functionSelector": "aaaddeaf",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envBool",
            "nameLocation": "2674:7:14",
            "parameters": {
              "id": 12090,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12087,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "2698:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12095,
                  "src": "2682:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12086,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "2682:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12089,
                  "mutability": "mutable",
                  "name": "delim",
                  "nameLocation": "2720:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12095,
                  "src": "2704:21:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12088,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "2704:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2681:45:14"
            },
            "returnParameters": {
              "id": 12094,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12093,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "2764:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12095,
                  "src": "2750:19:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr",
                    "typeString": "bool[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12091,
                      "name": "bool",
                      "nodeType": "ElementaryTypeName",
                      "src": "2750:4:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "id": 12092,
                    "nodeType": "ArrayTypeName",
                    "src": "2750:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bool_$dyn_storage_ptr",
                      "typeString": "bool[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2749:21:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12105,
            "nodeType": "FunctionDefinition",
            "src": "2776:109:14",
            "nodes": [],
            "functionSelector": "f3dec099",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envUint",
            "nameLocation": "2785:7:14",
            "parameters": {
              "id": 12100,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12097,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "2809:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12105,
                  "src": "2793:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12096,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "2793:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12099,
                  "mutability": "mutable",
                  "name": "delim",
                  "nameLocation": "2831:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12105,
                  "src": "2815:21:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12098,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "2815:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2792:45:14"
            },
            "returnParameters": {
              "id": 12104,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12103,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "2878:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12105,
                  "src": "2861:22:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12101,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "2861:7:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 12102,
                    "nodeType": "ArrayTypeName",
                    "src": "2861:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2860:24:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12115,
            "nodeType": "FunctionDefinition",
            "src": "2890:107:14",
            "nodes": [],
            "functionSelector": "42181150",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envInt",
            "nameLocation": "2899:6:14",
            "parameters": {
              "id": 12110,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12107,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "2922:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12115,
                  "src": "2906:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12106,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "2906:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12109,
                  "mutability": "mutable",
                  "name": "delim",
                  "nameLocation": "2944:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12115,
                  "src": "2928:21:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12108,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "2928:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2905:45:14"
            },
            "returnParameters": {
              "id": 12114,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12113,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "2990:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12115,
                  "src": "2974:21:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr",
                    "typeString": "int256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12111,
                      "name": "int256",
                      "nodeType": "ElementaryTypeName",
                      "src": "2974:6:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_int256",
                        "typeString": "int256"
                      }
                    },
                    "id": 12112,
                    "nodeType": "ArrayTypeName",
                    "src": "2974:8:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr",
                      "typeString": "int256[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "2973:23:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12125,
            "nodeType": "FunctionDefinition",
            "src": "3002:112:14",
            "nodes": [],
            "functionSelector": "ad31b9fa",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envAddress",
            "nameLocation": "3011:10:14",
            "parameters": {
              "id": 12120,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12117,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "3038:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12125,
                  "src": "3022:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12116,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "3022:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12119,
                  "mutability": "mutable",
                  "name": "delim",
                  "nameLocation": "3060:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12125,
                  "src": "3044:21:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12118,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "3044:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3021:45:14"
            },
            "returnParameters": {
              "id": 12124,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12123,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "3107:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12125,
                  "src": "3090:22:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12121,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "3090:7:14",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 12122,
                    "nodeType": "ArrayTypeName",
                    "src": "3090:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3089:24:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12135,
            "nodeType": "FunctionDefinition",
            "src": "3119:112:14",
            "nodes": [],
            "functionSelector": "5af231c1",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envBytes32",
            "nameLocation": "3128:10:14",
            "parameters": {
              "id": 12130,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12127,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "3155:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12135,
                  "src": "3139:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12126,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "3139:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12129,
                  "mutability": "mutable",
                  "name": "delim",
                  "nameLocation": "3177:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12135,
                  "src": "3161:21:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12128,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "3161:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3138:45:14"
            },
            "returnParameters": {
              "id": 12134,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12133,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "3224:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12135,
                  "src": "3207:22:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12131,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "3207:7:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 12132,
                    "nodeType": "ArrayTypeName",
                    "src": "3207:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3206:24:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12145,
            "nodeType": "FunctionDefinition",
            "src": "3236:110:14",
            "nodes": [],
            "functionSelector": "14b02bc9",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envString",
            "nameLocation": "3245:9:14",
            "parameters": {
              "id": 12140,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12137,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "3271:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12145,
                  "src": "3255:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12136,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "3255:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12139,
                  "mutability": "mutable",
                  "name": "delim",
                  "nameLocation": "3293:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12145,
                  "src": "3277:21:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12138,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "3277:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3254:45:14"
            },
            "returnParameters": {
              "id": 12144,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12143,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "3339:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12145,
                  "src": "3323:21:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                    "typeString": "string[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12141,
                      "name": "string",
                      "nodeType": "ElementaryTypeName",
                      "src": "3323:6:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_storage_ptr",
                        "typeString": "string"
                      }
                    },
                    "id": 12142,
                    "nodeType": "ArrayTypeName",
                    "src": "3323:8:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                      "typeString": "string[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3322:23:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12155,
            "nodeType": "FunctionDefinition",
            "src": "3351:108:14",
            "nodes": [],
            "functionSelector": "ddc2651b",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envBytes",
            "nameLocation": "3360:8:14",
            "parameters": {
              "id": 12150,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12147,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "3385:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12155,
                  "src": "3369:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12146,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "3369:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12149,
                  "mutability": "mutable",
                  "name": "delim",
                  "nameLocation": "3407:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12155,
                  "src": "3391:21:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12148,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "3391:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3368:45:14"
            },
            "returnParameters": {
              "id": 12154,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12153,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "3452:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12155,
                  "src": "3437:20:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
                    "typeString": "bytes[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12151,
                      "name": "bytes",
                      "nodeType": "ElementaryTypeName",
                      "src": "3437:5:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_storage_ptr",
                        "typeString": "bytes"
                      }
                    },
                    "id": 12152,
                    "nodeType": "ArrayTypeName",
                    "src": "3437:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr",
                      "typeString": "bytes[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3436:22:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12164,
            "nodeType": "FunctionDefinition",
            "src": "3517:86:14",
            "nodes": [],
            "functionSelector": "4777f3cf",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envOr",
            "nameLocation": "3526:5:14",
            "parameters": {
              "id": 12160,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12157,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "3548:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12164,
                  "src": "3532:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12156,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "3532:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12159,
                  "mutability": "mutable",
                  "name": "defaultValue",
                  "nameLocation": "3559:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12164,
                  "src": "3554:17:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 12158,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "3554:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3531:41:14"
            },
            "returnParameters": {
              "id": 12163,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12162,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "3596:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12164,
                  "src": "3591:10:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 12161,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "3591:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3590:12:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12173,
            "nodeType": "FunctionDefinition",
            "src": "3608:92:14",
            "nodes": [],
            "functionSelector": "5e97348f",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envOr",
            "nameLocation": "3617:5:14",
            "parameters": {
              "id": 12169,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12166,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "3639:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12173,
                  "src": "3623:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12165,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "3623:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12168,
                  "mutability": "mutable",
                  "name": "defaultValue",
                  "nameLocation": "3653:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12173,
                  "src": "3645:20:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12167,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3645:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3622:44:14"
            },
            "returnParameters": {
              "id": 12172,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12171,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "3693:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12173,
                  "src": "3685:13:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12170,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3685:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3684:15:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12182,
            "nodeType": "FunctionDefinition",
            "src": "3705:90:14",
            "nodes": [],
            "functionSelector": "bbcb713e",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envOr",
            "nameLocation": "3714:5:14",
            "parameters": {
              "id": 12178,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12175,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "3736:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12182,
                  "src": "3720:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12174,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "3720:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12177,
                  "mutability": "mutable",
                  "name": "defaultValue",
                  "nameLocation": "3749:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12182,
                  "src": "3742:19:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_int256",
                    "typeString": "int256"
                  },
                  "typeName": {
                    "id": 12176,
                    "name": "int256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3742:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_int256",
                      "typeString": "int256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3719:43:14"
            },
            "returnParameters": {
              "id": 12181,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12180,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "3788:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12182,
                  "src": "3781:12:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_int256",
                    "typeString": "int256"
                  },
                  "typeName": {
                    "id": 12179,
                    "name": "int256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3781:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_int256",
                      "typeString": "int256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3780:14:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12191,
            "nodeType": "FunctionDefinition",
            "src": "3800:92:14",
            "nodes": [],
            "functionSelector": "561fe540",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envOr",
            "nameLocation": "3809:5:14",
            "parameters": {
              "id": 12187,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12184,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "3831:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12191,
                  "src": "3815:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12183,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "3815:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12186,
                  "mutability": "mutable",
                  "name": "defaultValue",
                  "nameLocation": "3845:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12191,
                  "src": "3837:20:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 12185,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "3837:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3814:44:14"
            },
            "returnParameters": {
              "id": 12190,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12189,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "3885:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12191,
                  "src": "3877:13:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 12188,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "3877:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3876:15:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12200,
            "nodeType": "FunctionDefinition",
            "src": "3897:92:14",
            "nodes": [],
            "functionSelector": "b4a85892",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envOr",
            "nameLocation": "3906:5:14",
            "parameters": {
              "id": 12196,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12193,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "3928:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12200,
                  "src": "3912:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12192,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "3912:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12195,
                  "mutability": "mutable",
                  "name": "defaultValue",
                  "nameLocation": "3942:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12200,
                  "src": "3934:20:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 12194,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3934:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3911:44:14"
            },
            "returnParameters": {
              "id": 12199,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12198,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "3982:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12200,
                  "src": "3974:13:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 12197,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "3974:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "3973:15:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12209,
            "nodeType": "FunctionDefinition",
            "src": "3994:106:14",
            "nodes": [],
            "functionSelector": "d145736c",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envOr",
            "nameLocation": "4003:5:14",
            "parameters": {
              "id": 12205,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12202,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "4025:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12209,
                  "src": "4009:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12201,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4009:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12204,
                  "mutability": "mutable",
                  "name": "defaultValue",
                  "nameLocation": "4047:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12209,
                  "src": "4031:28:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12203,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4031:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4008:52:14"
            },
            "returnParameters": {
              "id": 12208,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12207,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "4093:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12209,
                  "src": "4079:19:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12206,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4079:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4078:21:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12218,
            "nodeType": "FunctionDefinition",
            "src": "4105:104:14",
            "nodes": [],
            "functionSelector": "b3e47705",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envOr",
            "nameLocation": "4114:5:14",
            "parameters": {
              "id": 12214,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12211,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "4136:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12218,
                  "src": "4120:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12210,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4120:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12213,
                  "mutability": "mutable",
                  "name": "defaultValue",
                  "nameLocation": "4157:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12218,
                  "src": "4142:27:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 12212,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "4142:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4119:51:14"
            },
            "returnParameters": {
              "id": 12217,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12216,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "4202:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12218,
                  "src": "4189:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 12215,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "4189:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4188:20:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12231,
            "nodeType": "FunctionDefinition",
            "src": "4277:145:14",
            "nodes": [],
            "functionSelector": "eb85e83b",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envOr",
            "nameLocation": "4286:5:14",
            "parameters": {
              "id": 12226,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12220,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "4308:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12231,
                  "src": "4292:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12219,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4292:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12222,
                  "mutability": "mutable",
                  "name": "delim",
                  "nameLocation": "4330:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12231,
                  "src": "4314:21:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12221,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4314:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12225,
                  "mutability": "mutable",
                  "name": "defaultValue",
                  "nameLocation": "4353:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12231,
                  "src": "4337:28:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bool_$dyn_calldata_ptr",
                    "typeString": "bool[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12223,
                      "name": "bool",
                      "nodeType": "ElementaryTypeName",
                      "src": "4337:4:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "id": 12224,
                    "nodeType": "ArrayTypeName",
                    "src": "4337:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bool_$dyn_storage_ptr",
                      "typeString": "bool[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4291:75:14"
            },
            "returnParameters": {
              "id": 12230,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12229,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "4415:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12231,
                  "src": "4401:19:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr",
                    "typeString": "bool[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12227,
                      "name": "bool",
                      "nodeType": "ElementaryTypeName",
                      "src": "4401:4:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "id": 12228,
                    "nodeType": "ArrayTypeName",
                    "src": "4401:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bool_$dyn_storage_ptr",
                      "typeString": "bool[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4400:21:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12244,
            "nodeType": "FunctionDefinition",
            "src": "4427:151:14",
            "nodes": [],
            "functionSelector": "74318528",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envOr",
            "nameLocation": "4436:5:14",
            "parameters": {
              "id": 12239,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12233,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "4458:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12244,
                  "src": "4442:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12232,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4442:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12235,
                  "mutability": "mutable",
                  "name": "delim",
                  "nameLocation": "4480:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12244,
                  "src": "4464:21:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12234,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4464:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12238,
                  "mutability": "mutable",
                  "name": "defaultValue",
                  "nameLocation": "4506:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12244,
                  "src": "4487:31:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12236,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "4487:7:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 12237,
                    "nodeType": "ArrayTypeName",
                    "src": "4487:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4441:78:14"
            },
            "returnParameters": {
              "id": 12243,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12242,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "4571:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12244,
                  "src": "4554:22:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12240,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "4554:7:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 12241,
                    "nodeType": "ArrayTypeName",
                    "src": "4554:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4553:24:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12257,
            "nodeType": "FunctionDefinition",
            "src": "4583:149:14",
            "nodes": [],
            "functionSelector": "4700d74b",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envOr",
            "nameLocation": "4592:5:14",
            "parameters": {
              "id": 12252,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12246,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "4614:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12257,
                  "src": "4598:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12245,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4598:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12248,
                  "mutability": "mutable",
                  "name": "delim",
                  "nameLocation": "4636:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12257,
                  "src": "4620:21:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12247,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4620:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12251,
                  "mutability": "mutable",
                  "name": "defaultValue",
                  "nameLocation": "4661:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12257,
                  "src": "4643:30:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_int256_$dyn_calldata_ptr",
                    "typeString": "int256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12249,
                      "name": "int256",
                      "nodeType": "ElementaryTypeName",
                      "src": "4643:6:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_int256",
                        "typeString": "int256"
                      }
                    },
                    "id": 12250,
                    "nodeType": "ArrayTypeName",
                    "src": "4643:8:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr",
                      "typeString": "int256[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4597:77:14"
            },
            "returnParameters": {
              "id": 12256,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12255,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "4725:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12257,
                  "src": "4709:21:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr",
                    "typeString": "int256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12253,
                      "name": "int256",
                      "nodeType": "ElementaryTypeName",
                      "src": "4709:6:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_int256",
                        "typeString": "int256"
                      }
                    },
                    "id": 12254,
                    "nodeType": "ArrayTypeName",
                    "src": "4709:8:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr",
                      "typeString": "int256[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4708:23:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12270,
            "nodeType": "FunctionDefinition",
            "src": "4737:151:14",
            "nodes": [],
            "functionSelector": "c74e9deb",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envOr",
            "nameLocation": "4746:5:14",
            "parameters": {
              "id": 12265,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12259,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "4768:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12270,
                  "src": "4752:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12258,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4752:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12261,
                  "mutability": "mutable",
                  "name": "delim",
                  "nameLocation": "4790:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12270,
                  "src": "4774:21:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12260,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4774:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12264,
                  "mutability": "mutable",
                  "name": "defaultValue",
                  "nameLocation": "4816:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12270,
                  "src": "4797:31:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12262,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "4797:7:14",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 12263,
                    "nodeType": "ArrayTypeName",
                    "src": "4797:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4751:78:14"
            },
            "returnParameters": {
              "id": 12269,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12268,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "4881:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12270,
                  "src": "4864:22:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12266,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "4864:7:14",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 12267,
                    "nodeType": "ArrayTypeName",
                    "src": "4864:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4863:24:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12283,
            "nodeType": "FunctionDefinition",
            "src": "4893:151:14",
            "nodes": [],
            "functionSelector": "2281f367",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envOr",
            "nameLocation": "4902:5:14",
            "parameters": {
              "id": 12278,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12272,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "4924:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12283,
                  "src": "4908:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12271,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4908:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12274,
                  "mutability": "mutable",
                  "name": "delim",
                  "nameLocation": "4946:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12283,
                  "src": "4930:21:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12273,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "4930:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12277,
                  "mutability": "mutable",
                  "name": "defaultValue",
                  "nameLocation": "4972:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12283,
                  "src": "4953:31:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12275,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "4953:7:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 12276,
                    "nodeType": "ArrayTypeName",
                    "src": "4953:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "4907:78:14"
            },
            "returnParameters": {
              "id": 12282,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12281,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "5037:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12283,
                  "src": "5020:22:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12279,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "5020:7:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 12280,
                    "nodeType": "ArrayTypeName",
                    "src": "5020:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "5019:24:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12296,
            "nodeType": "FunctionDefinition",
            "src": "5049:149:14",
            "nodes": [],
            "functionSelector": "859216bc",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envOr",
            "nameLocation": "5058:5:14",
            "parameters": {
              "id": 12291,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12285,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "5080:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12296,
                  "src": "5064:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12284,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "5064:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12287,
                  "mutability": "mutable",
                  "name": "delim",
                  "nameLocation": "5102:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12296,
                  "src": "5086:21:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12286,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "5086:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12290,
                  "mutability": "mutable",
                  "name": "defaultValue",
                  "nameLocation": "5127:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12296,
                  "src": "5109:30:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                    "typeString": "string[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12288,
                      "name": "string",
                      "nodeType": "ElementaryTypeName",
                      "src": "5109:6:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_storage_ptr",
                        "typeString": "string"
                      }
                    },
                    "id": 12289,
                    "nodeType": "ArrayTypeName",
                    "src": "5109:8:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                      "typeString": "string[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "5063:77:14"
            },
            "returnParameters": {
              "id": 12295,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12294,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "5191:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12296,
                  "src": "5175:21:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                    "typeString": "string[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12292,
                      "name": "string",
                      "nodeType": "ElementaryTypeName",
                      "src": "5175:6:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_storage_ptr",
                        "typeString": "string"
                      }
                    },
                    "id": 12293,
                    "nodeType": "ArrayTypeName",
                    "src": "5175:8:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                      "typeString": "string[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "5174:23:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12309,
            "nodeType": "FunctionDefinition",
            "src": "5203:147:14",
            "nodes": [],
            "functionSelector": "64bc3e64",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "envOr",
            "nameLocation": "5212:5:14",
            "parameters": {
              "id": 12304,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12298,
                  "mutability": "mutable",
                  "name": "name",
                  "nameLocation": "5234:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12309,
                  "src": "5218:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12297,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "5218:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12300,
                  "mutability": "mutable",
                  "name": "delim",
                  "nameLocation": "5256:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12309,
                  "src": "5240:21:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12299,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "5240:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12303,
                  "mutability": "mutable",
                  "name": "defaultValue",
                  "nameLocation": "5280:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12309,
                  "src": "5263:29:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr",
                    "typeString": "bytes[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12301,
                      "name": "bytes",
                      "nodeType": "ElementaryTypeName",
                      "src": "5263:5:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_storage_ptr",
                        "typeString": "bytes"
                      }
                    },
                    "id": 12302,
                    "nodeType": "ArrayTypeName",
                    "src": "5263:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr",
                      "typeString": "bytes[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "5217:76:14"
            },
            "returnParameters": {
              "id": 12308,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12307,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "5343:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12309,
                  "src": "5328:20:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
                    "typeString": "bytes[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12305,
                      "name": "bytes",
                      "nodeType": "ElementaryTypeName",
                      "src": "5328:5:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_storage_ptr",
                        "typeString": "bytes"
                      }
                    },
                    "id": 12306,
                    "nodeType": "ArrayTypeName",
                    "src": "5328:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr",
                      "typeString": "bytes[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "5327:22:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12312,
            "nodeType": "FunctionDefinition",
            "src": "5399:27:14",
            "nodes": [],
            "functionSelector": "266cf109",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "record",
            "nameLocation": "5408:6:14",
            "parameters": {
              "id": 12310,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "5414:2:14"
            },
            "returnParameters": {
              "id": 12311,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "5425:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12323,
            "nodeType": "FunctionDefinition",
            "src": "5523:109:14",
            "nodes": [],
            "functionSelector": "65bc9481",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "accesses",
            "nameLocation": "5532:8:14",
            "parameters": {
              "id": 12315,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12314,
                  "mutability": "mutable",
                  "name": "target",
                  "nameLocation": "5549:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12323,
                  "src": "5541:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 12313,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "5541:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "5540:16:14"
            },
            "returnParameters": {
              "id": 12322,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12318,
                  "mutability": "mutable",
                  "name": "readSlots",
                  "nameLocation": "5592:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12323,
                  "src": "5575:26:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12316,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "5575:7:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 12317,
                    "nodeType": "ArrayTypeName",
                    "src": "5575:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12321,
                  "mutability": "mutable",
                  "name": "writeSlots",
                  "nameLocation": "5620:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12323,
                  "src": "5603:27:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12319,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "5603:7:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 12320,
                    "nodeType": "ArrayTypeName",
                    "src": "5603:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "5574:57:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12330,
            "nodeType": "FunctionDefinition",
            "src": "5740:101:14",
            "nodes": [],
            "functionSelector": "8d1cc925",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getCode",
            "nameLocation": "5749:7:14",
            "parameters": {
              "id": 12326,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12325,
                  "mutability": "mutable",
                  "name": "artifactPath",
                  "nameLocation": "5773:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12330,
                  "src": "5757:28:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12324,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "5757:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "5756:30:14"
            },
            "returnParameters": {
              "id": 12329,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12328,
                  "mutability": "mutable",
                  "name": "creationBytecode",
                  "nameLocation": "5823:16:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12330,
                  "src": "5810:29:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 12327,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "5810:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "5809:31:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12337,
            "nodeType": "FunctionDefinition",
            "src": "5949:108:14",
            "nodes": [],
            "functionSelector": "3ebf73b4",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getDeployedCode",
            "nameLocation": "5958:15:14",
            "parameters": {
              "id": 12333,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12332,
                  "mutability": "mutable",
                  "name": "artifactPath",
                  "nameLocation": "5990:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12337,
                  "src": "5974:28:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12331,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "5974:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "5973:30:14"
            },
            "returnParameters": {
              "id": 12336,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12335,
                  "mutability": "mutable",
                  "name": "runtimeBytecode",
                  "nameLocation": "6040:15:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12337,
                  "src": "6027:28:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 12334,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "6027:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "6026:30:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12344,
            "nodeType": "FunctionDefinition",
            "src": "6102:67:14",
            "nodes": [],
            "functionSelector": "c657c718",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "label",
            "nameLocation": "6111:5:14",
            "parameters": {
              "id": 12342,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12339,
                  "mutability": "mutable",
                  "name": "account",
                  "nameLocation": "6125:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12344,
                  "src": "6117:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 12338,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "6117:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12341,
                  "mutability": "mutable",
                  "name": "newLabel",
                  "nameLocation": "6150:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12344,
                  "src": "6134:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12340,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "6134:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "6116:43:14"
            },
            "returnParameters": {
              "id": 12343,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "6168:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12351,
            "nodeType": "FunctionDefinition",
            "src": "6222:81:14",
            "nodes": [],
            "functionSelector": "28a249b0",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getLabel",
            "nameLocation": "6231:8:14",
            "parameters": {
              "id": 12347,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12346,
                  "mutability": "mutable",
                  "name": "account",
                  "nameLocation": "6248:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12351,
                  "src": "6240:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 12345,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "6240:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "6239:17:14"
            },
            "returnParameters": {
              "id": 12350,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12349,
                  "mutability": "mutable",
                  "name": "currentLabel",
                  "nameLocation": "6289:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12351,
                  "src": "6275:26:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12348,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "6275:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "6274:28:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12354,
            "nodeType": "FunctionDefinition",
            "src": "6470:30:14",
            "nodes": [],
            "functionSelector": "afc98040",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "broadcast",
            "nameLocation": "6479:9:14",
            "parameters": {
              "id": 12352,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "6488:2:14"
            },
            "returnParameters": {
              "id": 12353,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "6499:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12359,
            "nodeType": "FunctionDefinition",
            "src": "6659:44:14",
            "nodes": [],
            "functionSelector": "e6962cdb",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "broadcast",
            "nameLocation": "6668:9:14",
            "parameters": {
              "id": 12357,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12356,
                  "mutability": "mutable",
                  "name": "signer",
                  "nameLocation": "6686:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12359,
                  "src": "6678:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 12355,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "6678:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "6677:16:14"
            },
            "returnParameters": {
              "id": 12358,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "6702:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12364,
            "nodeType": "FunctionDefinition",
            "src": "6866:48:14",
            "nodes": [],
            "functionSelector": "f67a965b",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "broadcast",
            "nameLocation": "6875:9:14",
            "parameters": {
              "id": 12362,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12361,
                  "mutability": "mutable",
                  "name": "privateKey",
                  "nameLocation": "6893:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12364,
                  "src": "6885:18:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12360,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "6885:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "6884:20:14"
            },
            "returnParameters": {
              "id": 12363,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "6913:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12367,
            "nodeType": "FunctionDefinition",
            "src": "7087:35:14",
            "nodes": [],
            "functionSelector": "7fb5297f",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "startBroadcast",
            "nameLocation": "7096:14:14",
            "parameters": {
              "id": 12365,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "7110:2:14"
            },
            "returnParameters": {
              "id": 12366,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "7121:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12372,
            "nodeType": "FunctionDefinition",
            "src": "7273:49:14",
            "nodes": [],
            "functionSelector": "7fec2a8d",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "startBroadcast",
            "nameLocation": "7282:14:14",
            "parameters": {
              "id": 12370,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12369,
                  "mutability": "mutable",
                  "name": "signer",
                  "nameLocation": "7305:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12372,
                  "src": "7297:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 12368,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "7297:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "7296:16:14"
            },
            "returnParameters": {
              "id": 12371,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "7321:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12377,
            "nodeType": "FunctionDefinition",
            "src": "7477:53:14",
            "nodes": [],
            "functionSelector": "ce817d47",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "startBroadcast",
            "nameLocation": "7486:14:14",
            "parameters": {
              "id": 12375,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12374,
                  "mutability": "mutable",
                  "name": "privateKey",
                  "nameLocation": "7509:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12377,
                  "src": "7501:18:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12373,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "7501:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "7500:20:14"
            },
            "returnParameters": {
              "id": 12376,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "7529:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12380,
            "nodeType": "FunctionDefinition",
            "src": "7580:34:14",
            "nodes": [],
            "functionSelector": "76eadd36",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "stopBroadcast",
            "nameLocation": "7589:13:14",
            "parameters": {
              "id": 12378,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "7602:2:14"
            },
            "returnParameters": {
              "id": 12379,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "7613:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12385,
            "nodeType": "FunctionDefinition",
            "src": "7669:66:14",
            "nodes": [],
            "functionSelector": "d930a0e6",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "projectRoot",
            "nameLocation": "7678:11:14",
            "parameters": {
              "id": 12381,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "7689:2:14"
            },
            "returnParameters": {
              "id": 12384,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12383,
                  "mutability": "mutable",
                  "name": "path",
                  "nameLocation": "7729:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12385,
                  "src": "7715:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12382,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "7715:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "7714:20:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12392,
            "nodeType": "FunctionDefinition",
            "src": "7831:83:14",
            "nodes": [],
            "functionSelector": "60f9bb11",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "readFile",
            "nameLocation": "7840:8:14",
            "parameters": {
              "id": 12388,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12387,
                  "mutability": "mutable",
                  "name": "path",
                  "nameLocation": "7865:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12392,
                  "src": "7849:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12386,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "7849:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "7848:22:14"
            },
            "returnParameters": {
              "id": 12391,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12390,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "7908:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12392,
                  "src": "7894:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12389,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "7894:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "7893:20:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12399,
            "nodeType": "FunctionDefinition",
            "src": "8010:88:14",
            "nodes": [],
            "functionSelector": "16ed7bc4",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "readFileBinary",
            "nameLocation": "8019:14:14",
            "parameters": {
              "id": 12395,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12394,
                  "mutability": "mutable",
                  "name": "path",
                  "nameLocation": "8050:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12399,
                  "src": "8034:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12393,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "8034:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "8033:22:14"
            },
            "returnParameters": {
              "id": 12398,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12397,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "8092:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12399,
                  "src": "8079:17:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 12396,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "8079:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "8078:19:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12406,
            "nodeType": "FunctionDefinition",
            "src": "8145:83:14",
            "nodes": [],
            "functionSelector": "70f55728",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "readLine",
            "nameLocation": "8154:8:14",
            "parameters": {
              "id": 12402,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12401,
                  "mutability": "mutable",
                  "name": "path",
                  "nameLocation": "8179:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12406,
                  "src": "8163:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12400,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "8163:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "8162:22:14"
            },
            "returnParameters": {
              "id": 12405,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12404,
                  "mutability": "mutable",
                  "name": "line",
                  "nameLocation": "8222:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12406,
                  "src": "8208:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12403,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "8208:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "8207:20:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12413,
            "nodeType": "FunctionDefinition",
            "src": "8394:72:14",
            "nodes": [],
            "functionSelector": "897e0a97",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "writeFile",
            "nameLocation": "8403:9:14",
            "parameters": {
              "id": 12411,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12408,
                  "mutability": "mutable",
                  "name": "path",
                  "nameLocation": "8429:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12413,
                  "src": "8413:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12407,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "8413:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12410,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "8451:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12413,
                  "src": "8435:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12409,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "8435:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "8412:44:14"
            },
            "returnParameters": {
              "id": 12412,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "8465:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12420,
            "nodeType": "FunctionDefinition",
            "src": "8641:77:14",
            "nodes": [],
            "functionSelector": "1f21fc80",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "writeFileBinary",
            "nameLocation": "8650:15:14",
            "parameters": {
              "id": 12418,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12415,
                  "mutability": "mutable",
                  "name": "path",
                  "nameLocation": "8682:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12420,
                  "src": "8666:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12414,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "8666:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12417,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "8703:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12420,
                  "src": "8688:19:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 12416,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "8688:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "8665:43:14"
            },
            "returnParameters": {
              "id": 12419,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "8717:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12427,
            "nodeType": "FunctionDefinition",
            "src": "8836:72:14",
            "nodes": [],
            "functionSelector": "619d897f",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "writeLine",
            "nameLocation": "8845:9:14",
            "parameters": {
              "id": 12425,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12422,
                  "mutability": "mutable",
                  "name": "path",
                  "nameLocation": "8871:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12427,
                  "src": "8855:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12421,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "8855:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12424,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "8893:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12427,
                  "src": "8877:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12423,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "8877:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "8854:44:14"
            },
            "returnParameters": {
              "id": 12426,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "8907:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12432,
            "nodeType": "FunctionDefinition",
            "src": "9067:50:14",
            "nodes": [],
            "functionSelector": "48c3241f",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "closeFile",
            "nameLocation": "9076:9:14",
            "parameters": {
              "id": 12430,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12429,
                  "mutability": "mutable",
                  "name": "path",
                  "nameLocation": "9102:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12432,
                  "src": "9086:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12428,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "9086:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "9085:22:14"
            },
            "returnParameters": {
              "id": 12431,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "9116:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12437,
            "nodeType": "FunctionDefinition",
            "src": "9443:51:14",
            "nodes": [],
            "functionSelector": "f1afe04d",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "removeFile",
            "nameLocation": "9452:10:14",
            "parameters": {
              "id": 12435,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12434,
                  "mutability": "mutable",
                  "name": "path",
                  "nameLocation": "9479:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12437,
                  "src": "9463:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12433,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "9463:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "9462:22:14"
            },
            "returnParameters": {
              "id": 12436,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "9493:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12444,
            "nodeType": "FunctionDefinition",
            "src": "9892:66:14",
            "nodes": [],
            "functionSelector": "168b64d3",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "createDir",
            "nameLocation": "9901:9:14",
            "parameters": {
              "id": 12442,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12439,
                  "mutability": "mutable",
                  "name": "path",
                  "nameLocation": "9927:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12444,
                  "src": "9911:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12438,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "9911:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12441,
                  "mutability": "mutable",
                  "name": "recursive",
                  "nameLocation": "9938:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12444,
                  "src": "9933:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 12440,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "9933:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "9910:38:14"
            },
            "returnParameters": {
              "id": 12443,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "9957:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12451,
            "nodeType": "FunctionDefinition",
            "src": "10340:66:14",
            "nodes": [],
            "functionSelector": "45c62011",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "removeDir",
            "nameLocation": "10349:9:14",
            "parameters": {
              "id": 12449,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12446,
                  "mutability": "mutable",
                  "name": "path",
                  "nameLocation": "10375:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12451,
                  "src": "10359:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12445,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "10359:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12448,
                  "mutability": "mutable",
                  "name": "recursive",
                  "nameLocation": "10386:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12451,
                  "src": "10381:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 12447,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "10381:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "10358:38:14"
            },
            "returnParameters": {
              "id": 12450,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "10405:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12460,
            "nodeType": "FunctionDefinition",
            "src": "10653:89:14",
            "nodes": [],
            "functionSelector": "c4bc59e0",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "readDir",
            "nameLocation": "10662:7:14",
            "parameters": {
              "id": 12454,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12453,
                  "mutability": "mutable",
                  "name": "path",
                  "nameLocation": "10686:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12460,
                  "src": "10670:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12452,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "10670:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "10669:22:14"
            },
            "returnParameters": {
              "id": 12459,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12458,
                  "mutability": "mutable",
                  "name": "entries",
                  "nameLocation": "10733:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12460,
                  "src": "10715:25:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_struct$_DirEntry_$11970_memory_ptr_$dyn_memory_ptr",
                    "typeString": "struct VmSafe.DirEntry[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12456,
                      "nodeType": "UserDefinedTypeName",
                      "pathNode": {
                        "id": 12455,
                        "name": "DirEntry",
                        "nameLocations": [
                          "10715:8:14"
                        ],
                        "nodeType": "IdentifierPath",
                        "referencedDeclaration": 11970,
                        "src": "10715:8:14"
                      },
                      "referencedDeclaration": 11970,
                      "src": "10715:8:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_DirEntry_$11970_storage_ptr",
                        "typeString": "struct VmSafe.DirEntry"
                      }
                    },
                    "id": 12457,
                    "nodeType": "ArrayTypeName",
                    "src": "10715:10:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_DirEntry_$11970_storage_$dyn_storage_ptr",
                      "typeString": "struct VmSafe.DirEntry[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "10714:27:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12471,
            "nodeType": "FunctionDefinition",
            "src": "10747:106:14",
            "nodes": [],
            "functionSelector": "1497876c",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "readDir",
            "nameLocation": "10756:7:14",
            "parameters": {
              "id": 12465,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12462,
                  "mutability": "mutable",
                  "name": "path",
                  "nameLocation": "10780:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12471,
                  "src": "10764:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12461,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "10764:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12464,
                  "mutability": "mutable",
                  "name": "maxDepth",
                  "nameLocation": "10793:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12471,
                  "src": "10786:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 12463,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "10786:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "10763:39:14"
            },
            "returnParameters": {
              "id": 12470,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12469,
                  "mutability": "mutable",
                  "name": "entries",
                  "nameLocation": "10844:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12471,
                  "src": "10826:25:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_struct$_DirEntry_$11970_memory_ptr_$dyn_memory_ptr",
                    "typeString": "struct VmSafe.DirEntry[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12467,
                      "nodeType": "UserDefinedTypeName",
                      "pathNode": {
                        "id": 12466,
                        "name": "DirEntry",
                        "nameLocations": [
                          "10826:8:14"
                        ],
                        "nodeType": "IdentifierPath",
                        "referencedDeclaration": 11970,
                        "src": "10826:8:14"
                      },
                      "referencedDeclaration": 11970,
                      "src": "10826:8:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_DirEntry_$11970_storage_ptr",
                        "typeString": "struct VmSafe.DirEntry"
                      }
                    },
                    "id": 12468,
                    "nodeType": "ArrayTypeName",
                    "src": "10826:10:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_DirEntry_$11970_storage_$dyn_storage_ptr",
                      "typeString": "struct VmSafe.DirEntry[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "10825:27:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12484,
            "nodeType": "FunctionDefinition",
            "src": "10858:148:14",
            "nodes": [],
            "functionSelector": "8102d70d",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "readDir",
            "nameLocation": "10867:7:14",
            "parameters": {
              "id": 12478,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12473,
                  "mutability": "mutable",
                  "name": "path",
                  "nameLocation": "10891:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12484,
                  "src": "10875:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12472,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "10875:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12475,
                  "mutability": "mutable",
                  "name": "maxDepth",
                  "nameLocation": "10904:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12484,
                  "src": "10897:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 12474,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "10897:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12477,
                  "mutability": "mutable",
                  "name": "followLinks",
                  "nameLocation": "10919:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12484,
                  "src": "10914:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 12476,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "10914:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "10874:57:14"
            },
            "returnParameters": {
              "id": 12483,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12482,
                  "mutability": "mutable",
                  "name": "entries",
                  "nameLocation": "10997:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12484,
                  "src": "10979:25:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_struct$_DirEntry_$11970_memory_ptr_$dyn_memory_ptr",
                    "typeString": "struct VmSafe.DirEntry[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12480,
                      "nodeType": "UserDefinedTypeName",
                      "pathNode": {
                        "id": 12479,
                        "name": "DirEntry",
                        "nameLocations": [
                          "10979:8:14"
                        ],
                        "nodeType": "IdentifierPath",
                        "referencedDeclaration": 11970,
                        "src": "10979:8:14"
                      },
                      "referencedDeclaration": 11970,
                      "src": "10979:8:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_DirEntry_$11970_storage_ptr",
                        "typeString": "struct VmSafe.DirEntry"
                      }
                    },
                    "id": 12481,
                    "nodeType": "ArrayTypeName",
                    "src": "10979:10:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_DirEntry_$11970_storage_$dyn_storage_ptr",
                      "typeString": "struct VmSafe.DirEntry[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "10978:27:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12491,
            "nodeType": "FunctionDefinition",
            "src": "11260:93:14",
            "nodes": [],
            "functionSelector": "9f5684a2",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "readLink",
            "nameLocation": "11269:8:14",
            "parameters": {
              "id": 12487,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12486,
                  "mutability": "mutable",
                  "name": "linkPath",
                  "nameLocation": "11294:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12491,
                  "src": "11278:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12485,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "11278:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11277:26:14"
            },
            "returnParameters": {
              "id": 12490,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12489,
                  "mutability": "mutable",
                  "name": "targetPath",
                  "nameLocation": "11341:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12491,
                  "src": "11327:24:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12488,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "11327:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11326:26:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12499,
            "nodeType": "FunctionDefinition",
            "src": "11450:93:14",
            "nodes": [],
            "functionSelector": "af368a08",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "fsMetadata",
            "nameLocation": "11459:10:14",
            "parameters": {
              "id": 12494,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12493,
                  "mutability": "mutable",
                  "name": "path",
                  "nameLocation": "11486:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12499,
                  "src": "11470:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12492,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "11470:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11469:22:14"
            },
            "returnParameters": {
              "id": 12498,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12497,
                  "mutability": "mutable",
                  "name": "metadata",
                  "nameLocation": "11533:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12499,
                  "src": "11515:26:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_FsMetadata_$11985_memory_ptr",
                    "typeString": "struct VmSafe.FsMetadata"
                  },
                  "typeName": {
                    "id": 12496,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 12495,
                      "name": "FsMetadata",
                      "nameLocations": [
                        "11515:10:14"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 11985,
                      "src": "11515:10:14"
                    },
                    "referencedDeclaration": 11985,
                    "src": "11515:10:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_FsMetadata_$11985_storage_ptr",
                      "typeString": "struct VmSafe.FsMetadata"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11514:28:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12506,
            "nodeType": "FunctionDefinition",
            "src": "11583:88:14",
            "nodes": [],
            "functionSelector": "56ca623e",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "toString",
            "nameLocation": "11592:8:14",
            "parameters": {
              "id": 12502,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12501,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "11609:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12506,
                  "src": "11601:13:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 12500,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "11601:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11600:15:14"
            },
            "returnParameters": {
              "id": 12505,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12504,
                  "mutability": "mutable",
                  "name": "stringifiedValue",
                  "nameLocation": "11653:16:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12506,
                  "src": "11639:30:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12503,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "11639:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11638:32:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12513,
            "nodeType": "FunctionDefinition",
            "src": "11676:95:14",
            "nodes": [],
            "functionSelector": "71aad10d",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "toString",
            "nameLocation": "11685:8:14",
            "parameters": {
              "id": 12509,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12508,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "11709:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12513,
                  "src": "11694:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 12507,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "11694:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11693:22:14"
            },
            "returnParameters": {
              "id": 12512,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12511,
                  "mutability": "mutable",
                  "name": "stringifiedValue",
                  "nameLocation": "11753:16:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12513,
                  "src": "11739:30:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12510,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "11739:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11738:32:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12520,
            "nodeType": "FunctionDefinition",
            "src": "11776:88:14",
            "nodes": [],
            "functionSelector": "b11a19e8",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "toString",
            "nameLocation": "11785:8:14",
            "parameters": {
              "id": 12516,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12515,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "11802:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12520,
                  "src": "11794:13:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 12514,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "11794:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11793:15:14"
            },
            "returnParameters": {
              "id": 12519,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12518,
                  "mutability": "mutable",
                  "name": "stringifiedValue",
                  "nameLocation": "11846:16:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12520,
                  "src": "11832:30:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12517,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "11832:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11831:32:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12527,
            "nodeType": "FunctionDefinition",
            "src": "11869:85:14",
            "nodes": [],
            "functionSelector": "71dce7da",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "toString",
            "nameLocation": "11878:8:14",
            "parameters": {
              "id": 12523,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12522,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "11892:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12527,
                  "src": "11887:10:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 12521,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "11887:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11886:12:14"
            },
            "returnParameters": {
              "id": 12526,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12525,
                  "mutability": "mutable",
                  "name": "stringifiedValue",
                  "nameLocation": "11936:16:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12527,
                  "src": "11922:30:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12524,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "11922:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11921:32:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12534,
            "nodeType": "FunctionDefinition",
            "src": "11959:88:14",
            "nodes": [],
            "functionSelector": "6900a3ae",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "toString",
            "nameLocation": "11968:8:14",
            "parameters": {
              "id": 12530,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12529,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "11985:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12534,
                  "src": "11977:13:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12528,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "11977:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "11976:15:14"
            },
            "returnParameters": {
              "id": 12533,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12532,
                  "mutability": "mutable",
                  "name": "stringifiedValue",
                  "nameLocation": "12029:16:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12534,
                  "src": "12015:30:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12531,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "12015:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12014:32:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12541,
            "nodeType": "FunctionDefinition",
            "src": "12052:87:14",
            "nodes": [],
            "functionSelector": "a322c40e",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "toString",
            "nameLocation": "12061:8:14",
            "parameters": {
              "id": 12537,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12536,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "12077:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12541,
                  "src": "12070:12:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_int256",
                    "typeString": "int256"
                  },
                  "typeName": {
                    "id": 12535,
                    "name": "int256",
                    "nodeType": "ElementaryTypeName",
                    "src": "12070:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_int256",
                      "typeString": "int256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12069:14:14"
            },
            "returnParameters": {
              "id": 12540,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12539,
                  "mutability": "mutable",
                  "name": "stringifiedValue",
                  "nameLocation": "12121:16:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12541,
                  "src": "12107:30:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12538,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "12107:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12106:32:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12548,
            "nodeType": "FunctionDefinition",
            "src": "12180:103:14",
            "nodes": [],
            "functionSelector": "8f5d232d",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseBytes",
            "nameLocation": "12189:10:14",
            "parameters": {
              "id": 12544,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12543,
                  "mutability": "mutable",
                  "name": "stringifiedValue",
                  "nameLocation": "12216:16:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12548,
                  "src": "12200:32:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12542,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "12200:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12199:34:14"
            },
            "returnParameters": {
              "id": 12547,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12546,
                  "mutability": "mutable",
                  "name": "parsedValue",
                  "nameLocation": "12270:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12548,
                  "src": "12257:24:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 12545,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "12257:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12256:26:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12555,
            "nodeType": "FunctionDefinition",
            "src": "12288:100:14",
            "nodes": [],
            "functionSelector": "c6ce059d",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseAddress",
            "nameLocation": "12297:12:14",
            "parameters": {
              "id": 12551,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12550,
                  "mutability": "mutable",
                  "name": "stringifiedValue",
                  "nameLocation": "12326:16:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12555,
                  "src": "12310:32:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12549,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "12310:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12309:34:14"
            },
            "returnParameters": {
              "id": 12554,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12553,
                  "mutability": "mutable",
                  "name": "parsedValue",
                  "nameLocation": "12375:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12555,
                  "src": "12367:19:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 12552,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "12367:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12366:21:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12562,
            "nodeType": "FunctionDefinition",
            "src": "12393:97:14",
            "nodes": [],
            "functionSelector": "fa91454d",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseUint",
            "nameLocation": "12402:9:14",
            "parameters": {
              "id": 12558,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12557,
                  "mutability": "mutable",
                  "name": "stringifiedValue",
                  "nameLocation": "12428:16:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12562,
                  "src": "12412:32:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12556,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "12412:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12411:34:14"
            },
            "returnParameters": {
              "id": 12561,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12560,
                  "mutability": "mutable",
                  "name": "parsedValue",
                  "nameLocation": "12477:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12562,
                  "src": "12469:19:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12559,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "12469:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12468:21:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12569,
            "nodeType": "FunctionDefinition",
            "src": "12495:95:14",
            "nodes": [],
            "functionSelector": "42346c5e",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseInt",
            "nameLocation": "12504:8:14",
            "parameters": {
              "id": 12565,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12564,
                  "mutability": "mutable",
                  "name": "stringifiedValue",
                  "nameLocation": "12529:16:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12569,
                  "src": "12513:32:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12563,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "12513:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12512:34:14"
            },
            "returnParameters": {
              "id": 12568,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12567,
                  "mutability": "mutable",
                  "name": "parsedValue",
                  "nameLocation": "12577:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12569,
                  "src": "12570:18:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_int256",
                    "typeString": "int256"
                  },
                  "typeName": {
                    "id": 12566,
                    "name": "int256",
                    "nodeType": "ElementaryTypeName",
                    "src": "12570:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_int256",
                      "typeString": "int256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12569:20:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12576,
            "nodeType": "FunctionDefinition",
            "src": "12595:100:14",
            "nodes": [],
            "functionSelector": "087e6e81",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseBytes32",
            "nameLocation": "12604:12:14",
            "parameters": {
              "id": 12572,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12571,
                  "mutability": "mutable",
                  "name": "stringifiedValue",
                  "nameLocation": "12633:16:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12576,
                  "src": "12617:32:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12570,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "12617:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12616:34:14"
            },
            "returnParameters": {
              "id": 12575,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12574,
                  "mutability": "mutable",
                  "name": "parsedValue",
                  "nameLocation": "12682:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12576,
                  "src": "12674:19:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 12573,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "12674:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12673:21:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12583,
            "nodeType": "FunctionDefinition",
            "src": "12700:94:14",
            "nodes": [],
            "functionSelector": "974ef924",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseBool",
            "nameLocation": "12709:9:14",
            "parameters": {
              "id": 12579,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12578,
                  "mutability": "mutable",
                  "name": "stringifiedValue",
                  "nameLocation": "12735:16:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12583,
                  "src": "12719:32:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12577,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "12719:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12718:34:14"
            },
            "returnParameters": {
              "id": 12582,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12581,
                  "mutability": "mutable",
                  "name": "parsedValue",
                  "nameLocation": "12781:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12583,
                  "src": "12776:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 12580,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "12776:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12775:18:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12586,
            "nodeType": "FunctionDefinition",
            "src": "12838:31:14",
            "nodes": [],
            "functionSelector": "41af2f52",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "recordLogs",
            "nameLocation": "12847:10:14",
            "parameters": {
              "id": 12584,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "12857:2:14"
            },
            "returnParameters": {
              "id": 12585,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "12868:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12593,
            "nodeType": "FunctionDefinition",
            "src": "12908:64:14",
            "nodes": [],
            "functionSelector": "191553a4",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "getRecordedLogs",
            "nameLocation": "12917:15:14",
            "parameters": {
              "id": 12587,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "12932:2:14"
            },
            "returnParameters": {
              "id": 12592,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12591,
                  "mutability": "mutable",
                  "name": "logs",
                  "nameLocation": "12966:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12593,
                  "src": "12953:17:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_struct$_Log_$11954_memory_ptr_$dyn_memory_ptr",
                    "typeString": "struct VmSafe.Log[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12589,
                      "nodeType": "UserDefinedTypeName",
                      "pathNode": {
                        "id": 12588,
                        "name": "Log",
                        "nameLocations": [
                          "12953:3:14"
                        ],
                        "nodeType": "IdentifierPath",
                        "referencedDeclaration": 11954,
                        "src": "12953:3:14"
                      },
                      "referencedDeclaration": 11954,
                      "src": "12953:3:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_Log_$11954_storage_ptr",
                        "typeString": "struct VmSafe.Log"
                      }
                    },
                    "id": 12590,
                    "nodeType": "ArrayTypeName",
                    "src": "12953:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_Log_$11954_storage_$dyn_storage_ptr",
                      "typeString": "struct VmSafe.Log[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "12952:19:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12602,
            "nodeType": "FunctionDefinition",
            "src": "13107:102:14",
            "nodes": [],
            "functionSelector": "6229498b",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "deriveKey",
            "nameLocation": "13116:9:14",
            "parameters": {
              "id": 12598,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12595,
                  "mutability": "mutable",
                  "name": "mnemonic",
                  "nameLocation": "13142:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12602,
                  "src": "13126:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12594,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "13126:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12597,
                  "mutability": "mutable",
                  "name": "index",
                  "nameLocation": "13159:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12602,
                  "src": "13152:12:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint32",
                    "typeString": "uint32"
                  },
                  "typeName": {
                    "id": 12596,
                    "name": "uint32",
                    "nodeType": "ElementaryTypeName",
                    "src": "13152:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint32",
                      "typeString": "uint32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "13125:40:14"
            },
            "returnParameters": {
              "id": 12601,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12600,
                  "mutability": "mutable",
                  "name": "privateKey",
                  "nameLocation": "13197:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12602,
                  "src": "13189:18:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12599,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "13189:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "13188:20:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12613,
            "nodeType": "FunctionDefinition",
            "src": "13325:158:14",
            "nodes": [],
            "functionSelector": "6bcb2c1b",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "deriveKey",
            "nameLocation": "13334:9:14",
            "parameters": {
              "id": 12609,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12604,
                  "mutability": "mutable",
                  "name": "mnemonic",
                  "nameLocation": "13360:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12613,
                  "src": "13344:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12603,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "13344:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12606,
                  "mutability": "mutable",
                  "name": "derivationPath",
                  "nameLocation": "13386:14:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12613,
                  "src": "13370:30:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12605,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "13370:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12608,
                  "mutability": "mutable",
                  "name": "index",
                  "nameLocation": "13409:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12613,
                  "src": "13402:12:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint32",
                    "typeString": "uint32"
                  },
                  "typeName": {
                    "id": 12607,
                    "name": "uint32",
                    "nodeType": "ElementaryTypeName",
                    "src": "13402:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint32",
                      "typeString": "uint32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "13343:72:14"
            },
            "returnParameters": {
              "id": 12612,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12611,
                  "mutability": "mutable",
                  "name": "privateKey",
                  "nameLocation": "13471:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12613,
                  "src": "13463:18:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12610,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "13463:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "13462:20:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12620,
            "nodeType": "FunctionDefinition",
            "src": "13564:76:14",
            "nodes": [],
            "functionSelector": "22100064",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "rememberKey",
            "nameLocation": "13573:11:14",
            "parameters": {
              "id": 12616,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12615,
                  "mutability": "mutable",
                  "name": "privateKey",
                  "nameLocation": "13593:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12620,
                  "src": "13585:18:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12614,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "13585:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "13584:20:14"
            },
            "returnParameters": {
              "id": 12619,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12618,
                  "mutability": "mutable",
                  "name": "keyAddr",
                  "nameLocation": "13631:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12620,
                  "src": "13623:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 12617,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "13623:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "13622:17:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12629,
            "nodeType": "FunctionDefinition",
            "src": "14673:114:14",
            "nodes": [],
            "functionSelector": "85940ef1",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseJson",
            "nameLocation": "14682:9:14",
            "parameters": {
              "id": 12625,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12622,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "14708:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12629,
                  "src": "14692:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12621,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "14692:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12624,
                  "mutability": "mutable",
                  "name": "key",
                  "nameLocation": "14730:3:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12629,
                  "src": "14714:19:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12623,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "14714:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "14691:43:14"
            },
            "returnParameters": {
              "id": 12628,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12627,
                  "mutability": "mutable",
                  "name": "abiEncodedData",
                  "nameLocation": "14771:14:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12629,
                  "src": "14758:27:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 12626,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "14758:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "14757:29:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12636,
            "nodeType": "FunctionDefinition",
            "src": "14792:93:14",
            "nodes": [],
            "functionSelector": "6a82600a",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseJson",
            "nameLocation": "14801:9:14",
            "parameters": {
              "id": 12632,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12631,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "14827:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12636,
                  "src": "14811:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12630,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "14811:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "14810:22:14"
            },
            "returnParameters": {
              "id": 12635,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12634,
                  "mutability": "mutable",
                  "name": "abiEncodedData",
                  "nameLocation": "14869:14:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12636,
                  "src": "14856:27:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 12633,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "14856:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "14855:29:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12645,
            "nodeType": "FunctionDefinition",
            "src": "15273:84:14",
            "nodes": [],
            "functionSelector": "addde2b6",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseJsonUint",
            "nameLocation": "15282:13:14",
            "parameters": {
              "id": 12641,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12638,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12645,
                  "src": "15296:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12637,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "15296:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12640,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12645,
                  "src": "15313:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12639,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "15313:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15295:34:14"
            },
            "returnParameters": {
              "id": 12644,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12643,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12645,
                  "src": "15348:7:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12642,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "15348:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15347:9:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12655,
            "nodeType": "FunctionDefinition",
            "src": "15362:98:14",
            "nodes": [],
            "functionSelector": "522074ab",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseJsonUintArray",
            "nameLocation": "15371:18:14",
            "parameters": {
              "id": 12650,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12647,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12655,
                  "src": "15390:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12646,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "15390:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12649,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12655,
                  "src": "15407:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12648,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "15407:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15389:34:14"
            },
            "returnParameters": {
              "id": 12654,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12653,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12655,
                  "src": "15442:16:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12651,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "15442:7:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 12652,
                    "nodeType": "ArrayTypeName",
                    "src": "15442:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15441:18:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12664,
            "nodeType": "FunctionDefinition",
            "src": "15465:82:14",
            "nodes": [],
            "functionSelector": "7b048ccd",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseJsonInt",
            "nameLocation": "15474:12:14",
            "parameters": {
              "id": 12660,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12657,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12664,
                  "src": "15487:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12656,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "15487:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12659,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12664,
                  "src": "15504:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12658,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "15504:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15486:34:14"
            },
            "returnParameters": {
              "id": 12663,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12662,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12664,
                  "src": "15539:6:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_int256",
                    "typeString": "int256"
                  },
                  "typeName": {
                    "id": 12661,
                    "name": "int256",
                    "nodeType": "ElementaryTypeName",
                    "src": "15539:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_int256",
                      "typeString": "int256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15538:8:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12674,
            "nodeType": "FunctionDefinition",
            "src": "15552:96:14",
            "nodes": [],
            "functionSelector": "9983c28a",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseJsonIntArray",
            "nameLocation": "15561:17:14",
            "parameters": {
              "id": 12669,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12666,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12674,
                  "src": "15579:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12665,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "15579:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12668,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12674,
                  "src": "15596:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12667,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "15596:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15578:34:14"
            },
            "returnParameters": {
              "id": 12673,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12672,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12674,
                  "src": "15631:15:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr",
                    "typeString": "int256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12670,
                      "name": "int256",
                      "nodeType": "ElementaryTypeName",
                      "src": "15631:6:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_int256",
                        "typeString": "int256"
                      }
                    },
                    "id": 12671,
                    "nodeType": "ArrayTypeName",
                    "src": "15631:8:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr",
                      "typeString": "int256[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15630:17:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12683,
            "nodeType": "FunctionDefinition",
            "src": "15653:81:14",
            "nodes": [],
            "functionSelector": "9f86dc91",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseJsonBool",
            "nameLocation": "15662:13:14",
            "parameters": {
              "id": 12679,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12676,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12683,
                  "src": "15676:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12675,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "15676:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12678,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12683,
                  "src": "15693:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12677,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "15693:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15675:34:14"
            },
            "returnParameters": {
              "id": 12682,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12681,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12683,
                  "src": "15728:4:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 12680,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "15728:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15727:6:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12693,
            "nodeType": "FunctionDefinition",
            "src": "15739:95:14",
            "nodes": [],
            "functionSelector": "91f3b94f",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseJsonBoolArray",
            "nameLocation": "15748:18:14",
            "parameters": {
              "id": 12688,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12685,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12693,
                  "src": "15767:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12684,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "15767:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12687,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12693,
                  "src": "15784:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12686,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "15784:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15766:34:14"
            },
            "returnParameters": {
              "id": 12692,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12691,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12693,
                  "src": "15819:13:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr",
                    "typeString": "bool[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12689,
                      "name": "bool",
                      "nodeType": "ElementaryTypeName",
                      "src": "15819:4:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "id": 12690,
                    "nodeType": "ArrayTypeName",
                    "src": "15819:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bool_$dyn_storage_ptr",
                      "typeString": "bool[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15818:15:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12702,
            "nodeType": "FunctionDefinition",
            "src": "15839:87:14",
            "nodes": [],
            "functionSelector": "1e19e657",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseJsonAddress",
            "nameLocation": "15848:16:14",
            "parameters": {
              "id": 12698,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12695,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12702,
                  "src": "15865:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12694,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "15865:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12697,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12702,
                  "src": "15882:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12696,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "15882:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15864:34:14"
            },
            "returnParameters": {
              "id": 12701,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12700,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12702,
                  "src": "15917:7:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 12699,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "15917:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15916:9:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12712,
            "nodeType": "FunctionDefinition",
            "src": "15931:101:14",
            "nodes": [],
            "functionSelector": "2fce7883",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseJsonAddressArray",
            "nameLocation": "15940:21:14",
            "parameters": {
              "id": 12707,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12704,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12712,
                  "src": "15962:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12703,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "15962:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12706,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12712,
                  "src": "15979:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12705,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "15979:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "15961:34:14"
            },
            "returnParameters": {
              "id": 12711,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12710,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12712,
                  "src": "16014:16:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12708,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "16014:7:14",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 12709,
                    "nodeType": "ArrayTypeName",
                    "src": "16014:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16013:18:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12721,
            "nodeType": "FunctionDefinition",
            "src": "16037:92:14",
            "nodes": [],
            "functionSelector": "49c4fac8",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseJsonString",
            "nameLocation": "16046:15:14",
            "parameters": {
              "id": 12717,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12714,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12721,
                  "src": "16062:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12713,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "16062:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12716,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12721,
                  "src": "16079:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12715,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "16079:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16061:34:14"
            },
            "returnParameters": {
              "id": 12720,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12719,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12721,
                  "src": "16114:13:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12718,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "16114:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16113:15:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12731,
            "nodeType": "FunctionDefinition",
            "src": "16134:99:14",
            "nodes": [],
            "functionSelector": "498fdcf4",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseJsonStringArray",
            "nameLocation": "16143:20:14",
            "parameters": {
              "id": 12726,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12723,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12731,
                  "src": "16164:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12722,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "16164:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12725,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12731,
                  "src": "16181:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12724,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "16181:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16163:34:14"
            },
            "returnParameters": {
              "id": 12730,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12729,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12731,
                  "src": "16216:15:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr",
                    "typeString": "string[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12727,
                      "name": "string",
                      "nodeType": "ElementaryTypeName",
                      "src": "16216:6:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_storage_ptr",
                        "typeString": "string"
                      }
                    },
                    "id": 12728,
                    "nodeType": "ArrayTypeName",
                    "src": "16216:8:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                      "typeString": "string[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16215:17:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12740,
            "nodeType": "FunctionDefinition",
            "src": "16238:90:14",
            "nodes": [],
            "functionSelector": "fd921be8",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseJsonBytes",
            "nameLocation": "16247:14:14",
            "parameters": {
              "id": 12736,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12733,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12740,
                  "src": "16262:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12732,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "16262:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12735,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12740,
                  "src": "16279:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12734,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "16279:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16261:34:14"
            },
            "returnParameters": {
              "id": 12739,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12738,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12740,
                  "src": "16314:12:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_memory_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 12737,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "16314:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16313:14:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12750,
            "nodeType": "FunctionDefinition",
            "src": "16333:97:14",
            "nodes": [],
            "functionSelector": "6631aa99",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseJsonBytesArray",
            "nameLocation": "16342:19:14",
            "parameters": {
              "id": 12745,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12742,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12750,
                  "src": "16362:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12741,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "16362:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12744,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12750,
                  "src": "16379:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12743,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "16379:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16361:34:14"
            },
            "returnParameters": {
              "id": 12749,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12748,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12750,
                  "src": "16414:14:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
                    "typeString": "bytes[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12746,
                      "name": "bytes",
                      "nodeType": "ElementaryTypeName",
                      "src": "16414:5:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_storage_ptr",
                        "typeString": "bytes"
                      }
                    },
                    "id": 12747,
                    "nodeType": "ArrayTypeName",
                    "src": "16414:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr",
                      "typeString": "bytes[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16413:16:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12759,
            "nodeType": "FunctionDefinition",
            "src": "16435:87:14",
            "nodes": [],
            "functionSelector": "1777e59d",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseJsonBytes32",
            "nameLocation": "16444:16:14",
            "parameters": {
              "id": 12755,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12752,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12759,
                  "src": "16461:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12751,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "16461:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12754,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12759,
                  "src": "16478:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12753,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "16478:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16460:34:14"
            },
            "returnParameters": {
              "id": 12758,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12757,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12759,
                  "src": "16513:7:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 12756,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "16513:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16512:9:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12769,
            "nodeType": "FunctionDefinition",
            "src": "16527:101:14",
            "nodes": [],
            "functionSelector": "91c75bc3",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "parseJsonBytes32Array",
            "nameLocation": "16536:21:14",
            "parameters": {
              "id": 12764,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12761,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12769,
                  "src": "16558:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12760,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "16558:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12763,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12769,
                  "src": "16575:15:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12762,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "16575:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16557:34:14"
            },
            "returnParameters": {
              "id": 12768,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12767,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 12769,
                  "src": "16610:16:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12765,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "16610:7:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 12766,
                    "nodeType": "ArrayTypeName",
                    "src": "16610:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16609:18:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12780,
            "nodeType": "FunctionDefinition",
            "src": "16824:142:14",
            "nodes": [],
            "functionSelector": "ac22e971",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "serializeBool",
            "nameLocation": "16833:13:14",
            "parameters": {
              "id": 12776,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12771,
                  "mutability": "mutable",
                  "name": "objectKey",
                  "nameLocation": "16863:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12780,
                  "src": "16847:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12770,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "16847:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12773,
                  "mutability": "mutable",
                  "name": "valueKey",
                  "nameLocation": "16890:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12780,
                  "src": "16874:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12772,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "16874:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12775,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "16905:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12780,
                  "src": "16900:10:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 12774,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "16900:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16846:65:14"
            },
            "returnParameters": {
              "id": 12779,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12778,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "16960:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12780,
                  "src": "16946:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12777,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "16946:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16945:20:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12791,
            "nodeType": "FunctionDefinition",
            "src": "16971:145:14",
            "nodes": [],
            "functionSelector": "129e9002",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "serializeUint",
            "nameLocation": "16980:13:14",
            "parameters": {
              "id": 12787,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12782,
                  "mutability": "mutable",
                  "name": "objectKey",
                  "nameLocation": "17010:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12791,
                  "src": "16994:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12781,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "16994:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12784,
                  "mutability": "mutable",
                  "name": "valueKey",
                  "nameLocation": "17037:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12791,
                  "src": "17021:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12783,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17021:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12786,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "17055:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12791,
                  "src": "17047:13:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12785,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "17047:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "16993:68:14"
            },
            "returnParameters": {
              "id": 12790,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12789,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "17110:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12791,
                  "src": "17096:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12788,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17096:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17095:20:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12802,
            "nodeType": "FunctionDefinition",
            "src": "17121:143:14",
            "nodes": [],
            "functionSelector": "3f33db60",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "serializeInt",
            "nameLocation": "17130:12:14",
            "parameters": {
              "id": 12798,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12793,
                  "mutability": "mutable",
                  "name": "objectKey",
                  "nameLocation": "17159:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12802,
                  "src": "17143:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12792,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17143:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12795,
                  "mutability": "mutable",
                  "name": "valueKey",
                  "nameLocation": "17186:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12802,
                  "src": "17170:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12794,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17170:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12797,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "17203:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12802,
                  "src": "17196:12:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_int256",
                    "typeString": "int256"
                  },
                  "typeName": {
                    "id": 12796,
                    "name": "int256",
                    "nodeType": "ElementaryTypeName",
                    "src": "17196:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_int256",
                      "typeString": "int256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17142:67:14"
            },
            "returnParameters": {
              "id": 12801,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12800,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "17258:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12802,
                  "src": "17244:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12799,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17244:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17243:20:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12813,
            "nodeType": "FunctionDefinition",
            "src": "17269:148:14",
            "nodes": [],
            "functionSelector": "972c6062",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "serializeAddress",
            "nameLocation": "17278:16:14",
            "parameters": {
              "id": 12809,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12804,
                  "mutability": "mutable",
                  "name": "objectKey",
                  "nameLocation": "17311:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12813,
                  "src": "17295:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12803,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17295:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12806,
                  "mutability": "mutable",
                  "name": "valueKey",
                  "nameLocation": "17338:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12813,
                  "src": "17322:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12805,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17322:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12808,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "17356:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12813,
                  "src": "17348:13:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 12807,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "17348:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17294:68:14"
            },
            "returnParameters": {
              "id": 12812,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12811,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "17411:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12813,
                  "src": "17397:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12810,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17397:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17396:20:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12824,
            "nodeType": "FunctionDefinition",
            "src": "17422:148:14",
            "nodes": [],
            "functionSelector": "2d812b44",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "serializeBytes32",
            "nameLocation": "17431:16:14",
            "parameters": {
              "id": 12820,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12815,
                  "mutability": "mutable",
                  "name": "objectKey",
                  "nameLocation": "17464:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12824,
                  "src": "17448:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12814,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17448:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12817,
                  "mutability": "mutable",
                  "name": "valueKey",
                  "nameLocation": "17491:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12824,
                  "src": "17475:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12816,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17475:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12819,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "17509:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12824,
                  "src": "17501:13:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 12818,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "17501:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17447:68:14"
            },
            "returnParameters": {
              "id": 12823,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12822,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "17564:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12824,
                  "src": "17550:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12821,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17550:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17549:20:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12835,
            "nodeType": "FunctionDefinition",
            "src": "17575:155:14",
            "nodes": [],
            "functionSelector": "88da6d35",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "serializeString",
            "nameLocation": "17584:15:14",
            "parameters": {
              "id": 12831,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12826,
                  "mutability": "mutable",
                  "name": "objectKey",
                  "nameLocation": "17616:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12835,
                  "src": "17600:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12825,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17600:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12828,
                  "mutability": "mutable",
                  "name": "valueKey",
                  "nameLocation": "17643:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12835,
                  "src": "17627:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12827,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17627:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12830,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "17669:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12835,
                  "src": "17653:21:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12829,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17653:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17599:76:14"
            },
            "returnParameters": {
              "id": 12834,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12833,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "17724:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12835,
                  "src": "17710:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12832,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17710:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17709:20:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12846,
            "nodeType": "FunctionDefinition",
            "src": "17735:153:14",
            "nodes": [],
            "functionSelector": "f21d52c7",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "serializeBytes",
            "nameLocation": "17744:14:14",
            "parameters": {
              "id": 12842,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12837,
                  "mutability": "mutable",
                  "name": "objectKey",
                  "nameLocation": "17775:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12846,
                  "src": "17759:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12836,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17759:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12839,
                  "mutability": "mutable",
                  "name": "valueKey",
                  "nameLocation": "17802:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12846,
                  "src": "17786:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12838,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17786:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12841,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "17827:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12846,
                  "src": "17812:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 12840,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "17812:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17758:75:14"
            },
            "returnParameters": {
              "id": 12845,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12844,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "17882:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12846,
                  "src": "17868:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12843,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17868:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17867:20:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12858,
            "nodeType": "FunctionDefinition",
            "src": "17894:154:14",
            "nodes": [],
            "functionSelector": "92925aa1",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "serializeBool",
            "nameLocation": "17903:13:14",
            "parameters": {
              "id": 12854,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12848,
                  "mutability": "mutable",
                  "name": "objectKey",
                  "nameLocation": "17933:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12858,
                  "src": "17917:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12847,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17917:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12850,
                  "mutability": "mutable",
                  "name": "valueKey",
                  "nameLocation": "17960:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12858,
                  "src": "17944:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12849,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "17944:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12853,
                  "mutability": "mutable",
                  "name": "values",
                  "nameLocation": "17986:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12858,
                  "src": "17970:22:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bool_$dyn_calldata_ptr",
                    "typeString": "bool[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12851,
                      "name": "bool",
                      "nodeType": "ElementaryTypeName",
                      "src": "17970:4:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "id": 12852,
                    "nodeType": "ArrayTypeName",
                    "src": "17970:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bool_$dyn_storage_ptr",
                      "typeString": "bool[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "17916:77:14"
            },
            "returnParameters": {
              "id": 12857,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12856,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "18042:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12858,
                  "src": "18028:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12855,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18028:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "18027:20:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12870,
            "nodeType": "FunctionDefinition",
            "src": "18053:157:14",
            "nodes": [],
            "functionSelector": "fee9a469",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "serializeUint",
            "nameLocation": "18062:13:14",
            "parameters": {
              "id": 12866,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12860,
                  "mutability": "mutable",
                  "name": "objectKey",
                  "nameLocation": "18092:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12870,
                  "src": "18076:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12859,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18076:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12862,
                  "mutability": "mutable",
                  "name": "valueKey",
                  "nameLocation": "18119:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12870,
                  "src": "18103:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12861,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18103:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12865,
                  "mutability": "mutable",
                  "name": "values",
                  "nameLocation": "18148:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12870,
                  "src": "18129:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12863,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "18129:7:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 12864,
                    "nodeType": "ArrayTypeName",
                    "src": "18129:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "18075:80:14"
            },
            "returnParameters": {
              "id": 12869,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12868,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "18204:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12870,
                  "src": "18190:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12867,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18190:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "18189:20:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12882,
            "nodeType": "FunctionDefinition",
            "src": "18215:155:14",
            "nodes": [],
            "functionSelector": "7676e127",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "serializeInt",
            "nameLocation": "18224:12:14",
            "parameters": {
              "id": 12878,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12872,
                  "mutability": "mutable",
                  "name": "objectKey",
                  "nameLocation": "18253:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12882,
                  "src": "18237:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12871,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18237:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12874,
                  "mutability": "mutable",
                  "name": "valueKey",
                  "nameLocation": "18280:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12882,
                  "src": "18264:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12873,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18264:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12877,
                  "mutability": "mutable",
                  "name": "values",
                  "nameLocation": "18308:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12882,
                  "src": "18290:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_int256_$dyn_calldata_ptr",
                    "typeString": "int256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12875,
                      "name": "int256",
                      "nodeType": "ElementaryTypeName",
                      "src": "18290:6:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_int256",
                        "typeString": "int256"
                      }
                    },
                    "id": 12876,
                    "nodeType": "ArrayTypeName",
                    "src": "18290:8:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr",
                      "typeString": "int256[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "18236:79:14"
            },
            "returnParameters": {
              "id": 12881,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12880,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "18364:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12882,
                  "src": "18350:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12879,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18350:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "18349:20:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12894,
            "nodeType": "FunctionDefinition",
            "src": "18375:160:14",
            "nodes": [],
            "functionSelector": "1e356e1a",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "serializeAddress",
            "nameLocation": "18384:16:14",
            "parameters": {
              "id": 12890,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12884,
                  "mutability": "mutable",
                  "name": "objectKey",
                  "nameLocation": "18417:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12894,
                  "src": "18401:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12883,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18401:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12886,
                  "mutability": "mutable",
                  "name": "valueKey",
                  "nameLocation": "18444:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12894,
                  "src": "18428:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12885,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18428:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12889,
                  "mutability": "mutable",
                  "name": "values",
                  "nameLocation": "18473:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12894,
                  "src": "18454:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12887,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "18454:7:14",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 12888,
                    "nodeType": "ArrayTypeName",
                    "src": "18454:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "18400:80:14"
            },
            "returnParameters": {
              "id": 12893,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12892,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "18529:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12894,
                  "src": "18515:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12891,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18515:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "18514:20:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12906,
            "nodeType": "FunctionDefinition",
            "src": "18540:160:14",
            "nodes": [],
            "functionSelector": "201e43e2",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "serializeBytes32",
            "nameLocation": "18549:16:14",
            "parameters": {
              "id": 12902,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12896,
                  "mutability": "mutable",
                  "name": "objectKey",
                  "nameLocation": "18582:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12906,
                  "src": "18566:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12895,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18566:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12898,
                  "mutability": "mutable",
                  "name": "valueKey",
                  "nameLocation": "18609:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12906,
                  "src": "18593:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12897,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18593:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12901,
                  "mutability": "mutable",
                  "name": "values",
                  "nameLocation": "18638:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12906,
                  "src": "18619:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes32_$dyn_calldata_ptr",
                    "typeString": "bytes32[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12899,
                      "name": "bytes32",
                      "nodeType": "ElementaryTypeName",
                      "src": "18619:7:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "id": 12900,
                    "nodeType": "ArrayTypeName",
                    "src": "18619:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr",
                      "typeString": "bytes32[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "18565:80:14"
            },
            "returnParameters": {
              "id": 12905,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12904,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "18694:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12906,
                  "src": "18680:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12903,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18680:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "18679:20:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12918,
            "nodeType": "FunctionDefinition",
            "src": "18705:158:14",
            "nodes": [],
            "functionSelector": "561cd6f3",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "serializeString",
            "nameLocation": "18714:15:14",
            "parameters": {
              "id": 12914,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12908,
                  "mutability": "mutable",
                  "name": "objectKey",
                  "nameLocation": "18746:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12918,
                  "src": "18730:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12907,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18730:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12910,
                  "mutability": "mutable",
                  "name": "valueKey",
                  "nameLocation": "18773:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12918,
                  "src": "18757:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12909,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18757:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12913,
                  "mutability": "mutable",
                  "name": "values",
                  "nameLocation": "18801:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12918,
                  "src": "18783:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr",
                    "typeString": "string[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12911,
                      "name": "string",
                      "nodeType": "ElementaryTypeName",
                      "src": "18783:6:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_storage_ptr",
                        "typeString": "string"
                      }
                    },
                    "id": 12912,
                    "nodeType": "ArrayTypeName",
                    "src": "18783:8:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
                      "typeString": "string[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "18729:79:14"
            },
            "returnParameters": {
              "id": 12917,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12916,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "18857:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12918,
                  "src": "18843:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12915,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18843:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "18842:20:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12930,
            "nodeType": "FunctionDefinition",
            "src": "18868:156:14",
            "nodes": [],
            "functionSelector": "9884b232",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "serializeBytes",
            "nameLocation": "18877:14:14",
            "parameters": {
              "id": 12926,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12920,
                  "mutability": "mutable",
                  "name": "objectKey",
                  "nameLocation": "18908:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12930,
                  "src": "18892:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12919,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18892:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12922,
                  "mutability": "mutable",
                  "name": "valueKey",
                  "nameLocation": "18935:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12930,
                  "src": "18919:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12921,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "18919:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12925,
                  "mutability": "mutable",
                  "name": "values",
                  "nameLocation": "18962:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12930,
                  "src": "18945:23:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr",
                    "typeString": "bytes[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12923,
                      "name": "bytes",
                      "nodeType": "ElementaryTypeName",
                      "src": "18945:5:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes_storage_ptr",
                        "typeString": "bytes"
                      }
                    },
                    "id": 12924,
                    "nodeType": "ArrayTypeName",
                    "src": "18945:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr",
                      "typeString": "bytes[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "18891:78:14"
            },
            "returnParameters": {
              "id": 12929,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12928,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "19018:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12930,
                  "src": "19004:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12927,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "19004:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "19003:20:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12937,
            "nodeType": "FunctionDefinition",
            "src": "20265:72:14",
            "nodes": [],
            "functionSelector": "e23cd19f",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "writeJson",
            "nameLocation": "20274:9:14",
            "parameters": {
              "id": 12935,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12932,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "20300:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12937,
                  "src": "20284:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12931,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "20284:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12934,
                  "mutability": "mutable",
                  "name": "path",
                  "nameLocation": "20322:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12937,
                  "src": "20306:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12933,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "20306:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "20283:44:14"
            },
            "returnParameters": {
              "id": 12936,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "20336:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12946,
            "nodeType": "FunctionDefinition",
            "src": "20558:98:14",
            "nodes": [],
            "functionSelector": "35d6ad46",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "writeJson",
            "nameLocation": "20567:9:14",
            "parameters": {
              "id": 12944,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12939,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "20593:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12946,
                  "src": "20577:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12938,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "20577:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12941,
                  "mutability": "mutable",
                  "name": "path",
                  "nameLocation": "20615:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12946,
                  "src": "20599:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12940,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "20599:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12943,
                  "mutability": "mutable",
                  "name": "valueKey",
                  "nameLocation": "20637:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12946,
                  "src": "20621:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12942,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "20621:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "20576:70:14"
            },
            "returnParameters": {
              "id": 12945,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "20655:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12953,
            "nodeType": "FunctionDefinition",
            "src": "20708:85:14",
            "nodes": [],
            "functionSelector": "975a6ce9",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "rpcUrl",
            "nameLocation": "20717:6:14",
            "parameters": {
              "id": 12949,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12948,
                  "mutability": "mutable",
                  "name": "rpcAlias",
                  "nameLocation": "20740:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12953,
                  "src": "20724:24:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12947,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "20724:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "20723:26:14"
            },
            "returnParameters": {
              "id": 12952,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12951,
                  "mutability": "mutable",
                  "name": "json",
                  "nameLocation": "20787:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12953,
                  "src": "20773:18:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12950,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "20773:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "20772:20:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12961,
            "nodeType": "FunctionDefinition",
            "src": "20861:67:14",
            "nodes": [],
            "functionSelector": "a85a8418",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "rpcUrls",
            "nameLocation": "20870:7:14",
            "parameters": {
              "id": 12954,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "20877:2:14"
            },
            "returnParameters": {
              "id": 12960,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12959,
                  "mutability": "mutable",
                  "name": "urls",
                  "nameLocation": "20922:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12961,
                  "src": "20903:23:14",
                  "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": 12955,
                        "name": "string",
                        "nodeType": "ElementaryTypeName",
                        "src": "20903:6:14",
                        "typeDescriptions": {
                          "typeIdentifier": "t_string_storage_ptr",
                          "typeString": "string"
                        }
                      },
                      "id": 12957,
                      "length": {
                        "hexValue": "32",
                        "id": 12956,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "20910:1:14",
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_2_by_1",
                          "typeString": "int_const 2"
                        },
                        "value": "2"
                      },
                      "nodeType": "ArrayTypeName",
                      "src": "20903:9:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_string_storage_$2_storage_ptr",
                        "typeString": "string[2]"
                      }
                    },
                    "id": 12958,
                    "nodeType": "ArrayTypeName",
                    "src": "20903:11:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_array$_t_string_storage_$2_storage_$dyn_storage_ptr",
                      "typeString": "string[2][]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "20902:25:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12968,
            "nodeType": "FunctionDefinition",
            "src": "20991:67:14",
            "nodes": [],
            "functionSelector": "9d2ad72a",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "rpcUrlStructs",
            "nameLocation": "21000:13:14",
            "parameters": {
              "id": 12962,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "21013:2:14"
            },
            "returnParameters": {
              "id": 12967,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12966,
                  "mutability": "mutable",
                  "name": "urls",
                  "nameLocation": "21052:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12968,
                  "src": "21039:17:14",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_struct$_Rpc_$11959_memory_ptr_$dyn_memory_ptr",
                    "typeString": "struct VmSafe.Rpc[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 12964,
                      "nodeType": "UserDefinedTypeName",
                      "pathNode": {
                        "id": 12963,
                        "name": "Rpc",
                        "nameLocations": [
                          "21039:3:14"
                        ],
                        "nodeType": "IdentifierPath",
                        "referencedDeclaration": 11959,
                        "src": "21039:3:14"
                      },
                      "referencedDeclaration": 11959,
                      "src": "21039:3:14",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_Rpc_$11959_storage_ptr",
                        "typeString": "struct VmSafe.Rpc"
                      }
                    },
                    "id": 12965,
                    "nodeType": "ArrayTypeName",
                    "src": "21039:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_Rpc_$11959_storage_$dyn_storage_ptr",
                      "typeString": "struct VmSafe.Rpc[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "21038:19:14"
            },
            "scope": 12992,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12973,
            "nodeType": "FunctionDefinition",
            "src": "21151:46:14",
            "nodes": [],
            "functionSelector": "4c63e562",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "assume",
            "nameLocation": "21160:6:14",
            "parameters": {
              "id": 12971,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12970,
                  "mutability": "mutable",
                  "name": "condition",
                  "nameLocation": "21172:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12973,
                  "src": "21167:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 12969,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "21167:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "21166:16:14"
            },
            "returnParameters": {
              "id": 12972,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "21196:0:14"
            },
            "scope": 12992,
            "stateMutability": "pure",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12976,
            "nodeType": "FunctionDefinition",
            "src": "21286:37:14",
            "nodes": [],
            "functionSelector": "d1a5b36f",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "pauseGasMetering",
            "nameLocation": "21295:16:14",
            "parameters": {
              "id": 12974,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "21311:2:14"
            },
            "returnParameters": {
              "id": 12975,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "21322:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12979,
            "nodeType": "FunctionDefinition",
            "src": "21411:38:14",
            "nodes": [],
            "functionSelector": "2bcd50e0",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "resumeGasMetering",
            "nameLocation": "21420:17:14",
            "parameters": {
              "id": 12977,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "21437:2:14"
            },
            "returnParameters": {
              "id": 12978,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "21448:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12984,
            "nodeType": "FunctionDefinition",
            "src": "21508:51:14",
            "nodes": [],
            "functionSelector": "f0259e92",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "breakpoint",
            "nameLocation": "21517:10:14",
            "parameters": {
              "id": 12982,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12981,
                  "mutability": "mutable",
                  "name": "char",
                  "nameLocation": "21544:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12984,
                  "src": "21528:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12980,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "21528:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "21527:22:14"
            },
            "returnParameters": {
              "id": 12983,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "21558:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 12991,
            "nodeType": "FunctionDefinition",
            "src": "21630:63:14",
            "nodes": [],
            "functionSelector": "f7d39a8d",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "breakpoint",
            "nameLocation": "21639:10:14",
            "parameters": {
              "id": 12989,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12986,
                  "mutability": "mutable",
                  "name": "char",
                  "nameLocation": "21666:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12991,
                  "src": "21650:20:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 12985,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "21650:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 12988,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "21677:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12991,
                  "src": "21672:10:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 12987,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "21672:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "21649:34:14"
            },
            "returnParameters": {
              "id": 12990,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "21692:0:14"
            },
            "scope": 12992,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          }
        ],
        "abstract": false,
        "baseContracts": [],
        "canonicalName": "VmSafe",
        "contractDependencies": [],
        "contractKind": "interface",
        "fullyImplemented": false,
        "linearizedBaseContracts": [
          12992
        ],
        "name": "VmSafe",
        "nameLocation": "581:6:14",
        "scope": 13465,
        "usedErrors": [],
        "usedEvents": []
      },
      {
        "id": 13464,
        "nodeType": "ContractDefinition",
        "src": "21697:11610:14",
        "nodes": [
          {
            "id": 12999,
            "nodeType": "FunctionDefinition",
            "src": "21754:45:14",
            "nodes": [],
            "functionSelector": "e5d6bf02",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "warp",
            "nameLocation": "21763:4:14",
            "parameters": {
              "id": 12997,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 12996,
                  "mutability": "mutable",
                  "name": "newTimestamp",
                  "nameLocation": "21776:12:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 12999,
                  "src": "21768:20:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 12995,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "21768:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "21767:22:14"
            },
            "returnParameters": {
              "id": 12998,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "21798:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13004,
            "nodeType": "FunctionDefinition",
            "src": "21829:42:14",
            "nodes": [],
            "functionSelector": "1f7b4f30",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "roll",
            "nameLocation": "21838:4:14",
            "parameters": {
              "id": 13002,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13001,
                  "mutability": "mutable",
                  "name": "newHeight",
                  "nameLocation": "21851:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13004,
                  "src": "21843:17:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13000,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "21843:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "21842:19:14"
            },
            "returnParameters": {
              "id": 13003,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "21870:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13009,
            "nodeType": "FunctionDefinition",
            "src": "21902:42:14",
            "nodes": [],
            "functionSelector": "39b37ab0",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "fee",
            "nameLocation": "21911:3:14",
            "parameters": {
              "id": 13007,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13006,
                  "mutability": "mutable",
                  "name": "newBasefee",
                  "nameLocation": "21923:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13009,
                  "src": "21915:18:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13005,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "21915:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "21914:20:14"
            },
            "returnParameters": {
              "id": 13008,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "21943:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13014,
            "nodeType": "FunctionDefinition",
            "src": "22120:52:14",
            "nodes": [],
            "functionSelector": "46cc92d9",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "difficulty",
            "nameLocation": "22129:10:14",
            "parameters": {
              "id": 13012,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13011,
                  "mutability": "mutable",
                  "name": "newDifficulty",
                  "nameLocation": "22148:13:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13014,
                  "src": "22140:21:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13010,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "22140:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "22139:23:14"
            },
            "returnParameters": {
              "id": 13013,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "22171:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13019,
            "nodeType": "FunctionDefinition",
            "src": "22342:52:14",
            "nodes": [],
            "functionSelector": "3b925549",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "prevrandao",
            "nameLocation": "22351:10:14",
            "parameters": {
              "id": 13017,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13016,
                  "mutability": "mutable",
                  "name": "newPrevrandao",
                  "nameLocation": "22370:13:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13019,
                  "src": "22362:21:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 13015,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "22362:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "22361:23:14"
            },
            "returnParameters": {
              "id": 13018,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "22393:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13024,
            "nodeType": "FunctionDefinition",
            "src": "22425:46:14",
            "nodes": [],
            "functionSelector": "4049ddd2",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "chainId",
            "nameLocation": "22434:7:14",
            "parameters": {
              "id": 13022,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13021,
                  "mutability": "mutable",
                  "name": "newChainId",
                  "nameLocation": "22450:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13024,
                  "src": "22442:18:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13020,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "22442:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "22441:20:14"
            },
            "returnParameters": {
              "id": 13023,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "22470:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13029,
            "nodeType": "FunctionDefinition",
            "src": "22500:50:14",
            "nodes": [],
            "functionSelector": "48f50c0f",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "txGasPrice",
            "nameLocation": "22509:10:14",
            "parameters": {
              "id": 13027,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13026,
                  "mutability": "mutable",
                  "name": "newGasPrice",
                  "nameLocation": "22528:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13029,
                  "src": "22520:19:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13025,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "22520:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "22519:21:14"
            },
            "returnParameters": {
              "id": 13028,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "22549:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13038,
            "nodeType": "FunctionDefinition",
            "src": "22606:69:14",
            "nodes": [],
            "functionSelector": "70ca10bb",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "store",
            "nameLocation": "22615:5:14",
            "parameters": {
              "id": 13036,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13031,
                  "mutability": "mutable",
                  "name": "target",
                  "nameLocation": "22629:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13038,
                  "src": "22621:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13030,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "22621:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13033,
                  "mutability": "mutable",
                  "name": "slot",
                  "nameLocation": "22645:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13038,
                  "src": "22637:12:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 13032,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "22637:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13035,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "22659:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13038,
                  "src": "22651:13:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 13034,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "22651:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "22620:45:14"
            },
            "returnParameters": {
              "id": 13037,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "22674:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13045,
            "nodeType": "FunctionDefinition",
            "src": "22770:61:14",
            "nodes": [],
            "functionSelector": "f8e18b57",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "setNonce",
            "nameLocation": "22779:8:14",
            "parameters": {
              "id": 13043,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13040,
                  "mutability": "mutable",
                  "name": "account",
                  "nameLocation": "22796:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13045,
                  "src": "22788:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13039,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "22788:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13042,
                  "mutability": "mutable",
                  "name": "newNonce",
                  "nameLocation": "22812:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13045,
                  "src": "22805:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 13041,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "22805:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "22787:34:14"
            },
            "returnParameters": {
              "id": 13044,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "22830:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13052,
            "nodeType": "FunctionDefinition",
            "src": "22894:67:14",
            "nodes": [],
            "functionSelector": "9b67b21c",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "setNonceUnsafe",
            "nameLocation": "22903:14:14",
            "parameters": {
              "id": 13050,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13047,
                  "mutability": "mutable",
                  "name": "account",
                  "nameLocation": "22926:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13052,
                  "src": "22918:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13046,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "22918:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13049,
                  "mutability": "mutable",
                  "name": "newNonce",
                  "nameLocation": "22942:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13052,
                  "src": "22935:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 13048,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "22935:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "22917:34:14"
            },
            "returnParameters": {
              "id": 13051,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "22960:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13057,
            "nodeType": "FunctionDefinition",
            "src": "23046:46:14",
            "nodes": [],
            "functionSelector": "1c72346d",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "resetNonce",
            "nameLocation": "23055:10:14",
            "parameters": {
              "id": 13055,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13054,
                  "mutability": "mutable",
                  "name": "account",
                  "nameLocation": "23074:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13057,
                  "src": "23066:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13053,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "23066:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "23065:17:14"
            },
            "returnParameters": {
              "id": 13056,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "23091:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13062,
            "nodeType": "FunctionDefinition",
            "src": "23162:43:14",
            "nodes": [],
            "functionSelector": "ca669fa7",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "prank",
            "nameLocation": "23171:5:14",
            "parameters": {
              "id": 13060,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13059,
                  "mutability": "mutable",
                  "name": "msgSender",
                  "nameLocation": "23185:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13062,
                  "src": "23177:17:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13058,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "23177:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "23176:19:14"
            },
            "returnParameters": {
              "id": 13061,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "23204:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13067,
            "nodeType": "FunctionDefinition",
            "src": "23307:48:14",
            "nodes": [],
            "functionSelector": "06447d56",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "startPrank",
            "nameLocation": "23316:10:14",
            "parameters": {
              "id": 13065,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13064,
                  "mutability": "mutable",
                  "name": "msgSender",
                  "nameLocation": "23335:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13067,
                  "src": "23327:17:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13063,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "23327:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "23326:19:14"
            },
            "returnParameters": {
              "id": 13066,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "23354:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13074,
            "nodeType": "FunctionDefinition",
            "src": "23467:61:14",
            "nodes": [],
            "functionSelector": "47e50cce",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "prank",
            "nameLocation": "23476:5:14",
            "parameters": {
              "id": 13072,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13069,
                  "mutability": "mutable",
                  "name": "msgSender",
                  "nameLocation": "23490:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13074,
                  "src": "23482:17:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13068,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "23482:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13071,
                  "mutability": "mutable",
                  "name": "txOrigin",
                  "nameLocation": "23509:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13074,
                  "src": "23501:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13070,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "23501:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "23481:37:14"
            },
            "returnParameters": {
              "id": 13073,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "23527:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13081,
            "nodeType": "FunctionDefinition",
            "src": "23672:66:14",
            "nodes": [],
            "functionSelector": "45b56078",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "startPrank",
            "nameLocation": "23681:10:14",
            "parameters": {
              "id": 13079,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13076,
                  "mutability": "mutable",
                  "name": "msgSender",
                  "nameLocation": "23700:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13081,
                  "src": "23692:17:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13075,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "23692:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13078,
                  "mutability": "mutable",
                  "name": "txOrigin",
                  "nameLocation": "23719:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13081,
                  "src": "23711:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13077,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "23711:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "23691:37:14"
            },
            "returnParameters": {
              "id": 13080,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "23737:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13084,
            "nodeType": "FunctionDefinition",
            "src": "23808:30:14",
            "nodes": [],
            "functionSelector": "90c5013b",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "stopPrank",
            "nameLocation": "23817:9:14",
            "parameters": {
              "id": 13082,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "23826:2:14"
            },
            "returnParameters": {
              "id": 13083,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "23837:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13094,
            "nodeType": "FunctionDefinition",
            "src": "23963:101:14",
            "nodes": [],
            "functionSelector": "4ad0bac9",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "readCallers",
            "nameLocation": "23972:11:14",
            "parameters": {
              "id": 13085,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "23983:2:14"
            },
            "returnParameters": {
              "id": 13093,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13088,
                  "mutability": "mutable",
                  "name": "callerMode",
                  "nameLocation": "24015:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13094,
                  "src": "24004:21:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_enum$_CallerMode_$11946",
                    "typeString": "enum VmSafe.CallerMode"
                  },
                  "typeName": {
                    "id": 13087,
                    "nodeType": "UserDefinedTypeName",
                    "pathNode": {
                      "id": 13086,
                      "name": "CallerMode",
                      "nameLocations": [
                        "24004:10:14"
                      ],
                      "nodeType": "IdentifierPath",
                      "referencedDeclaration": 11946,
                      "src": "24004:10:14"
                    },
                    "referencedDeclaration": 11946,
                    "src": "24004:10:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_enum$_CallerMode_$11946",
                      "typeString": "enum VmSafe.CallerMode"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13090,
                  "mutability": "mutable",
                  "name": "msgSender",
                  "nameLocation": "24035:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13094,
                  "src": "24027:17:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13089,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "24027:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13092,
                  "mutability": "mutable",
                  "name": "txOrigin",
                  "nameLocation": "24054:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13094,
                  "src": "24046:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13091,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "24046:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "24003:60:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13101,
            "nodeType": "FunctionDefinition",
            "src": "24101:60:14",
            "nodes": [],
            "functionSelector": "c88a5e6d",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "deal",
            "nameLocation": "24110:4:14",
            "parameters": {
              "id": 13099,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13096,
                  "mutability": "mutable",
                  "name": "account",
                  "nameLocation": "24123:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13101,
                  "src": "24115:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13095,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "24115:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13098,
                  "mutability": "mutable",
                  "name": "newBalance",
                  "nameLocation": "24140:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13101,
                  "src": "24132:18:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13097,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "24132:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "24114:37:14"
            },
            "returnParameters": {
              "id": 13100,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "24160:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13108,
            "nodeType": "FunctionDefinition",
            "src": "24195:74:14",
            "nodes": [],
            "functionSelector": "b4d6c782",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "etch",
            "nameLocation": "24204:4:14",
            "parameters": {
              "id": 13106,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13103,
                  "mutability": "mutable",
                  "name": "target",
                  "nameLocation": "24217:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13108,
                  "src": "24209:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13102,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "24209:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13105,
                  "mutability": "mutable",
                  "name": "newRuntimeBytecode",
                  "nameLocation": "24240:18:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13108,
                  "src": "24225:33:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13104,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "24225:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "24208:51:14"
            },
            "returnParameters": {
              "id": 13107,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "24268:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13113,
            "nodeType": "FunctionDefinition",
            "src": "24345:38:14",
            "nodes": [],
            "functionSelector": "dd82d13e",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "skip",
            "nameLocation": "24354:4:14",
            "parameters": {
              "id": 13111,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13110,
                  "mutability": "mutable",
                  "name": "skipTest",
                  "nameLocation": "24364:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13113,
                  "src": "24359:13:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 13109,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "24359:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "24358:15:14"
            },
            "returnParameters": {
              "id": 13112,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "24382:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13118,
            "nodeType": "FunctionDefinition",
            "src": "24425:58:14",
            "nodes": [],
            "functionSelector": "f28dceb3",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "expectRevert",
            "nameLocation": "24434:12:14",
            "parameters": {
              "id": 13116,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13115,
                  "mutability": "mutable",
                  "name": "revertData",
                  "nameLocation": "24462:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13118,
                  "src": "24447:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13114,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "24447:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "24446:27:14"
            },
            "returnParameters": {
              "id": 13117,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "24482:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13123,
            "nodeType": "FunctionDefinition",
            "src": "24488:50:14",
            "nodes": [],
            "functionSelector": "c31eb0e0",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "expectRevert",
            "nameLocation": "24497:12:14",
            "parameters": {
              "id": 13121,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13120,
                  "mutability": "mutable",
                  "name": "revertData",
                  "nameLocation": "24517:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13123,
                  "src": "24510:17:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes4",
                    "typeString": "bytes4"
                  },
                  "typeName": {
                    "id": 13119,
                    "name": "bytes4",
                    "nodeType": "ElementaryTypeName",
                    "src": "24510:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes4",
                      "typeString": "bytes4"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "24509:19:14"
            },
            "returnParameters": {
              "id": 13122,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "24537:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13126,
            "nodeType": "FunctionDefinition",
            "src": "24543:33:14",
            "nodes": [],
            "functionSelector": "f4844814",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "expectRevert",
            "nameLocation": "24552:12:14",
            "parameters": {
              "id": 13124,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "24564:2:14"
            },
            "returnParameters": {
              "id": 13125,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "24575:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13129,
            "nodeType": "FunctionDefinition",
            "src": "24908:31:14",
            "nodes": [],
            "functionSelector": "440ed10d",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "expectEmit",
            "nameLocation": "24917:10:14",
            "parameters": {
              "id": 13127,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "24927:2:14"
            },
            "returnParameters": {
              "id": 13128,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "24938:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13134,
            "nodeType": "FunctionDefinition",
            "src": "24944:46:14",
            "nodes": [],
            "functionSelector": "86b9620d",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "expectEmit",
            "nameLocation": "24953:10:14",
            "parameters": {
              "id": 13132,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13131,
                  "mutability": "mutable",
                  "name": "emitter",
                  "nameLocation": "24972:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13134,
                  "src": "24964:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13130,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "24964:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "24963:17:14"
            },
            "returnParameters": {
              "id": 13133,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "24989:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13145,
            "nodeType": "FunctionDefinition",
            "src": "25400:99:14",
            "nodes": [],
            "functionSelector": "491cc7c2",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "expectEmit",
            "nameLocation": "25409:10:14",
            "parameters": {
              "id": 13143,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13136,
                  "mutability": "mutable",
                  "name": "checkTopic1",
                  "nameLocation": "25425:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13145,
                  "src": "25420:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 13135,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "25420:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13138,
                  "mutability": "mutable",
                  "name": "checkTopic2",
                  "nameLocation": "25443:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13145,
                  "src": "25438:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 13137,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "25438:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13140,
                  "mutability": "mutable",
                  "name": "checkTopic3",
                  "nameLocation": "25461:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13145,
                  "src": "25456:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 13139,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "25456:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13142,
                  "mutability": "mutable",
                  "name": "checkData",
                  "nameLocation": "25479:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13145,
                  "src": "25474:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 13141,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "25474:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "25419:70:14"
            },
            "returnParameters": {
              "id": 13144,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "25498:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13158,
            "nodeType": "FunctionDefinition",
            "src": "25504:124:14",
            "nodes": [],
            "functionSelector": "81bad6f3",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "expectEmit",
            "nameLocation": "25513:10:14",
            "parameters": {
              "id": 13156,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13147,
                  "mutability": "mutable",
                  "name": "checkTopic1",
                  "nameLocation": "25529:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13158,
                  "src": "25524:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 13146,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "25524:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13149,
                  "mutability": "mutable",
                  "name": "checkTopic2",
                  "nameLocation": "25547:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13158,
                  "src": "25542:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 13148,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "25542:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13151,
                  "mutability": "mutable",
                  "name": "checkTopic3",
                  "nameLocation": "25565:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13158,
                  "src": "25560:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 13150,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "25560:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13153,
                  "mutability": "mutable",
                  "name": "checkData",
                  "nameLocation": "25583:9:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13158,
                  "src": "25578:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 13152,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "25578:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13155,
                  "mutability": "mutable",
                  "name": "emitter",
                  "nameLocation": "25602:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13158,
                  "src": "25594:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13154,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "25594:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "25523:87:14"
            },
            "returnParameters": {
              "id": 13157,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "25627:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13167,
            "nodeType": "FunctionDefinition",
            "src": "25884:91:14",
            "nodes": [],
            "functionSelector": "b96213e4",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "mockCall",
            "nameLocation": "25893:8:14",
            "parameters": {
              "id": 13165,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13160,
                  "mutability": "mutable",
                  "name": "callee",
                  "nameLocation": "25910:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13167,
                  "src": "25902:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13159,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "25902:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13162,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "25933:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13167,
                  "src": "25918:19:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13161,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "25918:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13164,
                  "mutability": "mutable",
                  "name": "returnData",
                  "nameLocation": "25954:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13167,
                  "src": "25939:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13163,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "25939:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "25901:64:14"
            },
            "returnParameters": {
              "id": 13166,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "25974:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13178,
            "nodeType": "FunctionDefinition",
            "src": "26143:109:14",
            "nodes": [],
            "functionSelector": "81409b91",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "mockCall",
            "nameLocation": "26152:8:14",
            "parameters": {
              "id": 13176,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13169,
                  "mutability": "mutable",
                  "name": "callee",
                  "nameLocation": "26169:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13178,
                  "src": "26161:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13168,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "26161:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13171,
                  "mutability": "mutable",
                  "name": "msgValue",
                  "nameLocation": "26185:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13178,
                  "src": "26177:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13170,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "26177:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13173,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "26210:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13178,
                  "src": "26195:19:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13172,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "26195:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13175,
                  "mutability": "mutable",
                  "name": "returnData",
                  "nameLocation": "26231:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13178,
                  "src": "26216:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13174,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "26216:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "26160:82:14"
            },
            "returnParameters": {
              "id": 13177,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "26251:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13187,
            "nodeType": "FunctionDefinition",
            "src": "26321:97:14",
            "nodes": [],
            "functionSelector": "dbaad147",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "mockCallRevert",
            "nameLocation": "26330:14:14",
            "parameters": {
              "id": 13185,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13180,
                  "mutability": "mutable",
                  "name": "callee",
                  "nameLocation": "26353:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13187,
                  "src": "26345:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13179,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "26345:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13182,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "26376:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13187,
                  "src": "26361:19:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13181,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "26361:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13184,
                  "mutability": "mutable",
                  "name": "revertData",
                  "nameLocation": "26397:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13187,
                  "src": "26382:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13183,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "26382:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "26344:64:14"
            },
            "returnParameters": {
              "id": 13186,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "26417:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13198,
            "nodeType": "FunctionDefinition",
            "src": "26514:123:14",
            "nodes": [],
            "functionSelector": "d23cd037",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "mockCallRevert",
            "nameLocation": "26523:14:14",
            "parameters": {
              "id": 13196,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13189,
                  "mutability": "mutable",
                  "name": "callee",
                  "nameLocation": "26546:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13198,
                  "src": "26538:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13188,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "26538:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13191,
                  "mutability": "mutable",
                  "name": "msgValue",
                  "nameLocation": "26562:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13198,
                  "src": "26554:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13190,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "26554:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13193,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "26587:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13198,
                  "src": "26572:19:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13192,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "26572:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13195,
                  "mutability": "mutable",
                  "name": "revertData",
                  "nameLocation": "26608:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13198,
                  "src": "26593:25:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13194,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "26593:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "26537:82:14"
            },
            "returnParameters": {
              "id": 13197,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "26636:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13201,
            "nodeType": "FunctionDefinition",
            "src": "26673:37:14",
            "nodes": [],
            "functionSelector": "3fdf4e15",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "clearMockedCalls",
            "nameLocation": "26682:16:14",
            "parameters": {
              "id": 13199,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "26698:2:14"
            },
            "returnParameters": {
              "id": 13200,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "26709:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13208,
            "nodeType": "FunctionDefinition",
            "src": "26838:66:14",
            "nodes": [],
            "functionSelector": "bd6af434",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "expectCall",
            "nameLocation": "26847:10:14",
            "parameters": {
              "id": 13206,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13203,
                  "mutability": "mutable",
                  "name": "callee",
                  "nameLocation": "26866:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13208,
                  "src": "26858:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13202,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "26858:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13205,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "26889:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13208,
                  "src": "26874:19:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13204,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "26874:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "26857:37:14"
            },
            "returnParameters": {
              "id": 13207,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "26903:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13217,
            "nodeType": "FunctionDefinition",
            "src": "26989:80:14",
            "nodes": [],
            "functionSelector": "c1adbbff",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "expectCall",
            "nameLocation": "26998:10:14",
            "parameters": {
              "id": 13215,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13210,
                  "mutability": "mutable",
                  "name": "callee",
                  "nameLocation": "27017:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13217,
                  "src": "27009:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13209,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "27009:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13212,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "27040:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13217,
                  "src": "27025:19:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13211,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "27025:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13214,
                  "mutability": "mutable",
                  "name": "count",
                  "nameLocation": "27053:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13217,
                  "src": "27046:12:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 13213,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "27046:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "27008:51:14"
            },
            "returnParameters": {
              "id": 13216,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "27068:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13226,
            "nodeType": "FunctionDefinition",
            "src": "27152:84:14",
            "nodes": [],
            "functionSelector": "f30c7ba3",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "expectCall",
            "nameLocation": "27161:10:14",
            "parameters": {
              "id": 13224,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13219,
                  "mutability": "mutable",
                  "name": "callee",
                  "nameLocation": "27180:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13226,
                  "src": "27172:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13218,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "27172:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13221,
                  "mutability": "mutable",
                  "name": "msgValue",
                  "nameLocation": "27196:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13226,
                  "src": "27188:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13220,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "27188:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13223,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "27221:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13226,
                  "src": "27206:19:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13222,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "27206:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "27171:55:14"
            },
            "returnParameters": {
              "id": 13225,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "27235:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13237,
            "nodeType": "FunctionDefinition",
            "src": "27334:98:14",
            "nodes": [],
            "functionSelector": "a2b1a1ae",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "expectCall",
            "nameLocation": "27343:10:14",
            "parameters": {
              "id": 13235,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13228,
                  "mutability": "mutable",
                  "name": "callee",
                  "nameLocation": "27362:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13237,
                  "src": "27354:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13227,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "27354:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13230,
                  "mutability": "mutable",
                  "name": "msgValue",
                  "nameLocation": "27378:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13237,
                  "src": "27370:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13229,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "27370:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13232,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "27403:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13237,
                  "src": "27388:19:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13231,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "27388:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13234,
                  "mutability": "mutable",
                  "name": "count",
                  "nameLocation": "27416:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13237,
                  "src": "27409:12:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 13233,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "27409:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "27353:69:14"
            },
            "returnParameters": {
              "id": 13236,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "27431:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13248,
            "nodeType": "FunctionDefinition",
            "src": "27521:96:14",
            "nodes": [],
            "functionSelector": "23361207",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "expectCall",
            "nameLocation": "27530:10:14",
            "parameters": {
              "id": 13246,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13239,
                  "mutability": "mutable",
                  "name": "callee",
                  "nameLocation": "27549:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13248,
                  "src": "27541:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13238,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "27541:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13241,
                  "mutability": "mutable",
                  "name": "msgValue",
                  "nameLocation": "27565:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13248,
                  "src": "27557:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13240,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "27557:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13243,
                  "mutability": "mutable",
                  "name": "gas",
                  "nameLocation": "27582:3:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13248,
                  "src": "27575:10:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 13242,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "27575:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13245,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "27602:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13248,
                  "src": "27587:19:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13244,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "27587:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "27540:67:14"
            },
            "returnParameters": {
              "id": 13247,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "27616:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13261,
            "nodeType": "FunctionDefinition",
            "src": "27722:110:14",
            "nodes": [],
            "functionSelector": "65b7b7cc",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "expectCall",
            "nameLocation": "27731:10:14",
            "parameters": {
              "id": 13259,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13250,
                  "mutability": "mutable",
                  "name": "callee",
                  "nameLocation": "27750:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13261,
                  "src": "27742:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13249,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "27742:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13252,
                  "mutability": "mutable",
                  "name": "msgValue",
                  "nameLocation": "27766:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13261,
                  "src": "27758:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13251,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "27758:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13254,
                  "mutability": "mutable",
                  "name": "gas",
                  "nameLocation": "27783:3:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13261,
                  "src": "27776:10:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 13253,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "27776:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13256,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "27803:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13261,
                  "src": "27788:19:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13255,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "27788:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13258,
                  "mutability": "mutable",
                  "name": "count",
                  "nameLocation": "27816:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13261,
                  "src": "27809:12:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 13257,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "27809:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "27741:81:14"
            },
            "returnParameters": {
              "id": 13260,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "27831:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13272,
            "nodeType": "FunctionDefinition",
            "src": "27946:105:14",
            "nodes": [],
            "functionSelector": "08e4e116",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "expectCallMinGas",
            "nameLocation": "27955:16:14",
            "parameters": {
              "id": 13270,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13263,
                  "mutability": "mutable",
                  "name": "callee",
                  "nameLocation": "27980:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13272,
                  "src": "27972:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13262,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "27972:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13265,
                  "mutability": "mutable",
                  "name": "msgValue",
                  "nameLocation": "27996:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13272,
                  "src": "27988:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13264,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "27988:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13267,
                  "mutability": "mutable",
                  "name": "minGas",
                  "nameLocation": "28013:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13272,
                  "src": "28006:13:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 13266,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "28006:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13269,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "28036:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13272,
                  "src": "28021:19:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13268,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "28021:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "27971:70:14"
            },
            "returnParameters": {
              "id": 13271,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "28050:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13285,
            "nodeType": "FunctionDefinition",
            "src": "28180:127:14",
            "nodes": [],
            "functionSelector": "e13a1834",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "expectCallMinGas",
            "nameLocation": "28189:16:14",
            "parameters": {
              "id": 13283,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13274,
                  "mutability": "mutable",
                  "name": "callee",
                  "nameLocation": "28214:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13285,
                  "src": "28206:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13273,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "28206:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13276,
                  "mutability": "mutable",
                  "name": "msgValue",
                  "nameLocation": "28230:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13285,
                  "src": "28222:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13275,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "28222:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13278,
                  "mutability": "mutable",
                  "name": "minGas",
                  "nameLocation": "28247:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13285,
                  "src": "28240:13:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 13277,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "28240:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13280,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "28270:4:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13285,
                  "src": "28255:19:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 13279,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "28255:5:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13282,
                  "mutability": "mutable",
                  "name": "count",
                  "nameLocation": "28283:5:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13285,
                  "src": "28276:12:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 13281,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "28276:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "28205:84:14"
            },
            "returnParameters": {
              "id": 13284,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "28306:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13292,
            "nodeType": "FunctionDefinition",
            "src": "28533:59:14",
            "nodes": [],
            "functionSelector": "6d016688",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "expectSafeMemory",
            "nameLocation": "28542:16:14",
            "parameters": {
              "id": 13290,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13287,
                  "mutability": "mutable",
                  "name": "min",
                  "nameLocation": "28566:3:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13292,
                  "src": "28559:10:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 13286,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "28559:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13289,
                  "mutability": "mutable",
                  "name": "max",
                  "nameLocation": "28578:3:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13292,
                  "src": "28571:10:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 13288,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "28571:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "28558:24:14"
            },
            "returnParameters": {
              "id": 13291,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "28591:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13299,
            "nodeType": "FunctionDefinition",
            "src": "28830:63:14",
            "nodes": [],
            "functionSelector": "05838bf4",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "expectSafeMemoryCall",
            "nameLocation": "28839:20:14",
            "parameters": {
              "id": 13297,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13294,
                  "mutability": "mutable",
                  "name": "min",
                  "nameLocation": "28867:3:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13299,
                  "src": "28860:10:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 13293,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "28860:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13296,
                  "mutability": "mutable",
                  "name": "max",
                  "nameLocation": "28879:3:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13299,
                  "src": "28872:10:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint64",
                    "typeString": "uint64"
                  },
                  "typeName": {
                    "id": 13295,
                    "name": "uint64",
                    "nodeType": "ElementaryTypeName",
                    "src": "28872:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint64",
                      "typeString": "uint64"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "28859:24:14"
            },
            "returnParameters": {
              "id": 13298,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "28892:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13304,
            "nodeType": "FunctionDefinition",
            "src": "28925:48:14",
            "nodes": [],
            "functionSelector": "ff483c54",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "coinbase",
            "nameLocation": "28934:8:14",
            "parameters": {
              "id": 13302,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13301,
                  "mutability": "mutable",
                  "name": "newCoinbase",
                  "nameLocation": "28951:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13304,
                  "src": "28943:19:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13300,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "28943:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "28942:21:14"
            },
            "returnParameters": {
              "id": 13303,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "28972:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13309,
            "nodeType": "FunctionDefinition",
            "src": "29123:58:14",
            "nodes": [],
            "functionSelector": "9711715a",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "snapshot",
            "nameLocation": "29132:8:14",
            "parameters": {
              "id": 13305,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "29140:2:14"
            },
            "returnParameters": {
              "id": 13308,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13307,
                  "mutability": "mutable",
                  "name": "snapshotId",
                  "nameLocation": "29169:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13309,
                  "src": "29161:18:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13306,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "29161:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "29160:20:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13316,
            "nodeType": "FunctionDefinition",
            "src": "29373:70:14",
            "nodes": [],
            "functionSelector": "44d7f0a4",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "revertTo",
            "nameLocation": "29382:8:14",
            "parameters": {
              "id": 13312,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13311,
                  "mutability": "mutable",
                  "name": "snapshotId",
                  "nameLocation": "29399:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13316,
                  "src": "29391:18:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13310,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "29391:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "29390:20:14"
            },
            "returnParameters": {
              "id": 13315,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13314,
                  "mutability": "mutable",
                  "name": "success",
                  "nameLocation": "29434:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13316,
                  "src": "29429:12:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 13313,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "29429:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "29428:14:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13325,
            "nodeType": "FunctionDefinition",
            "src": "29547:103:14",
            "nodes": [],
            "functionSelector": "6ba3ba2b",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "createFork",
            "nameLocation": "29556:10:14",
            "parameters": {
              "id": 13321,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13318,
                  "mutability": "mutable",
                  "name": "urlOrAlias",
                  "nameLocation": "29583:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13325,
                  "src": "29567:26:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 13317,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "29567:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13320,
                  "mutability": "mutable",
                  "name": "blockNumber",
                  "nameLocation": "29603:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13325,
                  "src": "29595:19:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13319,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "29595:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "29566:49:14"
            },
            "returnParameters": {
              "id": 13324,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13323,
                  "mutability": "mutable",
                  "name": "forkId",
                  "nameLocation": "29642:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13325,
                  "src": "29634:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13322,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "29634:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "29633:16:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13332,
            "nodeType": "FunctionDefinition",
            "src": "29767:82:14",
            "nodes": [],
            "functionSelector": "31ba3498",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "createFork",
            "nameLocation": "29776:10:14",
            "parameters": {
              "id": 13328,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13327,
                  "mutability": "mutable",
                  "name": "urlOrAlias",
                  "nameLocation": "29803:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13332,
                  "src": "29787:26:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 13326,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "29787:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "29786:28:14"
            },
            "returnParameters": {
              "id": 13331,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13330,
                  "mutability": "mutable",
                  "name": "forkId",
                  "nameLocation": "29841:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13332,
                  "src": "29833:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13329,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "29833:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "29832:16:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13341,
            "nodeType": "FunctionDefinition",
            "src": "30070:98:14",
            "nodes": [],
            "functionSelector": "7ca29682",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "createFork",
            "nameLocation": "30079:10:14",
            "parameters": {
              "id": 13337,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13334,
                  "mutability": "mutable",
                  "name": "urlOrAlias",
                  "nameLocation": "30106:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13341,
                  "src": "30090:26:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 13333,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "30090:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13336,
                  "mutability": "mutable",
                  "name": "txHash",
                  "nameLocation": "30126:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13341,
                  "src": "30118:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 13335,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "30118:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "30089:44:14"
            },
            "returnParameters": {
              "id": 13340,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13339,
                  "mutability": "mutable",
                  "name": "forkId",
                  "nameLocation": "30160:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13341,
                  "src": "30152:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13338,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "30152:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "30151:16:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13350,
            "nodeType": "FunctionDefinition",
            "src": "30291:109:14",
            "nodes": [],
            "functionSelector": "71ee464d",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "createSelectFork",
            "nameLocation": "30300:16:14",
            "parameters": {
              "id": 13346,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13343,
                  "mutability": "mutable",
                  "name": "urlOrAlias",
                  "nameLocation": "30333:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13350,
                  "src": "30317:26:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 13342,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "30317:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13345,
                  "mutability": "mutable",
                  "name": "blockNumber",
                  "nameLocation": "30353:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13350,
                  "src": "30345:19:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13344,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "30345:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "30316:49:14"
            },
            "returnParameters": {
              "id": 13349,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13348,
                  "mutability": "mutable",
                  "name": "forkId",
                  "nameLocation": "30392:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13350,
                  "src": "30384:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13347,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "30384:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "30383:16:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13359,
            "nodeType": "FunctionDefinition",
            "src": "30634:104:14",
            "nodes": [],
            "functionSelector": "84d52b7a",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "createSelectFork",
            "nameLocation": "30643:16:14",
            "parameters": {
              "id": 13355,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13352,
                  "mutability": "mutable",
                  "name": "urlOrAlias",
                  "nameLocation": "30676:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13359,
                  "src": "30660:26:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 13351,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "30660:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13354,
                  "mutability": "mutable",
                  "name": "txHash",
                  "nameLocation": "30696:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13359,
                  "src": "30688:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 13353,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "30688:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "30659:44:14"
            },
            "returnParameters": {
              "id": 13358,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13357,
                  "mutability": "mutable",
                  "name": "forkId",
                  "nameLocation": "30730:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13359,
                  "src": "30722:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13356,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "30722:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "30721:16:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13366,
            "nodeType": "FunctionDefinition",
            "src": "30872:88:14",
            "nodes": [],
            "functionSelector": "98680034",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "createSelectFork",
            "nameLocation": "30881:16:14",
            "parameters": {
              "id": 13362,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13361,
                  "mutability": "mutable",
                  "name": "urlOrAlias",
                  "nameLocation": "30914:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13366,
                  "src": "30898:26:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_calldata_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 13360,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "30898:6:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "30897:28:14"
            },
            "returnParameters": {
              "id": 13365,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13364,
                  "mutability": "mutable",
                  "name": "forkId",
                  "nameLocation": "30952:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13366,
                  "src": "30944:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13363,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "30944:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "30943:16:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13371,
            "nodeType": "FunctionDefinition",
            "src": "31071:45:14",
            "nodes": [],
            "functionSelector": "9ebf6827",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "selectFork",
            "nameLocation": "31080:10:14",
            "parameters": {
              "id": 13369,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13368,
                  "mutability": "mutable",
                  "name": "forkId",
                  "nameLocation": "31099:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13371,
                  "src": "31091:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13367,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "31091:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "31090:16:14"
            },
            "returnParameters": {
              "id": 13370,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "31115:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13377,
            "nodeType": "FunctionDefinition",
            "src": "31222:61:14",
            "nodes": [],
            "documentation": {
              "id": 13372,
              "nodeType": "StructuredDocumentation",
              "src": "31121:96:14",
              "text": "Returns the identifier of the currently active fork. Reverts if no fork is currently active."
            },
            "functionSelector": "2f103f22",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "activeFork",
            "nameLocation": "31231:10:14",
            "parameters": {
              "id": 13373,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "31241:2:14"
            },
            "returnParameters": {
              "id": 13376,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13375,
                  "mutability": "mutable",
                  "name": "forkId",
                  "nameLocation": "31275:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13377,
                  "src": "31267:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13374,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "31267:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "31266:16:14"
            },
            "scope": 13464,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13382,
            "nodeType": "FunctionDefinition",
            "src": "31418:48:14",
            "nodes": [],
            "functionSelector": "d9bbf3a1",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "rollFork",
            "nameLocation": "31427:8:14",
            "parameters": {
              "id": 13380,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13379,
                  "mutability": "mutable",
                  "name": "blockNumber",
                  "nameLocation": "31444:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13382,
                  "src": "31436:19:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13378,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "31436:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "31435:21:14"
            },
            "returnParameters": {
              "id": 13381,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "31465:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13387,
            "nodeType": "FunctionDefinition",
            "src": "31676:43:14",
            "nodes": [],
            "functionSelector": "0f29772b",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "rollFork",
            "nameLocation": "31685:8:14",
            "parameters": {
              "id": 13385,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13384,
                  "mutability": "mutable",
                  "name": "txHash",
                  "nameLocation": "31702:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13387,
                  "src": "31694:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 13383,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "31694:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "31693:16:14"
            },
            "returnParameters": {
              "id": 13386,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "31718:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13394,
            "nodeType": "FunctionDefinition",
            "src": "31776:64:14",
            "nodes": [],
            "functionSelector": "d74c83a4",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "rollFork",
            "nameLocation": "31785:8:14",
            "parameters": {
              "id": 13392,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13389,
                  "mutability": "mutable",
                  "name": "forkId",
                  "nameLocation": "31802:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13394,
                  "src": "31794:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13388,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "31794:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13391,
                  "mutability": "mutable",
                  "name": "blockNumber",
                  "nameLocation": "31818:11:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13394,
                  "src": "31810:19:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13390,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "31810:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "31793:37:14"
            },
            "returnParameters": {
              "id": 13393,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "31839:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13401,
            "nodeType": "FunctionDefinition",
            "src": "31973:59:14",
            "nodes": [],
            "functionSelector": "f2830f7b",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "rollFork",
            "nameLocation": "31982:8:14",
            "parameters": {
              "id": 13399,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13396,
                  "mutability": "mutable",
                  "name": "forkId",
                  "nameLocation": "31999:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13401,
                  "src": "31991:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13395,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "31991:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13398,
                  "mutability": "mutable",
                  "name": "txHash",
                  "nameLocation": "32015:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13401,
                  "src": "32007:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 13397,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "32007:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "31990:32:14"
            },
            "returnParameters": {
              "id": 13400,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "32031:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13406,
            "nodeType": "FunctionDefinition",
            "src": "32231:50:14",
            "nodes": [],
            "functionSelector": "57e22dde",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "makePersistent",
            "nameLocation": "32240:14:14",
            "parameters": {
              "id": 13404,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13403,
                  "mutability": "mutable",
                  "name": "account",
                  "nameLocation": "32263:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13406,
                  "src": "32255:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13402,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "32255:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "32254:17:14"
            },
            "returnParameters": {
              "id": 13405,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "32280:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13413,
            "nodeType": "FunctionDefinition",
            "src": "32286:69:14",
            "nodes": [],
            "functionSelector": "4074e0a8",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "makePersistent",
            "nameLocation": "32295:14:14",
            "parameters": {
              "id": 13411,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13408,
                  "mutability": "mutable",
                  "name": "account0",
                  "nameLocation": "32318:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13413,
                  "src": "32310:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13407,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "32310:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13410,
                  "mutability": "mutable",
                  "name": "account1",
                  "nameLocation": "32336:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13413,
                  "src": "32328:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13409,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "32328:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "32309:36:14"
            },
            "returnParameters": {
              "id": 13412,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "32354:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13422,
            "nodeType": "FunctionDefinition",
            "src": "32360:87:14",
            "nodes": [],
            "functionSelector": "efb77a75",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "makePersistent",
            "nameLocation": "32369:14:14",
            "parameters": {
              "id": 13420,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13415,
                  "mutability": "mutable",
                  "name": "account0",
                  "nameLocation": "32392:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13422,
                  "src": "32384:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13414,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "32384:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13417,
                  "mutability": "mutable",
                  "name": "account1",
                  "nameLocation": "32410:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13422,
                  "src": "32402:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13416,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "32402:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13419,
                  "mutability": "mutable",
                  "name": "account2",
                  "nameLocation": "32428:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13422,
                  "src": "32420:16:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13418,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "32420:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "32383:54:14"
            },
            "returnParameters": {
              "id": 13421,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "32446:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13428,
            "nodeType": "FunctionDefinition",
            "src": "32452:62:14",
            "nodes": [],
            "functionSelector": "1d9e269e",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "makePersistent",
            "nameLocation": "32461:14:14",
            "parameters": {
              "id": 13426,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13425,
                  "mutability": "mutable",
                  "name": "accounts",
                  "nameLocation": "32495:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13428,
                  "src": "32476:27:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 13423,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "32476:7:14",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 13424,
                    "nodeType": "ArrayTypeName",
                    "src": "32476:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "32475:29:14"
            },
            "returnParameters": {
              "id": 13427,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "32513:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13433,
            "nodeType": "FunctionDefinition",
            "src": "32608:52:14",
            "nodes": [],
            "functionSelector": "997a0222",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "revokePersistent",
            "nameLocation": "32617:16:14",
            "parameters": {
              "id": 13431,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13430,
                  "mutability": "mutable",
                  "name": "account",
                  "nameLocation": "32642:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13433,
                  "src": "32634:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13429,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "32634:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "32633:17:14"
            },
            "returnParameters": {
              "id": 13432,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "32659:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13439,
            "nodeType": "FunctionDefinition",
            "src": "32665:64:14",
            "nodes": [],
            "functionSelector": "3ce969e6",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "revokePersistent",
            "nameLocation": "32674:16:14",
            "parameters": {
              "id": 13437,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13436,
                  "mutability": "mutable",
                  "name": "accounts",
                  "nameLocation": "32710:8:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13439,
                  "src": "32691:27:14",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 13434,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "32691:7:14",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 13435,
                    "nodeType": "ArrayTypeName",
                    "src": "32691:9:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "32690:29:14"
            },
            "returnParameters": {
              "id": 13438,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "32728:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13446,
            "nodeType": "FunctionDefinition",
            "src": "32793:79:14",
            "nodes": [],
            "functionSelector": "d92d8efd",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "isPersistent",
            "nameLocation": "32802:12:14",
            "parameters": {
              "id": 13442,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13441,
                  "mutability": "mutable",
                  "name": "account",
                  "nameLocation": "32823:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13446,
                  "src": "32815:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13440,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "32815:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "32814:17:14"
            },
            "returnParameters": {
              "id": 13445,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13444,
                  "mutability": "mutable",
                  "name": "persistent",
                  "nameLocation": "32860:10:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13446,
                  "src": "32855:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 13443,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "32855:4:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "32854:17:14"
            },
            "scope": 13464,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13451,
            "nodeType": "FunctionDefinition",
            "src": "32953:51:14",
            "nodes": [],
            "functionSelector": "ea060291",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "allowCheatcodes",
            "nameLocation": "32962:15:14",
            "parameters": {
              "id": 13449,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13448,
                  "mutability": "mutable",
                  "name": "account",
                  "nameLocation": "32986:7:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13451,
                  "src": "32978:15:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 13447,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "32978:7:14",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "32977:17:14"
            },
            "returnParameters": {
              "id": 13450,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "33003:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13456,
            "nodeType": "FunctionDefinition",
            "src": "33104:43:14",
            "nodes": [],
            "functionSelector": "be646da1",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "transact",
            "nameLocation": "33113:8:14",
            "parameters": {
              "id": 13454,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13453,
                  "mutability": "mutable",
                  "name": "txHash",
                  "nameLocation": "33130:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13456,
                  "src": "33122:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 13452,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "33122:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "33121:16:14"
            },
            "returnParameters": {
              "id": 13455,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "33146:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 13463,
            "nodeType": "FunctionDefinition",
            "src": "33246:59:14",
            "nodes": [],
            "functionSelector": "4d8abc4b",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "transact",
            "nameLocation": "33255:8:14",
            "parameters": {
              "id": 13461,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 13458,
                  "mutability": "mutable",
                  "name": "forkId",
                  "nameLocation": "33272:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13463,
                  "src": "33264:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 13457,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "33264:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 13460,
                  "mutability": "mutable",
                  "name": "txHash",
                  "nameLocation": "33288:6:14",
                  "nodeType": "VariableDeclaration",
                  "scope": 13463,
                  "src": "33280:14:14",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 13459,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "33280:7:14",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "33263:32:14"
            },
            "returnParameters": {
              "id": 13462,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "33304:0:14"
            },
            "scope": 13464,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          }
        ],
        "abstract": false,
        "baseContracts": [
          {
            "baseName": {
              "id": 12993,
              "name": "VmSafe",
              "nameLocations": [
                "21713:6:14"
              ],
              "nodeType": "IdentifierPath",
              "referencedDeclaration": 12992,
              "src": "21713:6:14"
            },
            "id": 12994,
            "nodeType": "InheritanceSpecifier",
            "src": "21713:6:14"
          }
        ],
        "canonicalName": "Vm",
        "contractDependencies": [],
        "contractKind": "interface",
        "fullyImplemented": false,
        "linearizedBaseContracts": [
          13464,
          12992
        ],
        "name": "Vm",
        "nameLocation": "21707:2:14",
        "scope": 13465,
        "usedErrors": [],
        "usedEvents": []
      }
    ],
    "license": "MIT"
  },
  "id": 14
}