{
  "manifestVersion": "3.2",
  "proxies": [
    {
      "address": "0xd025b38762B4A4E36F0Cde483b86CB13ea00D989",
      "txHash": "0x051dc38fd5fc186f76b9cc7021746c915cca0cb32f74e56ec4df624cf0d06259",
      "kind": "uups"
    }
  ],
  "impls": {
    "298b9f36a9e024def1c6e6baa12524fe201ac1dd8b39bb4d529d2eb956d896e7": {
      "address": "0xf353b40fC144d1c6c5BCdda712fa6De833016aF9",
      "txHash": "0x8bed031882b22ee09d15dd8aaf257eefbb9b4000a8e603b1acc84063c7fe00af",
      "layout": {
        "solcVersion": "0.8.24",
        "storage": [
          {
            "label": "ethToNearToken",
            "offset": 0,
            "slot": "0",
            "type": "t_mapping(t_address,t_string_storage)",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:24"
          },
          {
            "label": "nearToEthToken",
            "offset": 0,
            "slot": "1",
            "type": "t_mapping(t_string_memory_ptr,t_address)",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:25"
          },
          {
            "label": "isBridgeToken",
            "offset": 0,
            "slot": "2",
            "type": "t_mapping(t_address,t_bool)",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:26"
          },
          {
            "label": "tokenImplementationAddress",
            "offset": 0,
            "slot": "3",
            "type": "t_address",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:28"
          },
          {
            "label": "nearBridgeDerivedAddress",
            "offset": 0,
            "slot": "4",
            "type": "t_address",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:29"
          },
          {
            "label": "omniBridgeChainId",
            "offset": 20,
            "slot": "4",
            "type": "t_uint8",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:30"
          },
          {
            "label": "completedTransfers",
            "offset": 0,
            "slot": "5",
            "type": "t_mapping(t_uint64,t_bool)",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:32"
          },
          {
            "label": "currentOriginNonce",
            "offset": 0,
            "slot": "6",
            "type": "t_uint64",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:33"
          },
          {
            "label": "customMinters",
            "offset": 0,
            "slot": "7",
            "type": "t_mapping(t_address,t_address)",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:35"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "8",
            "type": "t_array(t_uint256)50_storage",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:326"
          },
          {
            "label": "_wormhole",
            "offset": 0,
            "slot": "58",
            "type": "t_contract(IWormhole)5912",
            "contract": "OmniBridgeWormhole",
            "src": "src/omni-bridge/contracts/OmniBridgeWormhole.sol:26"
          },
          {
            "label": "_consistencyLevel",
            "offset": 20,
            "slot": "58",
            "type": "t_uint8",
            "contract": "OmniBridgeWormhole",
            "src": "src/omni-bridge/contracts/OmniBridgeWormhole.sol:28"
          },
          {
            "label": "wormholeNonce",
            "offset": 21,
            "slot": "58",
            "type": "t_uint32",
            "contract": "OmniBridgeWormhole",
            "src": "src/omni-bridge/contracts/OmniBridgeWormhole.sol:29"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)24_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(AccessControlStorage)34_storage": {
            "label": "struct AccessControlUpgradeable.AccessControlStorage",
            "members": [
              {
                "label": "_roles",
                "type": "t_mapping(t_bytes32,t_struct(RoleData)24_storage)",
                "offset": 0,
                "slot": "0"
              }
            ],
            "numberOfBytes": "32"
          },
          "t_struct(InitializableStorage)266_storage": {
            "label": "struct Initializable.InitializableStorage",
            "members": [
              {
                "label": "_initialized",
                "type": "t_uint64",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "_initializing",
                "type": "t_bool",
                "offset": 8,
                "slot": "0"
              }
            ],
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)24_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "hasRole",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint64": {
            "label": "uint64",
            "numberOfBytes": "8"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_contract(IWormhole)5912": {
            "label": "contract IWormhole",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_address)": {
            "label": "mapping(address => address)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_string_storage)": {
            "label": "mapping(address => string)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_string_memory_ptr,t_address)": {
            "label": "mapping(string => address)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_uint64,t_bool)": {
            "label": "mapping(uint64 => bool)",
            "numberOfBytes": "32"
          },
          "t_string_memory_ptr": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint32": {
            "label": "uint32",
            "numberOfBytes": "4"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        },
        "namespaces": {
          "erc7201:openzeppelin.storage.AccessControl": [
            {
              "contract": "AccessControlUpgradeable",
              "label": "_roles",
              "type": "t_mapping(t_bytes32,t_struct(RoleData)24_storage)",
              "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61",
              "offset": 0,
              "slot": "0"
            }
          ],
          "erc7201:openzeppelin.storage.Initializable": [
            {
              "contract": "Initializable",
              "label": "_initialized",
              "type": "t_uint64",
              "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:69",
              "offset": 0,
              "slot": "0"
            },
            {
              "contract": "Initializable",
              "label": "_initializing",
              "type": "t_bool",
              "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:73",
              "offset": 8,
              "slot": "0"
            }
          ]
        }
      }
    },
    "dceb9abdd23926ddaaafb079c9784a3a659e0f99f18efcd0a5b078f4305302ce": {
      "address": "0xEC81aFc3485a425347Ac03316675e58a680b283A",
      "txHash": "0x86fdb8388cfb93962ef728558688e370ec90c529b42f831a1d31195883a88247",
      "layout": {
        "solcVersion": "0.8.24",
        "storage": [
          {
            "label": "ethToNearToken",
            "offset": 0,
            "slot": "0",
            "type": "t_mapping(t_address,t_string_storage)",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:24"
          },
          {
            "label": "nearToEthToken",
            "offset": 0,
            "slot": "1",
            "type": "t_mapping(t_string_memory_ptr,t_address)",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:25"
          },
          {
            "label": "isBridgeToken",
            "offset": 0,
            "slot": "2",
            "type": "t_mapping(t_address,t_bool)",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:26"
          },
          {
            "label": "tokenImplementationAddress",
            "offset": 0,
            "slot": "3",
            "type": "t_address",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:28"
          },
          {
            "label": "nearBridgeDerivedAddress",
            "offset": 0,
            "slot": "4",
            "type": "t_address",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:29"
          },
          {
            "label": "omniBridgeChainId",
            "offset": 20,
            "slot": "4",
            "type": "t_uint8",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:30"
          },
          {
            "label": "completedTransfers",
            "offset": 0,
            "slot": "5",
            "type": "t_mapping(t_uint64,t_bool)",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:32"
          },
          {
            "label": "currentOriginNonce",
            "offset": 0,
            "slot": "6",
            "type": "t_uint64",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:33"
          },
          {
            "label": "customMinters",
            "offset": 0,
            "slot": "7",
            "type": "t_mapping(t_address,t_address)",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:35"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "8",
            "type": "t_array(t_uint256)50_storage",
            "contract": "OmniBridge",
            "src": "src/omni-bridge/contracts/OmniBridge.sol:332"
          },
          {
            "label": "_wormhole",
            "offset": 0,
            "slot": "58",
            "type": "t_contract(IWormhole)5925",
            "contract": "OmniBridgeWormhole",
            "src": "src/omni-bridge/contracts/OmniBridgeWormhole.sol:26"
          },
          {
            "label": "_consistencyLevel",
            "offset": 20,
            "slot": "58",
            "type": "t_uint8",
            "contract": "OmniBridgeWormhole",
            "src": "src/omni-bridge/contracts/OmniBridgeWormhole.sol:28"
          },
          {
            "label": "wormholeNonce",
            "offset": 21,
            "slot": "58",
            "type": "t_uint32",
            "contract": "OmniBridgeWormhole",
            "src": "src/omni-bridge/contracts/OmniBridgeWormhole.sol:29"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)24_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(AccessControlStorage)34_storage": {
            "label": "struct AccessControlUpgradeable.AccessControlStorage",
            "members": [
              {
                "label": "_roles",
                "type": "t_mapping(t_bytes32,t_struct(RoleData)24_storage)",
                "offset": 0,
                "slot": "0"
              }
            ],
            "numberOfBytes": "32"
          },
          "t_struct(InitializableStorage)266_storage": {
            "label": "struct Initializable.InitializableStorage",
            "members": [
              {
                "label": "_initialized",
                "type": "t_uint64",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "_initializing",
                "type": "t_bool",
                "offset": 8,
                "slot": "0"
              }
            ],
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)24_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "hasRole",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint64": {
            "label": "uint64",
            "numberOfBytes": "8"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_contract(IWormhole)5925": {
            "label": "contract IWormhole",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_address)": {
            "label": "mapping(address => address)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_string_storage)": {
            "label": "mapping(address => string)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_string_memory_ptr,t_address)": {
            "label": "mapping(string => address)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_uint64,t_bool)": {
            "label": "mapping(uint64 => bool)",
            "numberOfBytes": "32"
          },
          "t_string_memory_ptr": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint32": {
            "label": "uint32",
            "numberOfBytes": "4"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        },
        "namespaces": {
          "erc7201:openzeppelin.storage.AccessControl": [
            {
              "contract": "AccessControlUpgradeable",
              "label": "_roles",
              "type": "t_mapping(t_bytes32,t_struct(RoleData)24_storage)",
              "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61",
              "offset": 0,
              "slot": "0"
            }
          ],
          "erc7201:openzeppelin.storage.Initializable": [
            {
              "contract": "Initializable",
              "label": "_initialized",
              "type": "t_uint64",
              "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:69",
              "offset": 0,
              "slot": "0"
            },
            {
              "contract": "Initializable",
              "label": "_initializing",
              "type": "t_bool",
              "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:73",
              "offset": 8,
              "slot": "0"
            }
          ]
        }
      }
    }
  }
}
