{
  "abi": [
    {
      "inputs": [],
      "name": "arithmeticError",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "assertionError",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "divisionError",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "encodeStorageError",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "enumConversionError",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "indexOOBError",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "memOverflowError",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "popError",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "zeroVarError",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "bytecode": {
    "object": "0x61024f61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061009d5760003560e01c8063986c5f6811610070578063986c5f68146100d8578063b22dc54d146100e0578063b67689da146100e8578063d160e4de146100f0578063fa784a44146100f857600080fd5b806305ee8612146100a257806310332977146100c05780631de45560146100c85780638995290f146100d0575b600080fd5b6100aa610100565b6040516100b791906101cb565b60405180910390f35b6100aa61013b565b6100aa61014d565b6100aa61015f565b6100aa610171565b6100aa610183565b6100aa610195565b6100aa6101a7565b6100aa6101b9565b604051603260248201526044015b60408051601f198184030181529190526020810180516001600160e01b0316634e487b7160e01b17905281565b6040516001602482015260440161010e565b6040516021602482015260440161010e565b6040516011602482015260440161010e565b6040516041602482015260440161010e565b6040516031602482015260440161010e565b6040516051602482015260440161010e565b6040516022602482015260440161010e565b6040516012602482015260440161010e565b600060208083528351808285015260005b818110156101f8578581018301518582016040015282016101dc565b506000604082860101526040601f19601f830116850101925050509291505056fea264697066735822122035cba101b650f66ba50a55224c6366c3102f19728c9336b26b1995308dd6fbe264736f6c63430008110033",
    "sourceMap": "162:850:6:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;162:850:6;;;;;;;;;;;;;;;;;",
    "linkReferences": {}
  },
  "deployedBytecode": {
    "object": "0x730000000000000000000000000000000000000000301460806040526004361061009d5760003560e01c8063986c5f6811610070578063986c5f68146100d8578063b22dc54d146100e0578063b67689da146100e8578063d160e4de146100f0578063fa784a44146100f857600080fd5b806305ee8612146100a257806310332977146100c05780631de45560146100c85780638995290f146100d0575b600080fd5b6100aa610100565b6040516100b791906101cb565b60405180910390f35b6100aa61013b565b6100aa61014d565b6100aa61015f565b6100aa610171565b6100aa610183565b6100aa610195565b6100aa6101a7565b6100aa6101b9565b604051603260248201526044015b60408051601f198184030181529190526020810180516001600160e01b0316634e487b7160e01b17905281565b6040516001602482015260440161010e565b6040516021602482015260440161010e565b6040516011602482015260440161010e565b6040516041602482015260440161010e565b6040516031602482015260440161010e565b6040516051602482015260440161010e565b6040516022602482015260440161010e565b6040516012602482015260440161010e565b600060208083528351808285015260005b818110156101f8578581018301518582016040015282016101dc565b506000604082860101526040601f19601f830116850101925050509291505056fea264697066735822122035cba101b650f66ba50a55224c6366c3102f19728c9336b26b1995308dd6fbe264736f6c63430008110033",
    "sourceMap": "162:850:6:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;740:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;185:86;;;:::i;461:91::-;;;:::i;277:87::-;;;:::i;831:88::-;;;:::i;654:80::-;;;:::i;925:84::-;;;:::i;558:90::-;;;:::i;370:85::-;;;:::i;740:::-;778:47;;820:4;778:47;;;726:36:18;699:18;;778:47:6;;;;-1:-1:-1;;778:47:6;;;;;;;;;;;;;;-1:-1:-1;;;;;778:47:6;-1:-1:-1;;;778:47:6;;;740:85;:::o;185:86::-;224:47;;266:4;224:47;;;726:36:18;699:18;;224:47:6;573:195:18;461:91:6;505:47;;547:4;505:47;;;726:36:18;699:18;;505:47:6;573:195:18;277:87:6;317:47;;359:4;317:47;;;726:36:18;699:18;;317:47:6;573:195:18;831:88:6;872:47;;914:4;872:47;;;726:36:18;699:18;;872:47:6;573:195:18;654:80:6;687:47;;729:4;687:47;;;726:36:18;699:18;;687:47:6;573:195:18;925:84:6;962:47;;1004:4;962:47;;;726:36:18;699:18;;962:47:6;573:195:18;558:90:6;601:47;;643:4;601:47;;;726:36:18;699:18;;601:47:6;573:195:18;370:85:6;408:47;;450:4;408:47;;;726:36:18;699:18;;408:47:6;573:195:18;14:554;132:4;161:2;190;179:9;172:21;222:6;216:13;265:6;260:2;249:9;245:18;238:34;290:1;300:140;314:6;311:1;308:13;300:140;;;409:14;;;405:23;;399:30;375:17;;;394:2;371:26;364:66;329:10;;300:140;;;304:3;489:1;484:2;475:6;464:9;460:22;456:31;449:42;559:2;552;548:7;543:2;535:6;531:15;527:29;516:9;512:45;508:54;500:62;;;;14:554;;;;:::o",
    "linkReferences": {}
  },
  "methodIdentifiers": {
    "arithmeticError()": "8995290f",
    "assertionError()": "10332977",
    "divisionError()": "fa784a44",
    "encodeStorageError()": "d160e4de",
    "enumConversionError()": "1de45560",
    "indexOOBError()": "05ee8612",
    "memOverflowError()": "986c5f68",
    "popError()": "b22dc54d",
    "zeroVarError()": "b67689da"
  },
  "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"arithmeticError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"assertionError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"divisionError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"encodeStorageError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"enumConversionError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"indexOOBError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"memOverflowError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"popError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"zeroVarError\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/StdError.sol\":\"stdError\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]}},\"version\":1}",
  "metadata": {
    "compiler": {
      "version": "0.8.17+commit.8df45f5f"
    },
    "language": "Solidity",
    "output": {
      "abi": [
        {
          "inputs": [],
          "stateMutability": "view",
          "type": "function",
          "name": "arithmeticError",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [],
          "stateMutability": "view",
          "type": "function",
          "name": "assertionError",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [],
          "stateMutability": "view",
          "type": "function",
          "name": "divisionError",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [],
          "stateMutability": "view",
          "type": "function",
          "name": "encodeStorageError",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [],
          "stateMutability": "view",
          "type": "function",
          "name": "enumConversionError",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [],
          "stateMutability": "view",
          "type": "function",
          "name": "indexOOBError",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [],
          "stateMutability": "view",
          "type": "function",
          "name": "memOverflowError",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [],
          "stateMutability": "view",
          "type": "function",
          "name": "popError",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "",
              "type": "bytes"
            }
          ]
        },
        {
          "inputs": [],
          "stateMutability": "view",
          "type": "function",
          "name": "zeroVarError",
          "outputs": [
            {
              "internalType": "bytes",
              "name": "",
              "type": "bytes"
            }
          ]
        }
      ],
      "devdoc": {
        "kind": "dev",
        "methods": {},
        "version": 1
      },
      "userdoc": {
        "kind": "user",
        "methods": {},
        "version": 1
      }
    },
    "settings": {
      "remappings": [
        ":ds-test/=lib/forge-std/lib/ds-test/src/",
        ":forge-std/=lib/forge-std/src/"
      ],
      "optimizer": {
        "enabled": true,
        "runs": 200
      },
      "metadata": {
        "bytecodeHash": "ipfs"
      },
      "compilationTarget": {
        "lib/forge-std/src/StdError.sol": "stdError"
      },
      "libraries": {}
    },
    "sources": {
      "lib/forge-std/src/StdError.sol": {
        "keccak256": "0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77",
        "urls": [
          "bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6",
          "dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj"
        ],
        "license": "MIT"
      }
    },
    "version": 1
  },
  "ast": {
    "absolutePath": "lib/forge-std/src/StdError.sol",
    "id": 5140,
    "exportedSymbols": {
      "stdError": [
        5139
      ]
    },
    "nodeType": "SourceUnit",
    "src": "129:884:6",
    "nodes": [
      {
        "id": 5075,
        "nodeType": "PragmaDirective",
        "src": "129:31:6",
        "literals": [
          "solidity",
          ">=",
          "0.6",
          ".2",
          "<",
          "0.9",
          ".0"
        ]
      },
      {
        "id": 5139,
        "nodeType": "ContractDefinition",
        "src": "162:850:6",
        "nodes": [
          {
            "id": 5082,
            "nodeType": "VariableDeclaration",
            "src": "185:86:6",
            "constant": true,
            "functionSelector": "10332977",
            "mutability": "constant",
            "name": "assertionError",
            "nameLocation": "207:14:6",
            "scope": 5139,
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bytes_memory_ptr",
              "typeString": "bytes"
            },
            "typeName": {
              "id": 5076,
              "name": "bytes",
              "nodeType": "ElementaryTypeName",
              "src": "185:5:6",
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_storage_ptr",
                "typeString": "bytes"
              }
            },
            "value": {
              "arguments": [
                {
                  "hexValue": "50616e69632875696e7432353629",
                  "id": 5079,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "string",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "248:16:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  "value": "Panic(uint256)"
                },
                {
                  "hexValue": "30783031",
                  "id": 5080,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "number",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "266:4:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_rational_1_by_1",
                    "typeString": "int_const 1"
                  },
                  "value": "0x01"
                }
              ],
              "expression": {
                "argumentTypes": [
                  {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  {
                    "typeIdentifier": "t_rational_1_by_1",
                    "typeString": "int_const 1"
                  }
                ],
                "expression": {
                  "id": 5077,
                  "name": "abi",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": -1,
                  "src": "224:3:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_magic_abi",
                    "typeString": "abi"
                  }
                },
                "id": 5078,
                "isConstant": false,
                "isLValue": false,
                "isPure": true,
                "lValueRequested": false,
                "memberLocation": "228:19:6",
                "memberName": "encodeWithSignature",
                "nodeType": "MemberAccess",
                "src": "224:23:6",
                "typeDescriptions": {
                  "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                  "typeString": "function (string memory) pure returns (bytes memory)"
                }
              },
              "id": 5081,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "functionCall",
              "lValueRequested": false,
              "nameLocations": [],
              "names": [],
              "nodeType": "FunctionCall",
              "src": "224:47:6",
              "tryCall": false,
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_memory_ptr",
                "typeString": "bytes memory"
              }
            },
            "visibility": "public"
          },
          {
            "id": 5089,
            "nodeType": "VariableDeclaration",
            "src": "277:87:6",
            "constant": true,
            "functionSelector": "8995290f",
            "mutability": "constant",
            "name": "arithmeticError",
            "nameLocation": "299:15:6",
            "scope": 5139,
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bytes_memory_ptr",
              "typeString": "bytes"
            },
            "typeName": {
              "id": 5083,
              "name": "bytes",
              "nodeType": "ElementaryTypeName",
              "src": "277:5:6",
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_storage_ptr",
                "typeString": "bytes"
              }
            },
            "value": {
              "arguments": [
                {
                  "hexValue": "50616e69632875696e7432353629",
                  "id": 5086,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "string",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "341:16:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  "value": "Panic(uint256)"
                },
                {
                  "hexValue": "30783131",
                  "id": 5087,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "number",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "359:4:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_rational_17_by_1",
                    "typeString": "int_const 17"
                  },
                  "value": "0x11"
                }
              ],
              "expression": {
                "argumentTypes": [
                  {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  {
                    "typeIdentifier": "t_rational_17_by_1",
                    "typeString": "int_const 17"
                  }
                ],
                "expression": {
                  "id": 5084,
                  "name": "abi",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": -1,
                  "src": "317:3:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_magic_abi",
                    "typeString": "abi"
                  }
                },
                "id": 5085,
                "isConstant": false,
                "isLValue": false,
                "isPure": true,
                "lValueRequested": false,
                "memberLocation": "321:19:6",
                "memberName": "encodeWithSignature",
                "nodeType": "MemberAccess",
                "src": "317:23:6",
                "typeDescriptions": {
                  "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                  "typeString": "function (string memory) pure returns (bytes memory)"
                }
              },
              "id": 5088,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "functionCall",
              "lValueRequested": false,
              "nameLocations": [],
              "names": [],
              "nodeType": "FunctionCall",
              "src": "317:47:6",
              "tryCall": false,
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_memory_ptr",
                "typeString": "bytes memory"
              }
            },
            "visibility": "public"
          },
          {
            "id": 5096,
            "nodeType": "VariableDeclaration",
            "src": "370:85:6",
            "constant": true,
            "functionSelector": "fa784a44",
            "mutability": "constant",
            "name": "divisionError",
            "nameLocation": "392:13:6",
            "scope": 5139,
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bytes_memory_ptr",
              "typeString": "bytes"
            },
            "typeName": {
              "id": 5090,
              "name": "bytes",
              "nodeType": "ElementaryTypeName",
              "src": "370:5:6",
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_storage_ptr",
                "typeString": "bytes"
              }
            },
            "value": {
              "arguments": [
                {
                  "hexValue": "50616e69632875696e7432353629",
                  "id": 5093,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "string",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "432:16:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  "value": "Panic(uint256)"
                },
                {
                  "hexValue": "30783132",
                  "id": 5094,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "number",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "450:4:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_rational_18_by_1",
                    "typeString": "int_const 18"
                  },
                  "value": "0x12"
                }
              ],
              "expression": {
                "argumentTypes": [
                  {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  {
                    "typeIdentifier": "t_rational_18_by_1",
                    "typeString": "int_const 18"
                  }
                ],
                "expression": {
                  "id": 5091,
                  "name": "abi",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": -1,
                  "src": "408:3:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_magic_abi",
                    "typeString": "abi"
                  }
                },
                "id": 5092,
                "isConstant": false,
                "isLValue": false,
                "isPure": true,
                "lValueRequested": false,
                "memberLocation": "412:19:6",
                "memberName": "encodeWithSignature",
                "nodeType": "MemberAccess",
                "src": "408:23:6",
                "typeDescriptions": {
                  "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                  "typeString": "function (string memory) pure returns (bytes memory)"
                }
              },
              "id": 5095,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "functionCall",
              "lValueRequested": false,
              "nameLocations": [],
              "names": [],
              "nodeType": "FunctionCall",
              "src": "408:47:6",
              "tryCall": false,
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_memory_ptr",
                "typeString": "bytes memory"
              }
            },
            "visibility": "public"
          },
          {
            "id": 5103,
            "nodeType": "VariableDeclaration",
            "src": "461:91:6",
            "constant": true,
            "functionSelector": "1de45560",
            "mutability": "constant",
            "name": "enumConversionError",
            "nameLocation": "483:19:6",
            "scope": 5139,
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bytes_memory_ptr",
              "typeString": "bytes"
            },
            "typeName": {
              "id": 5097,
              "name": "bytes",
              "nodeType": "ElementaryTypeName",
              "src": "461:5:6",
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_storage_ptr",
                "typeString": "bytes"
              }
            },
            "value": {
              "arguments": [
                {
                  "hexValue": "50616e69632875696e7432353629",
                  "id": 5100,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "string",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "529:16:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  "value": "Panic(uint256)"
                },
                {
                  "hexValue": "30783231",
                  "id": 5101,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "number",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "547:4:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_rational_33_by_1",
                    "typeString": "int_const 33"
                  },
                  "value": "0x21"
                }
              ],
              "expression": {
                "argumentTypes": [
                  {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  {
                    "typeIdentifier": "t_rational_33_by_1",
                    "typeString": "int_const 33"
                  }
                ],
                "expression": {
                  "id": 5098,
                  "name": "abi",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": -1,
                  "src": "505:3:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_magic_abi",
                    "typeString": "abi"
                  }
                },
                "id": 5099,
                "isConstant": false,
                "isLValue": false,
                "isPure": true,
                "lValueRequested": false,
                "memberLocation": "509:19:6",
                "memberName": "encodeWithSignature",
                "nodeType": "MemberAccess",
                "src": "505:23:6",
                "typeDescriptions": {
                  "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                  "typeString": "function (string memory) pure returns (bytes memory)"
                }
              },
              "id": 5102,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "functionCall",
              "lValueRequested": false,
              "nameLocations": [],
              "names": [],
              "nodeType": "FunctionCall",
              "src": "505:47:6",
              "tryCall": false,
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_memory_ptr",
                "typeString": "bytes memory"
              }
            },
            "visibility": "public"
          },
          {
            "id": 5110,
            "nodeType": "VariableDeclaration",
            "src": "558:90:6",
            "constant": true,
            "functionSelector": "d160e4de",
            "mutability": "constant",
            "name": "encodeStorageError",
            "nameLocation": "580:18:6",
            "scope": 5139,
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bytes_memory_ptr",
              "typeString": "bytes"
            },
            "typeName": {
              "id": 5104,
              "name": "bytes",
              "nodeType": "ElementaryTypeName",
              "src": "558:5:6",
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_storage_ptr",
                "typeString": "bytes"
              }
            },
            "value": {
              "arguments": [
                {
                  "hexValue": "50616e69632875696e7432353629",
                  "id": 5107,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "string",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "625:16:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  "value": "Panic(uint256)"
                },
                {
                  "hexValue": "30783232",
                  "id": 5108,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "number",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "643:4:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_rational_34_by_1",
                    "typeString": "int_const 34"
                  },
                  "value": "0x22"
                }
              ],
              "expression": {
                "argumentTypes": [
                  {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  {
                    "typeIdentifier": "t_rational_34_by_1",
                    "typeString": "int_const 34"
                  }
                ],
                "expression": {
                  "id": 5105,
                  "name": "abi",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": -1,
                  "src": "601:3:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_magic_abi",
                    "typeString": "abi"
                  }
                },
                "id": 5106,
                "isConstant": false,
                "isLValue": false,
                "isPure": true,
                "lValueRequested": false,
                "memberLocation": "605:19:6",
                "memberName": "encodeWithSignature",
                "nodeType": "MemberAccess",
                "src": "601:23:6",
                "typeDescriptions": {
                  "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                  "typeString": "function (string memory) pure returns (bytes memory)"
                }
              },
              "id": 5109,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "functionCall",
              "lValueRequested": false,
              "nameLocations": [],
              "names": [],
              "nodeType": "FunctionCall",
              "src": "601:47:6",
              "tryCall": false,
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_memory_ptr",
                "typeString": "bytes memory"
              }
            },
            "visibility": "public"
          },
          {
            "id": 5117,
            "nodeType": "VariableDeclaration",
            "src": "654:80:6",
            "constant": true,
            "functionSelector": "b22dc54d",
            "mutability": "constant",
            "name": "popError",
            "nameLocation": "676:8:6",
            "scope": 5139,
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bytes_memory_ptr",
              "typeString": "bytes"
            },
            "typeName": {
              "id": 5111,
              "name": "bytes",
              "nodeType": "ElementaryTypeName",
              "src": "654:5:6",
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_storage_ptr",
                "typeString": "bytes"
              }
            },
            "value": {
              "arguments": [
                {
                  "hexValue": "50616e69632875696e7432353629",
                  "id": 5114,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "string",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "711:16:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  "value": "Panic(uint256)"
                },
                {
                  "hexValue": "30783331",
                  "id": 5115,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "number",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "729:4:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_rational_49_by_1",
                    "typeString": "int_const 49"
                  },
                  "value": "0x31"
                }
              ],
              "expression": {
                "argumentTypes": [
                  {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  {
                    "typeIdentifier": "t_rational_49_by_1",
                    "typeString": "int_const 49"
                  }
                ],
                "expression": {
                  "id": 5112,
                  "name": "abi",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": -1,
                  "src": "687:3:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_magic_abi",
                    "typeString": "abi"
                  }
                },
                "id": 5113,
                "isConstant": false,
                "isLValue": false,
                "isPure": true,
                "lValueRequested": false,
                "memberLocation": "691:19:6",
                "memberName": "encodeWithSignature",
                "nodeType": "MemberAccess",
                "src": "687:23:6",
                "typeDescriptions": {
                  "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                  "typeString": "function (string memory) pure returns (bytes memory)"
                }
              },
              "id": 5116,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "functionCall",
              "lValueRequested": false,
              "nameLocations": [],
              "names": [],
              "nodeType": "FunctionCall",
              "src": "687:47:6",
              "tryCall": false,
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_memory_ptr",
                "typeString": "bytes memory"
              }
            },
            "visibility": "public"
          },
          {
            "id": 5124,
            "nodeType": "VariableDeclaration",
            "src": "740:85:6",
            "constant": true,
            "functionSelector": "05ee8612",
            "mutability": "constant",
            "name": "indexOOBError",
            "nameLocation": "762:13:6",
            "scope": 5139,
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bytes_memory_ptr",
              "typeString": "bytes"
            },
            "typeName": {
              "id": 5118,
              "name": "bytes",
              "nodeType": "ElementaryTypeName",
              "src": "740:5:6",
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_storage_ptr",
                "typeString": "bytes"
              }
            },
            "value": {
              "arguments": [
                {
                  "hexValue": "50616e69632875696e7432353629",
                  "id": 5121,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "string",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "802:16:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  "value": "Panic(uint256)"
                },
                {
                  "hexValue": "30783332",
                  "id": 5122,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "number",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "820:4:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_rational_50_by_1",
                    "typeString": "int_const 50"
                  },
                  "value": "0x32"
                }
              ],
              "expression": {
                "argumentTypes": [
                  {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  {
                    "typeIdentifier": "t_rational_50_by_1",
                    "typeString": "int_const 50"
                  }
                ],
                "expression": {
                  "id": 5119,
                  "name": "abi",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": -1,
                  "src": "778:3:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_magic_abi",
                    "typeString": "abi"
                  }
                },
                "id": 5120,
                "isConstant": false,
                "isLValue": false,
                "isPure": true,
                "lValueRequested": false,
                "memberLocation": "782:19:6",
                "memberName": "encodeWithSignature",
                "nodeType": "MemberAccess",
                "src": "778:23:6",
                "typeDescriptions": {
                  "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                  "typeString": "function (string memory) pure returns (bytes memory)"
                }
              },
              "id": 5123,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "functionCall",
              "lValueRequested": false,
              "nameLocations": [],
              "names": [],
              "nodeType": "FunctionCall",
              "src": "778:47:6",
              "tryCall": false,
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_memory_ptr",
                "typeString": "bytes memory"
              }
            },
            "visibility": "public"
          },
          {
            "id": 5131,
            "nodeType": "VariableDeclaration",
            "src": "831:88:6",
            "constant": true,
            "functionSelector": "986c5f68",
            "mutability": "constant",
            "name": "memOverflowError",
            "nameLocation": "853:16:6",
            "scope": 5139,
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bytes_memory_ptr",
              "typeString": "bytes"
            },
            "typeName": {
              "id": 5125,
              "name": "bytes",
              "nodeType": "ElementaryTypeName",
              "src": "831:5:6",
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_storage_ptr",
                "typeString": "bytes"
              }
            },
            "value": {
              "arguments": [
                {
                  "hexValue": "50616e69632875696e7432353629",
                  "id": 5128,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "string",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "896:16:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  "value": "Panic(uint256)"
                },
                {
                  "hexValue": "30783431",
                  "id": 5129,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "number",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "914:4:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_rational_65_by_1",
                    "typeString": "int_const 65"
                  },
                  "value": "0x41"
                }
              ],
              "expression": {
                "argumentTypes": [
                  {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  {
                    "typeIdentifier": "t_rational_65_by_1",
                    "typeString": "int_const 65"
                  }
                ],
                "expression": {
                  "id": 5126,
                  "name": "abi",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": -1,
                  "src": "872:3:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_magic_abi",
                    "typeString": "abi"
                  }
                },
                "id": 5127,
                "isConstant": false,
                "isLValue": false,
                "isPure": true,
                "lValueRequested": false,
                "memberLocation": "876:19:6",
                "memberName": "encodeWithSignature",
                "nodeType": "MemberAccess",
                "src": "872:23:6",
                "typeDescriptions": {
                  "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                  "typeString": "function (string memory) pure returns (bytes memory)"
                }
              },
              "id": 5130,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "functionCall",
              "lValueRequested": false,
              "nameLocations": [],
              "names": [],
              "nodeType": "FunctionCall",
              "src": "872:47:6",
              "tryCall": false,
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_memory_ptr",
                "typeString": "bytes memory"
              }
            },
            "visibility": "public"
          },
          {
            "id": 5138,
            "nodeType": "VariableDeclaration",
            "src": "925:84:6",
            "constant": true,
            "functionSelector": "b67689da",
            "mutability": "constant",
            "name": "zeroVarError",
            "nameLocation": "947:12:6",
            "scope": 5139,
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bytes_memory_ptr",
              "typeString": "bytes"
            },
            "typeName": {
              "id": 5132,
              "name": "bytes",
              "nodeType": "ElementaryTypeName",
              "src": "925:5:6",
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_storage_ptr",
                "typeString": "bytes"
              }
            },
            "value": {
              "arguments": [
                {
                  "hexValue": "50616e69632875696e7432353629",
                  "id": 5135,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "string",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "986:16:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  "value": "Panic(uint256)"
                },
                {
                  "hexValue": "30783531",
                  "id": 5136,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "number",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "1004:4:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_rational_81_by_1",
                    "typeString": "int_const 81"
                  },
                  "value": "0x51"
                }
              ],
              "expression": {
                "argumentTypes": [
                  {
                    "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268",
                    "typeString": "literal_string \"Panic(uint256)\""
                  },
                  {
                    "typeIdentifier": "t_rational_81_by_1",
                    "typeString": "int_const 81"
                  }
                ],
                "expression": {
                  "id": 5133,
                  "name": "abi",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": -1,
                  "src": "962:3:6",
                  "typeDescriptions": {
                    "typeIdentifier": "t_magic_abi",
                    "typeString": "abi"
                  }
                },
                "id": 5134,
                "isConstant": false,
                "isLValue": false,
                "isPure": true,
                "lValueRequested": false,
                "memberLocation": "966:19:6",
                "memberName": "encodeWithSignature",
                "nodeType": "MemberAccess",
                "src": "962:23:6",
                "typeDescriptions": {
                  "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$",
                  "typeString": "function (string memory) pure returns (bytes memory)"
                }
              },
              "id": 5137,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "functionCall",
              "lValueRequested": false,
              "nameLocations": [],
              "names": [],
              "nodeType": "FunctionCall",
              "src": "962:47:6",
              "tryCall": false,
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_memory_ptr",
                "typeString": "bytes memory"
              }
            },
            "visibility": "public"
          }
        ],
        "abstract": false,
        "baseContracts": [],
        "canonicalName": "stdError",
        "contractDependencies": [],
        "contractKind": "library",
        "fullyImplemented": true,
        "linearizedBaseContracts": [
          5139
        ],
        "name": "stdError",
        "nameLocation": "170:8:6",
        "scope": 5140,
        "usedErrors": []
      }
    ],
    "license": "MIT"
  },
  "id": 6
}