{
  "_format": "hh3-artifact-1",
  "contractName": "TransparentUpgradeableProxy",
  "sourceName": "@openzeppelin/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": [
        {
          "internalType": "address",
          "name": "admin",
          "type": "address"
        }
      ],
      "name": "ERC1967InvalidAdmin",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "implementation",
          "type": "address"
        }
      ],
      "name": "ERC1967InvalidImplementation",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "ERC1967NonPayable",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "FailedCall",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "ProxyDeniedAdminAccess",
      "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": "0x60a0604052604051610e58380380610e5883398101604081905261002291610389565b828161002e8282610089565b50508160405161003d90610326565b610047919061045f565b604051809103906000f080158015610063573d6000803e3d6000fd5b506001600160a01b031660805261008161007c60805190565b6100e8565b50505061048f565b61009282610156565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156100dc576100d782826101d0565b505050565b6100e4610247565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f610128600080516020610e38833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a161015381610268565b50565b806001600160a01b03163b60000361018c5780604051634c9c8ce360e01b8152600401610183919061045f565b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080846001600160a01b0316846040516101ed9190610473565b600060405180830381855af49150503d8060008114610228576040519150601f19603f3d011682016040523d82523d6000602084013e61022d565b606091505b50909250905061023e8583836102a7565b95945050505050565b34156102665760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b038116610292576000604051633173bdd160e11b8152600401610183919061045f565b80600080516020610e388339815191526101af565b6060826102bc576102b7826102fd565b6102f6565b81511580156102d357506001600160a01b0384163b155b156102f35783604051639996b31560e01b8152600401610183919061045f565b50805b9392505050565b80511561030d5780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b61052a8061090e83390190565b80516001600160a01b038116811461034a57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015610380578181015183820152602001610368565b50506000910152565b60008060006060848603121561039e57600080fd5b6103a784610333565b92506103b560208501610333565b60408501519092506001600160401b038111156103d157600080fd5b8401601f810186136103e257600080fd5b80516001600160401b038111156103fb576103fb61034f565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104295761042961034f565b60405281815282820160200188101561044157600080fd5b610452826020830160208601610365565b8093505050509250925092565b6001600160a01b0391909116815260200190565b60008251610485818460208701610365565b9190910192915050565b6080516104656104a96000396000601001526104656000f3fe608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b60008061009336600481846102e0565b8101906100a09190610320565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610143565b6100cb82610167565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101cc565b505050565b6100ae610242565b600061013e600080516020610439833981519152546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610162573d6000f35b3d6000fd5b806001600160a01b03163b60000361019d5780604051634c9c8ce360e01b815260040161019491906103f5565b60405180910390fd5b60008051602061043983398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516101e99190610409565b600060405180830381855af49150503d8060008114610224576040519150601f19603f3d011682016040523d82523d6000602084013e610229565b606091505b5091509150610239858383610261565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261027657610271826102b7565b6102b0565b815115801561028d57506001600160a01b0384163b155b156102ad5783604051639996b31560e01b815260040161019491906103f5565b50805b9392505050565b8051156102c75780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b600080858511156102f057600080fd5b838611156102fd57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561033357600080fd5b82356001600160a01b038116811461034a57600080fd5b915060208301356001600160401b0381111561036557600080fd5b8301601f8101851361037657600080fd5b80356001600160401b0381111561038f5761038f61030a565b604051601f8201601f19908116603f011681016001600160401b03811182821017156103bd576103bd61030a565b6040528181528282016020018710156103d557600080fd5b816020840160208301376000602083830101528093505050509250929050565b6001600160a01b0391909116815260200190565b6000825160005b8181101561042a5760208186018101518583015201610410565b50600092019182525091905056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca164736f6c634300081c000a608060405234801561001057600080fd5b5060405161052a38038061052a83398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b61042d806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610091578063ad3cb1cc146100a4578063f2fde38b146100e2575b600080fd5b34801561005b57600080fd5b50610064610102565b005b34801561007257600080fd5b5061007b610116565b604051610088919061025d565b60405180910390f35b61006461009f36600461029c565b610125565b3480156100b057600080fd5b506100d5604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008891906103bd565b3480156100ee57600080fd5b506100646100fd3660046103d7565b610194565b61010a6101db565b610114600061020d565b565b6000546001600160a01b031690565b61012d6101db565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015d90869086906004016103f4565b6000604051808303818588803b15801561017657600080fd5b505af115801561018a573d6000803e3d6000fd5b5050505050505050565b61019c6101db565b6001600160a01b0381166101cf576000604051631e4fbdf760e01b81526004016101c6919061025d565b60405180910390fd5b6101d88161020d565b50565b336101e4610116565b6001600160a01b031614610114573360405163118cdaa760e01b81526004016101c6919061025d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0391909116815260200190565b6001600160a01b03811681146101d857600080fd5b634e487b7160e01b600052604160045260246000fd5b6000806000606084860312156102b157600080fd5b83356102bc81610271565b925060208401356102cc81610271565b915060408401356001600160401b038111156102e757600080fd5b8401601f810186136102f857600080fd5b80356001600160401b0381111561031157610311610286565b604051601f8201601f19908116603f011681016001600160401b038111828210171561033f5761033f610286565b60405281815282820160200188101561035757600080fd5b816020840160208301376000602083830101528093505050509250925092565b6000815180845260005b8181101561039d57602081850181015186830182015201610381565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103d06020830184610377565b9392505050565b6000602082840312156103e957600080fd5b81356103d081610271565b6001600160a01b038316815260406020820181905260009061041890830184610377565b94935050505056fea164736f6c634300081c000ab53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103",
  "deployedBytecode": "0x608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b60008061009336600481846102e0565b8101906100a09190610320565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610143565b6100cb82610167565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101cc565b505050565b6100ae610242565b600061013e600080516020610439833981519152546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610162573d6000f35b3d6000fd5b806001600160a01b03163b60000361019d5780604051634c9c8ce360e01b815260040161019491906103f5565b60405180910390fd5b60008051602061043983398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516101e99190610409565b600060405180830381855af49150503d8060008114610224576040519150601f19603f3d011682016040523d82523d6000602084013e610229565b606091505b5091509150610239858383610261565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261027657610271826102b7565b6102b0565b815115801561028d57506001600160a01b0384163b155b156102ad5783604051639996b31560e01b815260040161019491906103f5565b50805b9392505050565b8051156102c75780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b600080858511156102f057600080fd5b838611156102fd57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561033357600080fd5b82356001600160a01b038116811461034a57600080fd5b915060208301356001600160401b0381111561036557600080fd5b8301601f8101851361037657600080fd5b80356001600160401b0381111561038f5761038f61030a565b604051601f8201601f19908116603f011681016001600160401b03811182821017156103bd576103bd61030a565b6040528181528282016020018710156103d557600080fd5b816020840160208301376000602083830101528093505050509250929050565b6001600160a01b0391909116815260200190565b6000825160005b8181101561042a5760208186018101518583015201610410565b50600092019182525091905056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca164736f6c634300081c000a",
  "linkReferences": {},
  "deployedLinkReferences": {},
  "immutableReferences": {
    "3591": [
      {
        "length": 32,
        "start": 16
      }
    ]
  },
  "inputSourceName": "npm/@openzeppelin/contracts@5.3.0/proxy/transparent/TransparentUpgradeableProxy.sol",
  "buildInfoId": "solc-0_8_28-58b894a0ac77a2d784be77b69288a062b8f6f518"
}