{
  "address": "0x761AD7fDF60b63297B8E9ED7F625bB4E734c7663",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_ops",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "deployer",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "proxy",
          "type": "address"
        }
      ],
      "name": "DeployProxy",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "oldImplementation",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "newImplementation",
          "type": "address"
        }
      ],
      "name": "SetImplementation",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "implementation",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "bool",
          "name": "whitelisted",
          "type": "bool"
        }
      ],
      "name": "UpdateWhitelistedImplementation",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "deploy",
      "outputs": [
        {
          "internalType": "address payable",
          "name": "proxy",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "deployFor",
      "outputs": [
        {
          "internalType": "address payable",
          "name": "proxy",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_account",
          "type": "address"
        }
      ],
      "name": "determineProxyAddress",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_account",
          "type": "address"
        }
      ],
      "name": "getProxyOf",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        },
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "implementation",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_implementation",
          "type": "address"
        }
      ],
      "name": "initialize",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "ops",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_proxy",
          "type": "address"
        }
      ],
      "name": "ownerOf",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_newImplementation",
          "type": "address"
        }
      ],
      "name": "setImplementation",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_implementation",
          "type": "address"
        },
        {
          "internalType": "bool",
          "name": "_whitelist",
          "type": "bool"
        }
      ],
      "name": "updateWhitelistedImplementations",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "name": "whitelistedImplementations",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "transactionHash": "0xe8e797314c2699406307ca4569fd368374cfcce17cde0d1435ea38f57c5c5a7f",
  "receipt": {
    "to": "0x0000000000000000000000000000000000008006",
    "from": "0xF1108379d71ff2A785899F4C36010f841F1Fea04",
    "contractAddress": "0x761AD7fDF60b63297B8E9ED7F625bB4E734c7663",
    "transactionIndex": 3,
    "gasUsed": "20111017",
    "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
    "blockHash": "0xa72598116b1c3921ae22f6121de4bb11d08617b11e7647412b40f4ed9680c421",
    "transactionHash": "0xe8e797314c2699406307ca4569fd368374cfcce17cde0d1435ea38f57c5c5a7f",
    "logs": [
      {
        "transactionIndex": 3,
        "blockNumber": 5925361,
        "transactionHash": "0xe8e797314c2699406307ca4569fd368374cfcce17cde0d1435ea38f57c5c5a7f",
        "address": "0x000000000000000000000000000000000000800A",
        "topics": [
          "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
          "0x000000000000000000000000f1108379d71ff2a785899f4c36010f841f1fea04",
          "0x0000000000000000000000000000000000000000000000000000000000008001"
        ],
        "data": "0x000000000000000000000000000000000000000000000000001b0703da4d8f00",
        "logIndex": 22,
        "blockHash": "0xa72598116b1c3921ae22f6121de4bb11d08617b11e7647412b40f4ed9680c421"
      },
      {
        "transactionIndex": 3,
        "blockNumber": 5925361,
        "transactionHash": "0xe8e797314c2699406307ca4569fd368374cfcce17cde0d1435ea38f57c5c5a7f",
        "address": "0x0000000000000000000000000000000000008008",
        "topics": [
          "0x3a36e47291f4201faf137fab081d92295bce2d53be2c6ca68ba82c7faa9ce241",
          "0x000000000000000000000000000000000000000000000000000000000000800e",
          "0x0f87fa0584c20a245c052f325627568e8ba23ec2f422fa7040c491283dfed81e"
        ],
        "data": "[encoded data, 17858 characters]",
        "logIndex": 23,
        "blockHash": "0xa72598116b1c3921ae22f6121de4bb11d08617b11e7647412b40f4ed9680c421"
      },
      {
        "transactionIndex": 3,
        "blockNumber": 5925361,
        "transactionHash": "0xe8e797314c2699406307ca4569fd368374cfcce17cde0d1435ea38f57c5c5a7f",
        "address": "0x0000000000000000000000000000000000008004",
        "topics": [
          "0xc94722ff13eacf53547c4741dab5228353a05938ffcdd5d4a2d533ae0e618287",
          "0x0100018b36aef3af7d9ed64b5dfea0669f6cb09840c1fe86fc98a1f9803eb1d1",
          "0x0000000000000000000000000000000000000000000000000000000000000000"
        ],
        "data": "0x",
        "logIndex": 24,
        "blockHash": "0xa72598116b1c3921ae22f6121de4bb11d08617b11e7647412b40f4ed9680c421"
      },
      {
        "transactionIndex": 3,
        "blockNumber": 5925361,
        "transactionHash": "0xe8e797314c2699406307ca4569fd368374cfcce17cde0d1435ea38f57c5c5a7f",
        "address": "0x0000000000000000000000000000000000008008",
        "topics": [
          "0x3a36e47291f4201faf137fab081d92295bce2d53be2c6ca68ba82c7faa9ce241",
          "0x000000000000000000000000000000000000000000000000000000000000800e",
          "0x66ba752b83c75a5e82a5ffbd85e2ac6d5ee9ace1168b52b18546eed6fcdeb92b"
        ],
        "data": "[encoded data, 17474 characters]",
        "logIndex": 25,
        "blockHash": "0xa72598116b1c3921ae22f6121de4bb11d08617b11e7647412b40f4ed9680c421"
      },
      {
        "transactionIndex": 3,
        "blockNumber": 5925361,
        "transactionHash": "0xe8e797314c2699406307ca4569fd368374cfcce17cde0d1435ea38f57c5c5a7f",
        "address": "0x0000000000000000000000000000000000008004",
        "topics": [
          "0xc94722ff13eacf53547c4741dab5228353a05938ffcdd5d4a2d533ae0e618287",
          "0x010001e1b1cb6196c0fa5e94fe311f7b2d1179679c41ce8bd96bf3cbd4a75405",
          "0x0000000000000000000000000000000000000000000000000000000000000000"
        ],
        "data": "0x",
        "logIndex": 26,
        "blockHash": "0xa72598116b1c3921ae22f6121de4bb11d08617b11e7647412b40f4ed9680c421"
      },
      {
        "transactionIndex": 3,
        "blockNumber": 5925361,
        "transactionHash": "0xe8e797314c2699406307ca4569fd368374cfcce17cde0d1435ea38f57c5c5a7f",
        "address": "0x0000000000000000000000000000000000008006",
        "topics": [
          "0x290afdae231a3fc0bbae8b1af63698b0a1d79b21ad17df0342dfb952fe74f8e5",
          "0x000000000000000000000000f1108379d71ff2a785899f4c36010f841f1fea04",
          "0x010001e1b1cb6196c0fa5e94fe311f7b2d1179679c41ce8bd96bf3cbd4a75405",
          "0x000000000000000000000000761ad7fdf60b63297b8e9ed7f625bb4e734c7663"
        ],
        "data": "0x",
        "logIndex": 27,
        "blockHash": "0xa72598116b1c3921ae22f6121de4bb11d08617b11e7647412b40f4ed9680c421"
      },
      {
        "transactionIndex": 3,
        "blockNumber": 5925361,
        "transactionHash": "0xe8e797314c2699406307ca4569fd368374cfcce17cde0d1435ea38f57c5c5a7f",
        "address": "0x000000000000000000000000000000000000800A",
        "topics": [
          "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
          "0x0000000000000000000000000000000000000000000000000000000000008001",
          "0x000000000000000000000000f1108379d71ff2a785899f4c36010f841f1fea04"
        ],
        "data": "0x00000000000000000000000000000000000000000000000000092a4c9836b880",
        "logIndex": 28,
        "blockHash": "0xa72598116b1c3921ae22f6121de4bb11d08617b11e7647412b40f4ed9680c421"
      }
    ],
    "blockNumber": 5925361,
    "cumulativeGasUsed": "0",
    "status": 1,
    "byzantium": true
  },
  "args": ["0xF27e0dfD58B423b1e1B90a554001d0561917602F"],
  "numDeployments": 1,
  "solcInputHash": "a55a0720c0d0238808136c5effb03d4d",
  "metadata": {
    "optimizer_settings": "M3B3",
    "solc_metadata": "{\"compiler\":{\"version\":\"0.8.14+commit.80d49f37\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_ops\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"deployer\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"proxy\",\"type\":\"address\"}],\"name\":\"DeployProxy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldImplementation\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"SetImplementation\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bool\",\"name\":\"whitelisted\",\"type\":\"bool\"}],\"name\":\"UpdateWhitelistedImplementation\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"deploy\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"proxy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"deployFor\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"proxy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"determineProxyAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"getProxyOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"implementation\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_implementation\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ops\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_proxy\",\"type\":\"address\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newImplementation\",\"type\":\"address\"}],\"name\":\"setImplementation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_implementation\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_whitelist\",\"type\":\"bool\"}],\"name\":\"updateWhitelistedImplementations\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"whitelistedImplementations\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"deploy()\":{\"returns\":{\"proxy\":\"Address of deployed proxy.\"}},\"deployFor(address)\":{\"params\":{\"owner\":\"Address to deploy the proxy for.\"},\"returns\":{\"proxy\":\"Address of deployed proxy.\"}},\"determineProxyAddress(address)\":{\"params\":{\"account\":\"Address to determine the proxy address for.\"}},\"getProxyOf(address)\":{\"returns\":{\"_0\":\"address Proxy address owned by account.\",\"_1\":\"bool Whether if proxy is deployed\"}},\"ownerOf(address)\":{\"returns\":{\"_0\":\"address Owner of deployed proxy.\"}}},\"stateVariables\":{\"_ownerOf\":{\"details\":\"track owner of proxy\"},\"_proxyOf\":{\"details\":\"track proxy of user\"},\"whitelistedImplementations\":{\"return\":\"bool Whether if implementation is whitelisted.\",\"returns\":{\"_0\":\"bool Whether if implementation is whitelisted.\"}}},\"version\":1},\"userdoc\":{\"events\":{\"DeployProxy(address,address,address)\":{\"notice\":\"Emitted when an OpsProxy is deployed.\"},\"SetImplementation(address,address)\":{\"notice\":\"Emitted when OpsProxy implementation to be deployed is changed.\"},\"UpdateWhitelistedImplementation(address,bool)\":{\"notice\":\"Emitted when OpsProxy implementation is added or removed from whitelist.\"}},\"kind\":\"user\",\"methods\":{\"deploy()\":{\"notice\":\"Deploys OpsProxy for the msg.sender.\"},\"deployFor(address)\":{\"notice\":\"Deploys OpsProxy for another address.\"},\"determineProxyAddress(address)\":{\"notice\":\"Determines the OpsProxy address when it is not deployed.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/opsProxy/OpsProxyFactory.sol\":\"OpsProxyFactory\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[],\"viaIR\":true},\"sources\":{\"@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x68861bcc80cacbd498efde75aab6c74a486cc48262660d326c8d7530d9752097\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5beb2713aca05976562500789329e8c41320d00bd68ea9247856ec73894c3e3f\",\"dweb:/ipfs/QmQKwkpofsZYAzMZs7uNL7Qq58zVBuhoZCGpD6bJdUwyqy\"]},\"@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x3f0f878c796dfc7feba6d3c4e3e526c14c7deae8b7bfc71088e3f38fab0d77b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://69bf7d357ce97852f4fb71045919b1bb2c0ad0c820e3f06b9dd4451b2dc5a343\",\"dweb:/ipfs/QmWt96ZviufDu2qqS7Ln6UCJjfLyoFKbo6YKn54ao3o94z\"]},\"contracts/interfaces/IOpsProxyFactory.sol\":{\"keccak256\":\"0xf4852a06be6f35a0671cf951f455fb9a58320c0908914c3ab9e62f9d27affe2b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8cffeacd964bd883f8f7dd92ccb02c87b282e22c802aa1f69246c0f29c40a06b\",\"dweb:/ipfs/QmcFGkDVMv22PvxjEK7MQ8ZtxFfgBxBHe5CuQHPqAigUUu\"]},\"contracts/opsProxy/OpsProxyFactory.sol\":{\"keccak256\":\"0xf6c033ab42deffa5ef5c5161fe53fd8b07add3f2bb1d958d5bd93f95934dd4a0\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://413b5dc63f5cff5b9d1a9bf98c678aeaf7502c204aabc2d0e76a0f5cff70b4f4\",\"dweb:/ipfs/QmTM3WKh8tMss7kTiWBjEmv7Lz2iytcaaWUPQfTkaefuki\"]},\"contracts/vendor/proxy/EIP173/EIP173OpsProxy.sol\":{\"keccak256\":\"0x1e31c6fcde4bc9000918f09bd3002cd347c8b65e2a1a9b69f63b9b9cf61643fe\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://52414f1fd60b09c8ed6323ada42fce400660b1f227a7d2ebd0132a662217f895\",\"dweb:/ipfs/QmbZM6g9Nvpr5GpqoQTsxsQQ3RMHF3hDQ7npJVRwKXk1TC\"]},\"contracts/vendor/proxy/EIP173/Proxied.sol\":{\"keccak256\":\"0x428ced1961d42c505a3e49d90498f92f4b0df8537e5ffa59f14ba375d99150a1\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://bdaf6158f4b6b54670691ff09e74698559684245fcae6c68657a52ef4b1cc88b\",\"dweb:/ipfs/QmcWDmV1JCBNgrzsJkE5GnfVSyKKaoVE6AbQFeDaXjV9Nh\"]},\"contracts/vendor/proxy/EIP173/Proxy.sol\":{\"keccak256\":\"0xb5e3e1c4cab8a5e3bd968f51c201a11e651f62b47aa78a4e3e0b7508be268d35\",\"license\":\"GPL-3.0\",\"urls\":[\"bzz-raw://7ae4f4936cc5632e31da04307746a3eafbb6179008958c8f6c578942fccbc969\",\"dweb:/ipfs/QmZZL2yrZBHVjPEtG6c3Su7XCA5jPkGkw38hbfB6Eegunz\"]}},\"version\":1}",
    "zk_version": "1.3.7"
  },
  "bytecode": "[encoded data, 30786 characters]",
  "deployedBytecode": "[encoded data, 30786 characters]",
  "devdoc": {
    "kind": "dev",
    "methods": {
      "deploy()": {
        "returns": {
          "proxy": "Address of deployed proxy."
        }
      },
      "deployFor(address)": {
        "params": {
          "owner": "Address to deploy the proxy for."
        },
        "returns": {
          "proxy": "Address of deployed proxy."
        }
      },
      "determineProxyAddress(address)": {
        "params": {
          "account": "Address to determine the proxy address for."
        }
      },
      "getProxyOf(address)": {
        "returns": {
          "_0": "address Proxy address owned by account.",
          "_1": "bool Whether if proxy is deployed"
        }
      },
      "ownerOf(address)": {
        "returns": {
          "_0": "address Owner of deployed proxy."
        }
      }
    },
    "stateVariables": {
      "_ownerOf": {
        "details": "track owner of proxy"
      },
      "_proxyOf": {
        "details": "track proxy of user"
      },
      "whitelistedImplementations": {
        "return": "bool Whether if implementation is whitelisted.",
        "returns": {
          "_0": "bool Whether if implementation is whitelisted."
        }
      }
    },
    "version": 1
  },
  "userdoc": {
    "events": {
      "DeployProxy(address,address,address)": {
        "notice": "Emitted when an OpsProxy is deployed."
      },
      "SetImplementation(address,address)": {
        "notice": "Emitted when OpsProxy implementation to be deployed is changed."
      },
      "UpdateWhitelistedImplementation(address,bool)": {
        "notice": "Emitted when OpsProxy implementation is added or removed from whitelist."
      }
    },
    "kind": "user",
    "methods": {
      "deploy()": {
        "notice": "Deploys OpsProxy for the msg.sender."
      },
      "deployFor(address)": {
        "notice": "Deploys OpsProxy for another address."
      },
      "determineProxyAddress(address)": {
        "notice": "Determines the OpsProxy address when it is not deployed."
      }
    },
    "version": 1
  },
  "storageLayout": {
    "storage": [
      {
        "astId": 6,
        "contract": "contracts/opsProxy/OpsProxyFactory.sol:OpsProxyFactory",
        "label": "_initialized",
        "offset": 0,
        "slot": "0",
        "type": "t_bool"
      },
      {
        "astId": 9,
        "contract": "contracts/opsProxy/OpsProxyFactory.sol:OpsProxyFactory",
        "label": "_initializing",
        "offset": 1,
        "slot": "0",
        "type": "t_bool"
      },
      {
        "astId": 7214,
        "contract": "contracts/opsProxy/OpsProxyFactory.sol:OpsProxyFactory",
        "label": "implementation",
        "offset": 2,
        "slot": "0",
        "type": "t_address"
      },
      {
        "astId": 7219,
        "contract": "contracts/opsProxy/OpsProxyFactory.sol:OpsProxyFactory",
        "label": "whitelistedImplementations",
        "offset": 0,
        "slot": "1",
        "type": "t_mapping(t_address,t_bool)"
      },
      {
        "astId": 7224,
        "contract": "contracts/opsProxy/OpsProxyFactory.sol:OpsProxyFactory",
        "label": "_proxyOf",
        "offset": 0,
        "slot": "2",
        "type": "t_mapping(t_address,t_address)"
      },
      {
        "astId": 7229,
        "contract": "contracts/opsProxy/OpsProxyFactory.sol:OpsProxyFactory",
        "label": "_ownerOf",
        "offset": 0,
        "slot": "3",
        "type": "t_mapping(t_address,t_address)"
      }
    ],
    "types": {
      "t_address": {
        "encoding": "inplace",
        "label": "address",
        "numberOfBytes": "20"
      },
      "t_bool": {
        "encoding": "inplace",
        "label": "bool",
        "numberOfBytes": "1"
      },
      "t_mapping(t_address,t_address)": {
        "encoding": "mapping",
        "key": "t_address",
        "label": "mapping(address => address)",
        "numberOfBytes": "32",
        "value": "t_address"
      },
      "t_mapping(t_address,t_bool)": {
        "encoding": "mapping",
        "key": "t_address",
        "label": "mapping(address => bool)",
        "numberOfBytes": "32",
        "value": "t_bool"
      }
    }
  }
}
