{
  "_format": "hh-sol-artifact-1",
  "contractName": "TransparentUpgradeableProxy",
  "sourceName": "contracts/proxy/transparent/TransparentUpgradeableProxy.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_logic",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "initialOwner",
          "type": "address"
        },
        {
          "internalType": "bytes",
          "name": "_data",
          "type": "bytes"
        }
      ],
      "stateMutability": "payable",
      "type": "constructor"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "target",
          "type": "address"
        }
      ],
      "name": "AddressEmptyCode",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "FailedCall",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "ProxyDeniedAdminAccess",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "admin",
          "type": "address"
        }
      ],
      "name": "TRC1967InvalidAdmin",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "implementation",
          "type": "address"
        }
      ],
      "name": "TRC1967InvalidImplementation",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "TRC1967NonPayable",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "TRC1967ProxyUninitialized",
      "type": "error"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "previousAdmin",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "newAdmin",
          "type": "address"
        }
      ],
      "name": "AdminChanged",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "implementation",
          "type": "address"
        }
      ],
      "name": "Upgraded",
      "type": "event"
    },
    {
      "stateMutability": "payable",
      "type": "fallback"
    }
  ],
  "bytecode": "0x60a0604052610aff8038038061001481610260565b928339810160608282031261025c5761002c82610285565b9061003960208401610285565b604084015190936001600160401b03821161025c570181601f8201121561025c578051906001600160401b0382116102015761007e601f8301601f1916602001610260565b928284526020838301011161025c57815f9260208093018386015e8301015280511561024d57813b1561022c577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0384169081179091557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a28051156102155761011c916102a2565b505b604051906104a28083016001600160401b0381118482101761020157602092849261063d84396001600160a01b031681520301905ff080156101f65760018060a01b0316806080525f80516020610adf833981519152547f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6040805160018060a01b0384168152846020820152a181156101e3576001600160a01b031916175f80516020610adf8339815191525560405161030e908161032f82396080518160070152f35b633fee773760e01b5f525f60045260245ffd5b6040513d5f823e3d90fd5b634e487b7160e01b5f52604160045260245ffd5b5050341561011e5763296b0c2f60e11b5f5260045ffd5b50631ca91c9360e11b5f9081526001600160a01b0391909116600452602490fd5b6374425d3360e01b5f5260045ffd5b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761020157604052565b516001600160a81b038116810361025c576001600160a01b031690565b905f8091602081519101845af4808061031b575b156102d65750506040513d81523d5f602083013e60203d82010160405290565b156102fb57639996b31560e01b5f9081526001600160a01b0391909116600452602490fd5b3d1561030c576040513d5f823e3d90fd5b63d6bda27560e01b5f5260045ffd5b503d1515806102b65750813b15156102b656fe6080604052337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031603610066575f356001600160e01b03191663278f794360e11b1461005c576334ad5dbb60e21b5f5260045ffd5b6100646100c3565b005b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc545f9081906001600160a01b0316368280378136915af43d5f803e156100ab573d5ff35b3d5ffd5b634e487b7160e01b5f52604160045260245ffd5b3660041161017a57604036600319011261017a576004356001600160a81b038116810361017a576024359067ffffffffffffffff821161017a573660238301121561017a5781600401359067ffffffffffffffff821161017e5760405191601f8101601f19908116603f0116830167ffffffffffffffff81118482101761017e57604052808352366024828601011161017a576020815f926024610178970183870137840101526001600160a01b0316610183565b565b5f80fd5b6100af565b90813b15610217577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0384169081179091557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a28051156101ff576101fc91610238565b50565b50503461020857565b63296b0c2f60e11b5f5260045ffd5b50631ca91c9360e11b5f9081526001600160a01b0391909116600452602490fd5b905f8091602081519101845af4808061029e575b1561025e57505061025b6102b1565b90565b1561027e57639996b31560e01b5f526001600160a01b031660045260245ffd5b3d1561028f576040513d5f823e3d90fd5b63d6bda27560e01b5f5260045ffd5b503d15158061024c5750813b151561024c565b604051903d82523d5f602084013e60203d83010160405256fea36474726f6e582212206736a45119c366f2a14beee40075811c0e3d75d3790ff424e9eb57d0a909eb486c6578706572696d656e74616cf564736f6c634300081a004160803460c757d360c757d260c757601f6104a238819003918201601f19168301916001600160401b0383118484101760cb5780849260209460405283398101031260c757516001600160a81b038116810360c7576001600160a01b0316801560b4575f80546001600160a01b031981168317825560405192916001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a36103c290816100e08239f35b631e4fbdf760e01b5f525f60045260245ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f803560e01c8063715018a6146102925780638da5cb5b146102615780639623609d1461013a578063ad3cb1cc146100e35763f2fde38b14610051575f80fd5b346100e057d36100e057d26100e05760203660031901126100e0576100746102f3565b61007c610358565b6001600160a01b031680156100cc5781546001600160a01b03198116821783556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08380a380f35b631e4fbdf760e01b82526004829052602482fd5b80fd5b50346100e057d36100e057d26100e057806003193601126100e05750610136604051610110604082610312565b60058152640352e302e360dc1b6020820152604051918291602083526020830190610334565b0390f35b5060603660031901126102495761014f6102f3565b6024356001600160a81b03811681036102495760018060a01b03166044359167ffffffffffffffff8311610249573660238401121561024957826004013567ffffffffffffffff811161024d57604051936101b4601f8301601f191660200186610312565b818552366024838301011161024957815f9260246020930183880137850101526101dc610358565b6001600160a01b031691823b156102495761021c925f9260405180958194829363278f794360e11b84526004840152604060248401526044830190610334565b039134905af1801561023e57610230575080f35b61023c91505f90610312565b005b6040513d5f823e3d90fd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b3461024957d361024957d2610249575f366003190112610249575f546040516001600160a01b039091168152602090f35b3461024957d361024957d2610249575f366003190112610249576102b4610358565b5f80546001600160a01b0319811682556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b6004356001600160a81b0381168103610249576001600160a01b031690565b90601f8019910116810190811067ffffffffffffffff82111761024d57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b5f546001600160a01b0316330361036b57565b63118cdaa760e01b5f523360045260245ffdfea36474726f6e582212200906e2c623c87f15780bc5f6d375b843e7d405a2d07fcd6b26848a4df55894896c6578706572696d656e74616cf564736f6c634300081a0041b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103",
  "deployedBytecode": "0x6080604052337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031603610066575f356001600160e01b03191663278f794360e11b1461005c576334ad5dbb60e21b5f5260045ffd5b6100646100c3565b005b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc545f9081906001600160a01b0316368280378136915af43d5f803e156100ab573d5ff35b3d5ffd5b634e487b7160e01b5f52604160045260245ffd5b3660041161017a57604036600319011261017a576004356001600160a81b038116810361017a576024359067ffffffffffffffff821161017a573660238301121561017a5781600401359067ffffffffffffffff821161017e5760405191601f8101601f19908116603f0116830167ffffffffffffffff81118482101761017e57604052808352366024828601011161017a576020815f926024610178970183870137840101526001600160a01b0316610183565b565b5f80fd5b6100af565b90813b15610217577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0384169081179091557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a28051156101ff576101fc91610238565b50565b50503461020857565b63296b0c2f60e11b5f5260045ffd5b50631ca91c9360e11b5f9081526001600160a01b0391909116600452602490fd5b905f8091602081519101845af4808061029e575b1561025e57505061025b6102b1565b90565b1561027e57639996b31560e01b5f526001600160a01b031660045260245ffd5b3d1561028f576040513d5f823e3d90fd5b63d6bda27560e01b5f5260045ffd5b503d15158061024c5750813b151561024c565b604051903d82523d5f602084013e60203d83010160405256fea36474726f6e582212206736a45119c366f2a14beee40075811c0e3d75d3790ff424e9eb57d0a909eb486c6578706572696d656e74616cf564736f6c634300081a0041",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
