{
  "manifestVersion": "3.2",
  "proxies": [
    {
      "address": "0xe80772Eaf6e2E18B651F160Bc9158b2A5caFCA65",
      "txHash": "0xdffedfd85ad41acea7f5bbc15857a64e4be54cbfabaf9d830060804a53021596",
      "kind": "uups"
    },
    {
      "address": "0x73cb180bf0521828d8849bc8CF2B920918e23032",
      "txHash": "0xa1b6a6e12308f8ac831c474b7214179a3b0b5ee249caa9dddf1c7215520fdbf9",
      "kind": "uups"
    },
    {
      "address": "0x9Af655c4DBe940962F776b685d6700F538B90fcf",
      "txHash": "0x75443bd10bcdbff55fd46e9c4f00ec979ffb83176dc9452b05e85efda27cc108",
      "kind": "uups"
    },
    {
      "address": "0x11732E21D9DaB3B6fF6e7DD9EdcB24770260c7B4",
      "txHash": "0xf21507c1a8db012953a9a4e3965169d97750a07227091add40f2bb343a8e7769",
      "kind": "uups"
    },
    {
      "address": "0x1b3B7b72e0BbFF68C1311459218aef5DE5716C53",
      "txHash": "0x2bfb0485d64282faef29c19592c1314b970f93cab47405311fd8cd46bca481ac",
      "kind": "uups"
    },
    {
      "address": "0x94135b2CD3ea682F8BA7aA3D574F5309548381bb",
      "txHash": "0x18307f3ad4abc33b32777f0aab7f3a4646fdc31dc417230970204166700b4bff",
      "kind": "uups"
    },
    {
      "address": "0x7C7938B6a1eF49470aa53Da53bE9A0baa8CE0b10",
      "txHash": "0x190366ca28bd903f366396a71d8d4075f290539bce37b2f9b274c5046c1dffd0",
      "kind": "uups"
    },
    {
      "address": "0x8416d215b71a5C91b04E326140bbbDcDa82C01da",
      "txHash": "0xb15d11204f303179b13b2615d6d2c164d6fe2eaec62f803a9d64625b4b5a4d61",
      "kind": "uups"
    },
    {
      "address": "0xCeD6F77e0E7e39b98e7b1747fd90286812644e90",
      "txHash": "0xf4fa7e8377b68671e3a8fc18b579c2e51ddf1f7a2fb0e13f02d4a1ff507339fe",
      "kind": "uups"
    },
    {
      "address": "0x970D50d09F3a656b43E11B0D45241a84e3a6e011",
      "txHash": "0x319d34733d1c359a5a82b227b21bb60094dceb8a068cbd317e6fb57ff294ac25",
      "kind": "uups"
    },
    {
      "address": "0xe1E36e93D31702019D38d2B0F6aB926f15008409",
      "txHash": "0x494afb96a2036cf5c29419f71c8d21806d48018f4f17282d529afd6ecbd40089",
      "kind": "uups"
    },
    {
      "address": "0x542BdE36670D066d9386bD7b174Cc81199B2e6A7",
      "txHash": "0xa00f0a8b253b32eb9bc0eefe9f749e709efc7b71277f735657781aa9f0cb627e",
      "kind": "uups"
    },
    {
      "address": "0xf59C9A5110852a82434E02d1A43169b5fD9897Be",
      "txHash": "0x2abba377f3c16fa5cb41d487108812c66db0fba8a0f13c312f3a6e406a4e86b9",
      "kind": "uups"
    },
    {
      "address": "0xdBaB307F2f19A678F90Ad309C8b34DaD3da8d334",
      "txHash": "0xf22d12dd6b44f33e4ea7a5c47fe4877283ac028aeb6c7624ff18f25931fa913a",
      "kind": "uups"
    },
    {
      "address": "0x42a6079C56258137a48D0EeA0c015ACB5e74D55E",
      "txHash": "0x16b811004c9999f8034772b762a314901197fcf864b11c4666bcd1d296ed8e19",
      "kind": "uups"
    },
    {
      "address": "0xB8F254F316FFa6d53969F8D4b01CAC25Ac8A2d08",
      "txHash": "0x0023424a2990d80acd524204286aa01497373cb1efaf25768c5f6ef2e402d6d7",
      "kind": "uups"
    },
    {
      "address": "0x5E3C33e152Be20835B9c33071C411B616688c754",
      "txHash": "0x6235b2c31d0c5e0c6d248d3d5d7eca3de2e700adee508381fdd6ec53cc2db34d",
      "kind": "uups"
    },
    {
      "address": "0x63a4CA86118b8C1375565563D53D1826DFcf8801",
      "txHash": "0x4f8d970a92dcc498eba0432232456ae23abb4fbc1ff9763f889f9d0c97de069a",
      "kind": "uups"
    },
    {
      "address": "0x3f2FeD6FB49Ddc76e4C5CE5738C86704567C4D87",
      "txHash": "0x675e90e9605a3bc9bb9909436e47d80f470581b55da8f209a3ecc3cec16ba5c5",
      "kind": "uups"
    },
    {
      "address": "0x9451f7E4c55b3Ba4B0f0150209D8e3F35a64385F",
      "txHash": "0xc7a2db48caf4e009527db6202b1f1868ab447bd147dbf0ef5456c718fab66b74",
      "kind": "uups"
    },
    {
      "address": "0x091fB73882eb57ca9549f8EAcb59DA2a095718AF",
      "txHash": "0x28bd140ec5237164be120f46c8ba06bc4fdaca4af751385f0a965e375457e0bf",
      "kind": "uups"
    }
  ],
  "impls": {
    "4a80e1d0e28062c816a98a176a09ed6aa3fe1a2d1460213a2144e3fb340a59d7": {
      "address": "0x159f28F598b5C5340D6A902D34eB373D30499660",
      "txHash": "0x5f388c4521d0ef08e3554df38ee20a5d386dfaaac08c628bcdab68fbc25c04eb",
      "layout": {
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_paused",
            "offset": 0,
            "slot": "251",
            "type": "t_bool",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)49_storage",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116"
          },
          {
            "label": "usdPlus",
            "offset": 0,
            "slot": "301",
            "type": "t_contract(UsdPlusToken)9317",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:25"
          },
          {
            "label": "usdc",
            "offset": 0,
            "slot": "302",
            "type": "t_contract(IERC20)3596",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:26"
          },
          {
            "label": "portfolioManager",
            "offset": 0,
            "slot": "303",
            "type": "t_contract(IPortfolioManager)9416",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:28"
          },
          {
            "label": "mark2market",
            "offset": 0,
            "slot": "304",
            "type": "t_contract(IMark2Market)9344",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:29"
          },
          {
            "label": "buyFee",
            "offset": 0,
            "slot": "305",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:31"
          },
          {
            "label": "buyFeeDenominator",
            "offset": 0,
            "slot": "306",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:32"
          },
          {
            "label": "redeemFee",
            "offset": 0,
            "slot": "307",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:34"
          },
          {
            "label": "redeemFeeDenominator",
            "offset": 0,
            "slot": "308",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:35"
          },
          {
            "label": "nextPayoutTime",
            "offset": 0,
            "slot": "309",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:38"
          },
          {
            "label": "payoutPeriod",
            "offset": 0,
            "slot": "310",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:41"
          },
          {
            "label": "payoutTimeRange",
            "offset": 0,
            "slot": "311",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:48"
          },
          {
            "label": "payoutListener",
            "offset": 0,
            "slot": "312",
            "type": "t_contract(IPayoutListener)9350",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:50"
          },
          {
            "label": "lastBlockNumber",
            "offset": 0,
            "slot": "313",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:53"
          },
          {
            "label": "abroadMin",
            "offset": 0,
            "slot": "314",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:55"
          },
          {
            "label": "abroadMax",
            "offset": 0,
            "slot": "315",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:56"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)3596": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IMark2Market)9344": {
            "label": "contract IMark2Market",
            "numberOfBytes": "20"
          },
          "t_contract(IPayoutListener)9350": {
            "label": "contract IPayoutListener",
            "numberOfBytes": "20"
          },
          "t_contract(IPortfolioManager)9416": {
            "label": "contract IPortfolioManager",
            "numberOfBytes": "20"
          },
          "t_contract(UsdPlusToken)9317": {
            "label": "contract UsdPlusToken",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "f3049c92f2bb8b7b345646c25e01bb25d94229840806280255b13947830b35f0": {
      "address": "0xB79DD08EA68A908A97220C76d19A6aA9cBDE4376",
      "txHash": "0x933e327ff06c938b85d4bc0b688201cb4e7331a92d6025e7158c7990424643bc",
      "layout": {
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_balances",
            "offset": 0,
            "slot": "251",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:18"
          },
          {
            "label": "_allowances",
            "offset": 0,
            "slot": "252",
            "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:20"
          },
          {
            "label": "_totalSupply",
            "offset": 0,
            "slot": "253",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:22"
          },
          {
            "label": "_name",
            "offset": 0,
            "slot": "254",
            "type": "t_string_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:24"
          },
          {
            "label": "_symbol",
            "offset": 0,
            "slot": "255",
            "type": "t_string_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:25"
          },
          {
            "label": "_totalMint",
            "offset": 0,
            "slot": "256",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:32"
          },
          {
            "label": "_totalBurn",
            "offset": 0,
            "slot": "257",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:33"
          },
          {
            "label": "liquidityIndexChangeTime",
            "offset": 0,
            "slot": "258",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:35"
          },
          {
            "label": "liquidityIndex",
            "offset": 0,
            "slot": "259",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:36"
          },
          {
            "label": "liquidityIndexDenominator",
            "offset": 0,
            "slot": "260",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:37"
          },
          {
            "label": "_owners",
            "offset": 0,
            "slot": "261",
            "type": "t_struct(AddressSet)4493_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:39"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "263",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:41"
          },
          {
            "label": "exchange",
            "offset": 0,
            "slot": "313",
            "type": "t_address",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:43"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_bytes32)dyn_storage": {
            "label": "bytes32[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "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_address,t_mapping(t_address,t_uint256))": {
            "label": "mapping(address => mapping(address => uint256))",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_uint256)": {
            "label": "mapping(bytes32 => uint256)",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_struct(AddressSet)4493_storage": {
            "label": "struct EnumerableSet.AddressSet",
            "members": [
              {
                "label": "_inner",
                "type": "t_struct(Set)4192_storage",
                "offset": 0,
                "slot": "0"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(Set)4192_storage": {
            "label": "struct EnumerableSet.Set",
            "members": [
              {
                "label": "_values",
                "type": "t_array(t_bytes32)dyn_storage",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "_indexes",
                "type": "t_mapping(t_bytes32,t_uint256)",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "da13c3e78e35392a0f9dc3ad6c2fbec669be67b71897ae760033f9dfd38e5b26": {
      "address": "0x7cb1B38591021309C64f451859d79312d8Ca2789",
      "txHash": "0xe6b01d5a6ef97d76253dad419b18dd81d8860c5522ba5bef109bc7fadda0d58a",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "portfolioManager",
            "offset": 0,
            "slot": "251",
            "type": "t_contract(IPortfolioManager)10468",
            "contract": "Mark2Market",
            "src": "contracts/Mark2Market.sol:19"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IPortfolioManager)10468": {
            "label": "contract IPortfolioManager",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "46b6783b65fab8584f9882dd62d6779e3330156c87bb87e1f793057b20d14d9e": {
      "address": "0x1F4947Cd5A5c058DD5EA6Fd1CCd5c311aDa9E6Fb",
      "txHash": "0xf307ccbd8da10109f91a71f188ac4e4cf1c4b9d40f8919ddae4d527760aff5c2",
      "layout": {
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "exchanger",
            "offset": 0,
            "slot": "251",
            "type": "t_address",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:22"
          },
          {
            "label": "asset",
            "offset": 0,
            "slot": "252",
            "type": "t_contract(IERC20)3596",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:23"
          },
          {
            "label": "strategyWeightPositions",
            "offset": 0,
            "slot": "253",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:24"
          },
          {
            "label": "strategyWeights",
            "offset": 0,
            "slot": "254",
            "type": "t_array(t_struct(StrategyWeight)9286_storage)dyn_storage",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:25"
          },
          {
            "label": "cashStrategy",
            "offset": 0,
            "slot": "255",
            "type": "t_contract(IStrategy)9404",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:26"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_struct(StrategyWeight)9286_storage)dyn_storage": {
            "label": "struct IPortfolioManager.StrategyWeight[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)3596": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IStrategy)9404": {
            "label": "contract IStrategy",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(StrategyWeight)9286_storage": {
            "label": "struct IPortfolioManager.StrategyWeight",
            "members": [
              {
                "label": "strategy",
                "type": "t_address",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "minWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "targetWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "maxWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "enabled",
                "type": "t_bool",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "enabledReward",
                "type": "t_bool",
                "offset": 1,
                "slot": "4"
              }
            ],
            "numberOfBytes": "160"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "e75dc0fccc14ca690250c4e848ff324873161bb8551ec5b870bbd1bc4d72e369": {
      "address": "0x9fa11255f91B3D5f25B2c6e4bDFEFf23dCAb8B8d",
      "txHash": "0x9d8996a4696990ed19ebaa53e12512ecdd3bb9a1b7510d0b6c21d6247bc95d0b",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_paused",
            "offset": 0,
            "slot": "251",
            "type": "t_bool",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)49_storage",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116"
          },
          {
            "label": "usdPlus",
            "offset": 0,
            "slot": "301",
            "type": "t_contract(UsdPlusToken)11809",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:25"
          },
          {
            "label": "usdc",
            "offset": 0,
            "slot": "302",
            "type": "t_contract(IERC20)3596",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:26"
          },
          {
            "label": "portfolioManager",
            "offset": 0,
            "slot": "303",
            "type": "t_contract(IPortfolioManager)11905",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:28"
          },
          {
            "label": "mark2market",
            "offset": 0,
            "slot": "304",
            "type": "t_contract(IMark2Market)11836",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:29"
          },
          {
            "label": "buyFee",
            "offset": 0,
            "slot": "305",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:31"
          },
          {
            "label": "buyFeeDenominator",
            "offset": 0,
            "slot": "306",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:32"
          },
          {
            "label": "redeemFee",
            "offset": 0,
            "slot": "307",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:34"
          },
          {
            "label": "redeemFeeDenominator",
            "offset": 0,
            "slot": "308",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:35"
          },
          {
            "label": "nextPayoutTime",
            "offset": 0,
            "slot": "309",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:38"
          },
          {
            "label": "payoutPeriod",
            "offset": 0,
            "slot": "310",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:41"
          },
          {
            "label": "payoutTimeRange",
            "offset": 0,
            "slot": "311",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:48"
          },
          {
            "label": "payoutListener",
            "offset": 0,
            "slot": "312",
            "type": "t_contract(IPayoutListener)11842",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:50"
          },
          {
            "label": "lastBlockNumber",
            "offset": 0,
            "slot": "313",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:53"
          },
          {
            "label": "abroadMin",
            "offset": 0,
            "slot": "314",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:55"
          },
          {
            "label": "abroadMax",
            "offset": 0,
            "slot": "315",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:56"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)3596": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IMark2Market)11836": {
            "label": "contract IMark2Market",
            "numberOfBytes": "20"
          },
          "t_contract(IPayoutListener)11842": {
            "label": "contract IPayoutListener",
            "numberOfBytes": "20"
          },
          "t_contract(IPortfolioManager)11905": {
            "label": "contract IPortfolioManager",
            "numberOfBytes": "20"
          },
          "t_contract(UsdPlusToken)11809": {
            "label": "contract UsdPlusToken",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "b2410f4f4b96c6a12c423acb03d8907c2b14de0301b31f59c503e39151f23735": {
      "address": "0xbdE93971cd89688661CF4ccd69262206C0F81eb0",
      "txHash": "0x18d3a22f7c48a431444381418779c9b3b8ba76e8defa24f8ffab7126be1ca898",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "exchange",
            "offset": 0,
            "slot": "251",
            "type": "t_address",
            "contract": "PayoutListener",
            "src": "contracts/PayoutListener.sol:16"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)50_storage",
            "contract": "PayoutListener",
            "src": "contracts/PayoutListener.sol:60"
          },
          {
            "label": "velodromePools",
            "offset": 0,
            "slot": "302",
            "type": "t_array(t_address)dyn_storage",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:11"
          },
          {
            "label": "velodromeBribes",
            "offset": 0,
            "slot": "303",
            "type": "t_array(t_address)dyn_storage",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:12"
          },
          {
            "label": "usdPlus",
            "offset": 0,
            "slot": "304",
            "type": "t_contract(IERC20)3596",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:13"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_address)dyn_storage": {
            "label": "address[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)3596": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "c329ca1c40c929854a0810f4548b6cd699b4984294328c3f328918da3e6704a9": {
      "address": "0xEA39C4961Db40f2272Bd2f3a2f9898AADb419d11",
      "txHash": "0xf07fbc455f433b4ffe076bc35d2236109cecf6679e80d6f07e243b8fe396ce0c",
      "layout": {
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "exchanger",
            "offset": 0,
            "slot": "251",
            "type": "t_address",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:25"
          },
          {
            "label": "asset",
            "offset": 0,
            "slot": "252",
            "type": "t_contract(IERC20)3596",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:26"
          },
          {
            "label": "strategyWeightPositions",
            "offset": 0,
            "slot": "253",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:27"
          },
          {
            "label": "strategyWeights",
            "offset": 0,
            "slot": "254",
            "type": "t_array(t_struct(StrategyWeight)9615_storage)dyn_storage",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:28"
          },
          {
            "label": "cashStrategy",
            "offset": 0,
            "slot": "255",
            "type": "t_contract(IStrategy)9730",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:29"
          },
          {
            "label": "m2m",
            "offset": 0,
            "slot": "256",
            "type": "t_contract(IMark2Market)9586",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:30"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_struct(StrategyWeight)9615_storage)dyn_storage": {
            "label": "struct IPortfolioManager.StrategyWeight[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)3596": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IMark2Market)9586": {
            "label": "contract IMark2Market",
            "numberOfBytes": "20"
          },
          "t_contract(IStrategy)9730": {
            "label": "contract IStrategy",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(StrategyWeight)9615_storage": {
            "label": "struct IPortfolioManager.StrategyWeight",
            "members": [
              {
                "label": "strategy",
                "type": "t_address",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "minWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "targetWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "maxWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "enabled",
                "type": "t_bool",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "enabledReward",
                "type": "t_bool",
                "offset": 1,
                "slot": "4"
              }
            ],
            "numberOfBytes": "160"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "075fd97ffca828b5ae067c43e1a7c02e113219d20780e8a558e108f98882f1d5": {
      "address": "0x039D778af09e9B71A39f1Ba09609B529131090bC",
      "txHash": "0x142779b6d609c0b62b6c05c68180b900da1cf813c06591f1a4f8c62ac0211f6b",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "exchanger",
            "offset": 0,
            "slot": "251",
            "type": "t_address",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:25"
          },
          {
            "label": "asset",
            "offset": 0,
            "slot": "252",
            "type": "t_contract(IERC20)3596",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:26"
          },
          {
            "label": "strategyWeightPositions",
            "offset": 0,
            "slot": "253",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:27"
          },
          {
            "label": "strategyWeights",
            "offset": 0,
            "slot": "254",
            "type": "t_array(t_struct(StrategyWeight)10428_storage)dyn_storage",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:28"
          },
          {
            "label": "cashStrategy",
            "offset": 0,
            "slot": "255",
            "type": "t_contract(IStrategy)10543",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:29"
          },
          {
            "label": "m2m",
            "offset": 0,
            "slot": "256",
            "type": "t_contract(IMark2Market)10399",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:30"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_struct(StrategyWeight)10428_storage)dyn_storage": {
            "label": "struct IPortfolioManager.StrategyWeight[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)3596": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IMark2Market)10399": {
            "label": "contract IMark2Market",
            "numberOfBytes": "20"
          },
          "t_contract(IStrategy)10543": {
            "label": "contract IStrategy",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(StrategyWeight)10428_storage": {
            "label": "struct IPortfolioManager.StrategyWeight",
            "members": [
              {
                "label": "strategy",
                "type": "t_address",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "minWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "targetWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "maxWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "enabled",
                "type": "t_bool",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "enabledReward",
                "type": "t_bool",
                "offset": 1,
                "slot": "4"
              }
            ],
            "numberOfBytes": "160"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "3c1d67f90ff55d5168d7a25544d10fdd2280819b5137a3405c3613fcbb30c4b4": {
      "address": "0xe07D376e0F132cD1a72E5125b6dacE7f2A0BA106",
      "txHash": "0x54329056524ad53423ef4153b0623890f97fd37223c116c8b33c4c337028ac32",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_balances",
            "offset": 0,
            "slot": "251",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:18"
          },
          {
            "label": "_allowances",
            "offset": 0,
            "slot": "252",
            "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:20"
          },
          {
            "label": "_totalSupply",
            "offset": 0,
            "slot": "253",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:22"
          },
          {
            "label": "_name",
            "offset": 0,
            "slot": "254",
            "type": "t_string_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:24"
          },
          {
            "label": "_symbol",
            "offset": 0,
            "slot": "255",
            "type": "t_string_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:25"
          },
          {
            "label": "_totalMint",
            "offset": 0,
            "slot": "256",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:32"
          },
          {
            "label": "_totalBurn",
            "offset": 0,
            "slot": "257",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:33"
          },
          {
            "label": "liquidityIndexChangeTime",
            "offset": 0,
            "slot": "258",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:35"
          },
          {
            "label": "liquidityIndex",
            "offset": 0,
            "slot": "259",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:36"
          },
          {
            "label": "liquidityIndexDenominator",
            "offset": 0,
            "slot": "260",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:37"
          },
          {
            "label": "_owners",
            "offset": 0,
            "slot": "261",
            "type": "t_struct(AddressSet)4493_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:39"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "263",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:41"
          },
          {
            "label": "exchange",
            "offset": 0,
            "slot": "313",
            "type": "t_address",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:43"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_bytes32)dyn_storage": {
            "label": "bytes32[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "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_address,t_mapping(t_address,t_uint256))": {
            "label": "mapping(address => mapping(address => uint256))",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_uint256)": {
            "label": "mapping(bytes32 => uint256)",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_struct(AddressSet)4493_storage": {
            "label": "struct EnumerableSet.AddressSet",
            "members": [
              {
                "label": "_inner",
                "type": "t_struct(Set)4192_storage",
                "offset": 0,
                "slot": "0"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(Set)4192_storage": {
            "label": "struct EnumerableSet.Set",
            "members": [
              {
                "label": "_values",
                "type": "t_array(t_bytes32)dyn_storage",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "_indexes",
                "type": "t_mapping(t_bytes32,t_uint256)",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "a1d60d12fb1d4179af0694a48533cba483ac7f53da32f581f1ae6bd86ceb1709": {
      "address": "0x6B4313a412d2CdeF9317Aaadc0fd518f60889443",
      "txHash": "0xb6ba3622786046fac320e955dabe25ba25fbaffe9a893e77cc26b0540caf8607",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_paused",
            "offset": 0,
            "slot": "251",
            "type": "t_bool",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)49_storage",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116"
          },
          {
            "label": "usdPlus",
            "offset": 0,
            "slot": "301",
            "type": "t_contract(UsdPlusToken)11921",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:25"
          },
          {
            "label": "usdc",
            "offset": 0,
            "slot": "302",
            "type": "t_contract(IERC20)3596",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:26"
          },
          {
            "label": "portfolioManager",
            "offset": 0,
            "slot": "303",
            "type": "t_contract(IPortfolioManager)12017",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:28"
          },
          {
            "label": "mark2market",
            "offset": 0,
            "slot": "304",
            "type": "t_contract(IMark2Market)11948",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:29"
          },
          {
            "label": "buyFee",
            "offset": 0,
            "slot": "305",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:31"
          },
          {
            "label": "buyFeeDenominator",
            "offset": 0,
            "slot": "306",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:32"
          },
          {
            "label": "redeemFee",
            "offset": 0,
            "slot": "307",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:34"
          },
          {
            "label": "redeemFeeDenominator",
            "offset": 0,
            "slot": "308",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:35"
          },
          {
            "label": "nextPayoutTime",
            "offset": 0,
            "slot": "309",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:38"
          },
          {
            "label": "payoutPeriod",
            "offset": 0,
            "slot": "310",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:41"
          },
          {
            "label": "payoutTimeRange",
            "offset": 0,
            "slot": "311",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:48"
          },
          {
            "label": "payoutListener",
            "offset": 0,
            "slot": "312",
            "type": "t_contract(IPayoutListener)11954",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:50"
          },
          {
            "label": "lastBlockNumber",
            "offset": 0,
            "slot": "313",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:53"
          },
          {
            "label": "abroadMin",
            "offset": 0,
            "slot": "314",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:55"
          },
          {
            "label": "abroadMax",
            "offset": 0,
            "slot": "315",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:56"
          },
          {
            "label": "insurance",
            "offset": 0,
            "slot": "316",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:58"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)3596": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IMark2Market)11948": {
            "label": "contract IMark2Market",
            "numberOfBytes": "20"
          },
          "t_contract(IPayoutListener)11954": {
            "label": "contract IPayoutListener",
            "numberOfBytes": "20"
          },
          "t_contract(IPortfolioManager)12017": {
            "label": "contract IPortfolioManager",
            "numberOfBytes": "20"
          },
          "t_contract(UsdPlusToken)11921": {
            "label": "contract UsdPlusToken",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "fae46db0c423be9dfd3b1a557a3dfa9a22e55e10ce7e29185975cbe07bf58985": {
      "address": "0x2b8B1F84eCd146F709B8B869CbB03fE190f6FA1a",
      "txHash": "0x5a830c1027070e8932f2239c2ca5b877e1d5ccb5bd3a4d455e8dc816d5dd649e",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_paused",
            "offset": 0,
            "slot": "251",
            "type": "t_bool",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)49_storage",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116"
          },
          {
            "label": "usdPlus",
            "offset": 0,
            "slot": "301",
            "type": "t_contract(UsdPlusToken)5345",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:25"
          },
          {
            "label": "usdc",
            "offset": 0,
            "slot": "302",
            "type": "t_contract(IERC20)2023",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:26"
          },
          {
            "label": "portfolioManager",
            "offset": 0,
            "slot": "303",
            "type": "t_contract(IPortfolioManager)5441",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:28"
          },
          {
            "label": "mark2market",
            "offset": 0,
            "slot": "304",
            "type": "t_contract(IMark2Market)5372",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:29"
          },
          {
            "label": "buyFee",
            "offset": 0,
            "slot": "305",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:31"
          },
          {
            "label": "buyFeeDenominator",
            "offset": 0,
            "slot": "306",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:32"
          },
          {
            "label": "redeemFee",
            "offset": 0,
            "slot": "307",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:34"
          },
          {
            "label": "redeemFeeDenominator",
            "offset": 0,
            "slot": "308",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:35"
          },
          {
            "label": "nextPayoutTime",
            "offset": 0,
            "slot": "309",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:38"
          },
          {
            "label": "payoutPeriod",
            "offset": 0,
            "slot": "310",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:41"
          },
          {
            "label": "payoutTimeRange",
            "offset": 0,
            "slot": "311",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:48"
          },
          {
            "label": "payoutListener",
            "offset": 0,
            "slot": "312",
            "type": "t_contract(IPayoutListener)5378",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:50"
          },
          {
            "label": "lastBlockNumber",
            "offset": 0,
            "slot": "313",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:53"
          },
          {
            "label": "abroadMin",
            "offset": 0,
            "slot": "314",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:55"
          },
          {
            "label": "abroadMax",
            "offset": 0,
            "slot": "315",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:56"
          },
          {
            "label": "insurance",
            "offset": 0,
            "slot": "316",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:58"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)2023": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IMark2Market)5372": {
            "label": "contract IMark2Market",
            "numberOfBytes": "20"
          },
          "t_contract(IPayoutListener)5378": {
            "label": "contract IPayoutListener",
            "numberOfBytes": "20"
          },
          "t_contract(IPortfolioManager)5441": {
            "label": "contract IPortfolioManager",
            "numberOfBytes": "20"
          },
          "t_contract(UsdPlusToken)5345": {
            "label": "contract UsdPlusToken",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "e7c1036573d566677d7f203b181aa735874c2fa85007092abcf4cdf616169349": {
      "address": "0x02803F6fCB3eDA19C854b2Defb39cbC3817ED986",
      "txHash": "0x00a4769a4bf1afd7d46a698a0c33e92986bbf1c14ac22c116c27050b998af44a",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_balances",
            "offset": 0,
            "slot": "251",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:18"
          },
          {
            "label": "_allowances",
            "offset": 0,
            "slot": "252",
            "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:20"
          },
          {
            "label": "_totalSupply",
            "offset": 0,
            "slot": "253",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:22"
          },
          {
            "label": "_name",
            "offset": 0,
            "slot": "254",
            "type": "t_string_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:24"
          },
          {
            "label": "_symbol",
            "offset": 0,
            "slot": "255",
            "type": "t_string_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:25"
          },
          {
            "label": "_totalMint",
            "offset": 0,
            "slot": "256",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:32"
          },
          {
            "label": "_totalBurn",
            "offset": 0,
            "slot": "257",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:33"
          },
          {
            "label": "liquidityIndexChangeTime",
            "offset": 0,
            "slot": "258",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:35"
          },
          {
            "label": "liquidityIndex",
            "offset": 0,
            "slot": "259",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:36"
          },
          {
            "label": "liquidityIndexDenominator",
            "offset": 0,
            "slot": "260",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:37"
          },
          {
            "label": "_owners",
            "offset": 0,
            "slot": "261",
            "type": "t_struct(AddressSet)4493_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:39"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "263",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:41"
          },
          {
            "label": "exchange",
            "offset": 0,
            "slot": "313",
            "type": "t_address",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:43"
          },
          {
            "label": "_decimals",
            "offset": 20,
            "slot": "313",
            "type": "t_uint8",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:44"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_bytes32)dyn_storage": {
            "label": "bytes32[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "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_address,t_mapping(t_address,t_uint256))": {
            "label": "mapping(address => mapping(address => uint256))",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_uint256)": {
            "label": "mapping(bytes32 => uint256)",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_struct(AddressSet)4493_storage": {
            "label": "struct EnumerableSet.AddressSet",
            "members": [
              {
                "label": "_inner",
                "type": "t_struct(Set)4192_storage",
                "offset": 0,
                "slot": "0"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(Set)4192_storage": {
            "label": "struct EnumerableSet.Set",
            "members": [
              {
                "label": "_values",
                "type": "t_array(t_bytes32)dyn_storage",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "_indexes",
                "type": "t_mapping(t_bytes32,t_uint256)",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "c0786c48469cefaa3916191781e5e904d64b2208032666e755121f17367c63e9": {
      "address": "0x54403D59E8856D0Fb4763eD92Aa843F0cac6AA88",
      "txHash": "0xab47ba445967659773f22c2fa378a8341c794cd0de377b29539d1e87f1a86e4a",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "exchange",
            "offset": 0,
            "slot": "251",
            "type": "t_address",
            "contract": "PayoutListener",
            "src": "contracts/PayoutListener.sol:16"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)50_storage",
            "contract": "PayoutListener",
            "src": "contracts/PayoutListener.sol:60"
          },
          {
            "label": "velodromePools",
            "offset": 0,
            "slot": "302",
            "type": "t_array(t_address)dyn_storage",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:11"
          },
          {
            "label": "velodromeBribes",
            "offset": 0,
            "slot": "303",
            "type": "t_array(t_address)dyn_storage",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:12"
          },
          {
            "label": "usdPlus",
            "offset": 0,
            "slot": "304",
            "type": "t_contract(IERC20)3596",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:13"
          },
          {
            "label": "collector",
            "offset": 0,
            "slot": "305",
            "type": "t_address",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:14"
          },
          {
            "label": "velodromePoolsCollector",
            "offset": 0,
            "slot": "306",
            "type": "t_array(t_address)dyn_storage",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:15"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_address)dyn_storage": {
            "label": "address[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)3596": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "76c00f88b7eef9922143d6ee99abfcb8f7ae84523dcb09d723e6dd4599a90a2a": {
      "address": "0x3765EF51C4291E15A07B398a0b45D3C54329eACD",
      "txHash": "0x9d53b48373a59d3bb3d6bd45008ae142a4d91d4266128001e33dd9e51468528b",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\utils\\ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\utils\\introspection\\ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\access\\AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\access\\AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\ERC1967\\ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\UUPSUpgradeable.sol:107"
          },
          {
            "label": "exchange",
            "offset": 0,
            "slot": "251",
            "type": "t_address",
            "contract": "PayoutListener",
            "src": "contracts\\PayoutListener.sol:16"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)50_storage",
            "contract": "PayoutListener",
            "src": "contracts\\PayoutListener.sol:60"
          },
          {
            "label": "velodromePools",
            "offset": 0,
            "slot": "302",
            "type": "t_array(t_address)dyn_storage",
            "contract": "OptimismPayoutListener",
            "src": "contracts\\payoutlisteners\\OptimismPayoutListener.sol:10"
          },
          {
            "label": "velodromeBribes",
            "offset": 0,
            "slot": "303",
            "type": "t_array(t_address)dyn_storage",
            "contract": "OptimismPayoutListener",
            "src": "contracts\\payoutlisteners\\OptimismPayoutListener.sol:11"
          },
          {
            "label": "usdPlus",
            "offset": 0,
            "slot": "304",
            "type": "t_contract(IERC20)2662",
            "contract": "OptimismPayoutListener",
            "src": "contracts\\payoutlisteners\\OptimismPayoutListener.sol:12"
          },
          {
            "label": "collector",
            "offset": 0,
            "slot": "305",
            "type": "t_address",
            "contract": "OptimismPayoutListener",
            "src": "contracts\\payoutlisteners\\OptimismPayoutListener.sol:13"
          },
          {
            "label": "velodromePoolsCollector",
            "offset": 0,
            "slot": "306",
            "type": "t_array(t_address)dyn_storage",
            "contract": "OptimismPayoutListener",
            "src": "contracts\\payoutlisteners\\OptimismPayoutListener.sol:14"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_address)dyn_storage": {
            "label": "address[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)2662": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "190e0c1fb12f7199da16d11e20d597cff9b982d49569417b4537bb3201c95393": {
      "address": "0xDFDb274765B569C243C627C9d8b0a514844EC64d",
      "txHash": "0xd90ad67e4f8af1fb46aa2058d338c74b7bcfc68ad717c1f078dfd5a9a2abbcfb",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "exchanger",
            "offset": 0,
            "slot": "251",
            "type": "t_address",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:25"
          },
          {
            "label": "asset",
            "offset": 0,
            "slot": "252",
            "type": "t_contract(IERC20)2662",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:26"
          },
          {
            "label": "strategyWeightPositions",
            "offset": 0,
            "slot": "253",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:27"
          },
          {
            "label": "strategyWeights",
            "offset": 0,
            "slot": "254",
            "type": "t_array(t_struct(StrategyWeight)5392_storage)dyn_storage",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:28"
          },
          {
            "label": "cashStrategy",
            "offset": 0,
            "slot": "255",
            "type": "t_contract(IStrategy)5499",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:29"
          },
          {
            "label": "m2m",
            "offset": 0,
            "slot": "256",
            "type": "t_contract(IMark2Market)5369",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:30"
          },
          {
            "label": "swapSlippageBP",
            "offset": 0,
            "slot": "257",
            "type": "t_uint256",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:31"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_struct(StrategyWeight)5392_storage)dyn_storage": {
            "label": "struct IPortfolioManager.StrategyWeight[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)2662": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IMark2Market)5369": {
            "label": "contract IMark2Market",
            "numberOfBytes": "20"
          },
          "t_contract(IStrategy)5499": {
            "label": "contract IStrategy",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(StrategyWeight)5392_storage": {
            "label": "struct IPortfolioManager.StrategyWeight",
            "members": [
              {
                "label": "strategy",
                "type": "t_address",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "minWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "targetWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "maxWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "enabled",
                "type": "t_bool",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "enabledReward",
                "type": "t_bool",
                "offset": 1,
                "slot": "4"
              }
            ],
            "numberOfBytes": "160"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "867d4f530ecd6c9ed5ec226940f1a0e6ae330d0289624550f3299ecac900b230": {
      "address": "0x06468f03c7eEd2507936D1e90D9A3359D91d9cd8",
      "txHash": "0xbbff0c416e460ea464c1e64ba1121ef2f0710121441f4e04acec1c5b518c4c55",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "exchange",
            "offset": 0,
            "slot": "251",
            "type": "t_address",
            "contract": "PayoutListener",
            "src": "contracts/PayoutListener.sol:15"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)50_storage",
            "contract": "PayoutListener",
            "src": "contracts/PayoutListener.sol:58"
          },
          {
            "label": "velodromePools",
            "offset": 0,
            "slot": "302",
            "type": "t_array(t_address)dyn_storage",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:10"
          },
          {
            "label": "velodromeBribes",
            "offset": 0,
            "slot": "303",
            "type": "t_array(t_address)dyn_storage",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:11"
          },
          {
            "label": "usdPlus",
            "offset": 0,
            "slot": "304",
            "type": "t_contract(IERC20)2662",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:12"
          },
          {
            "label": "collector",
            "offset": 0,
            "slot": "305",
            "type": "t_address",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:13"
          },
          {
            "label": "velodromePoolsCollector",
            "offset": 0,
            "slot": "306",
            "type": "t_array(t_address)dyn_storage",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:14"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_address)dyn_storage": {
            "label": "address[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)2662": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "d09588a84fb8d567fa2cf3e1e93ae01287df03d9312392933cd89a4ca01be08a": {
      "address": "0xC356E0C69bAD729C9cc157EE3D833dfcace481DC",
      "txHash": "0xbad8b8b283a69621f0fe67eaf6e3a56053017f0d5c99a2382faf43f012fb82ed",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "exchange",
            "offset": 0,
            "slot": "251",
            "type": "t_address",
            "contract": "PayoutListener",
            "src": "contracts/PayoutListener.sol:15"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)50_storage",
            "contract": "PayoutListener",
            "src": "contracts/PayoutListener.sol:58"
          },
          {
            "label": "velodromePools",
            "offset": 0,
            "slot": "302",
            "type": "t_array(t_address)dyn_storage",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:10"
          },
          {
            "label": "velodromeBribes",
            "offset": 0,
            "slot": "303",
            "type": "t_array(t_address)dyn_storage",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:11"
          },
          {
            "label": "usdPlus",
            "offset": 0,
            "slot": "304",
            "type": "t_contract(IERC20)2662",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:12"
          },
          {
            "label": "collector",
            "offset": 0,
            "slot": "305",
            "type": "t_address",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:13"
          },
          {
            "label": "velodromePoolsCollector",
            "offset": 0,
            "slot": "306",
            "type": "t_array(t_address)dyn_storage",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:14"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_address)dyn_storage": {
            "label": "address[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)2662": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "52e48a94a0f8e450c3ab27a29f7867246cb724a47cce725c656235fa87775674": {
      "address": "0xAb1C9e022Eb0AA2C946500d8C50727e5AA897Fbf",
      "txHash": "0xe7c7075a5cce5b9b07555f6f176210b7bdc6520a2f0c55840013f5c611756a73",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_paused",
            "offset": 0,
            "slot": "251",
            "type": "t_bool",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)49_storage",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116"
          },
          {
            "label": "usdPlus",
            "offset": 0,
            "slot": "301",
            "type": "t_contract(UsdPlusToken)10853",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:32"
          },
          {
            "label": "usdc",
            "offset": 0,
            "slot": "302",
            "type": "t_contract(IERC20)2892",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:33"
          },
          {
            "label": "portfolioManager",
            "offset": 0,
            "slot": "303",
            "type": "t_contract(IPortfolioManager)10998",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:35"
          },
          {
            "label": "mark2market",
            "offset": 0,
            "slot": "304",
            "type": "t_contract(IMark2Market)10930",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:36"
          },
          {
            "label": "buyFee",
            "offset": 0,
            "slot": "305",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:38"
          },
          {
            "label": "buyFeeDenominator",
            "offset": 0,
            "slot": "306",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:39"
          },
          {
            "label": "redeemFee",
            "offset": 0,
            "slot": "307",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:41"
          },
          {
            "label": "redeemFeeDenominator",
            "offset": 0,
            "slot": "308",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:42"
          },
          {
            "label": "nextPayoutTime",
            "offset": 0,
            "slot": "309",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:45"
          },
          {
            "label": "payoutPeriod",
            "offset": 0,
            "slot": "310",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:48"
          },
          {
            "label": "payoutTimeRange",
            "offset": 0,
            "slot": "311",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:55"
          },
          {
            "label": "payoutListener",
            "offset": 0,
            "slot": "312",
            "type": "t_contract(IPayoutListener)10936",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:57"
          },
          {
            "label": "lastBlockNumber",
            "offset": 0,
            "slot": "313",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:60"
          },
          {
            "label": "abroadMin",
            "offset": 0,
            "slot": "314",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:62"
          },
          {
            "label": "abroadMax",
            "offset": 0,
            "slot": "315",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:63"
          },
          {
            "label": "insurance",
            "offset": 0,
            "slot": "316",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:65"
          },
          {
            "label": "oracleLoss",
            "offset": 0,
            "slot": "317",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:67"
          },
          {
            "label": "oracleLossDenominator",
            "offset": 0,
            "slot": "318",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:68"
          },
          {
            "label": "compensateLoss",
            "offset": 0,
            "slot": "319",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:70"
          },
          {
            "label": "compensateLossDenominator",
            "offset": 0,
            "slot": "320",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:71"
          },
          {
            "label": "profitRecipient",
            "offset": 0,
            "slot": "321",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:73"
          },
          {
            "label": "blockGetter",
            "offset": 0,
            "slot": "322",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:75"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)2892": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IMark2Market)10930": {
            "label": "contract IMark2Market",
            "numberOfBytes": "20"
          },
          "t_contract(IPayoutListener)10936": {
            "label": "contract IPayoutListener",
            "numberOfBytes": "20"
          },
          "t_contract(IPortfolioManager)10998": {
            "label": "contract IPortfolioManager",
            "numberOfBytes": "20"
          },
          "t_contract(UsdPlusToken)10853": {
            "label": "contract UsdPlusToken",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "86e3b56d5156286df95996ce34ab6c676f80804f732850c31e0d585376aaac4e": {
      "address": "0x8DeaE4e487AF7DF7E3f12fB39E4c81884C4598Bf",
      "txHash": "0x082ab795eaad712ead1f6a4f034f9693e2765a4f09b86e4bf9ad085fc497bf00",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "exchanger",
            "offset": 0,
            "slot": "251",
            "type": "t_address",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:26"
          },
          {
            "label": "asset",
            "offset": 0,
            "slot": "252",
            "type": "t_contract(IERC20)2662",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:27"
          },
          {
            "label": "strategyWeightPositions",
            "offset": 0,
            "slot": "253",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:28"
          },
          {
            "label": "strategyWeights",
            "offset": 0,
            "slot": "254",
            "type": "t_array(t_struct(StrategyWeight)5397_storage)dyn_storage",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:29"
          },
          {
            "label": "cashStrategy",
            "offset": 0,
            "slot": "255",
            "type": "t_contract(IStrategy)5501",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:30"
          },
          {
            "label": "m2m",
            "offset": 0,
            "slot": "256",
            "type": "t_contract(IMark2Market)5372",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:31"
          },
          {
            "label": "totalRiskFactor",
            "offset": 0,
            "slot": "257",
            "type": "t_uint256",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:32"
          },
          {
            "label": "navSlippageBp",
            "offset": 0,
            "slot": "258",
            "type": "t_uint256",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:33"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_struct(StrategyWeight)5397_storage)dyn_storage": {
            "label": "struct IPortfolioManager.StrategyWeight[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)2662": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IMark2Market)5372": {
            "label": "contract IMark2Market",
            "numberOfBytes": "20"
          },
          "t_contract(IStrategy)5501": {
            "label": "contract IStrategy",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(StrategyWeight)5397_storage": {
            "label": "struct IPortfolioManager.StrategyWeight",
            "members": [
              {
                "label": "strategy",
                "type": "t_address",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "minWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "targetWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "maxWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "riskFactor",
                "type": "t_uint256",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "enabled",
                "type": "t_bool",
                "offset": 0,
                "slot": "5"
              },
              {
                "label": "enabledReward",
                "type": "t_bool",
                "offset": 1,
                "slot": "5"
              }
            ],
            "numberOfBytes": "192"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "f69aabdbc47186ab8449d6464be68b7e6fa654dcafed988689d11073b952dbbb": {
      "address": "0xFCCE4611d810e93d823b351C53A01b9D27923a82",
      "txHash": "0xf471fccfbe1aabe3e01d94949723193cf6224dd65feb5d98c219d3243aae67c1",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "portfolioManager",
            "offset": 0,
            "slot": "251",
            "type": "t_contract(IPortfolioManager)5723",
            "contract": "Mark2Market",
            "src": "contracts/Mark2Market.sol:18"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IPortfolioManager)5723": {
            "label": "contract IPortfolioManager",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "5b981ad005749472a3ef88cdc8c3ab60cc9c70af023ae55abdfe06b91d847d20": {
      "address": "0x9C97EB920F88a927Ef3b0a89650104744910A641",
      "txHash": "0xc137b1684475934123f9e1fd9940d1f9c820541c5194b14412094da06e85d723",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "items",
            "offset": 0,
            "slot": "251",
            "type": "t_array(t_struct(Item)2698_storage)dyn_storage",
            "contract": "GlobalPayoutListener",
            "src": "contracts/GlobalPayoutListener.sol:33"
          },
          {
            "label": "disabled",
            "offset": 0,
            "slot": "252",
            "type": "t_bool",
            "contract": "GlobalPayoutListener",
            "src": "contracts/GlobalPayoutListener.sol:34"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "253",
            "type": "t_array(t_uint256)50_storage",
            "contract": "GlobalPayoutListener",
            "src": "contracts/GlobalPayoutListener.sol:226"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_struct(Item)2698_storage)dyn_storage": {
            "label": "struct GlobalPayoutListener.Item[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_enum(Operation)2703": {
            "label": "enum GlobalPayoutListener.Operation",
            "members": [
              "SKIM",
              "SYNC",
              "BRIBE",
              "CUSTOM"
            ],
            "numberOfBytes": "1"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_struct(Item)2698_storage": {
            "label": "struct GlobalPayoutListener.Item",
            "members": [
              {
                "label": "pool",
                "type": "t_address",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "token",
                "type": "t_address",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "poolName",
                "type": "t_string_storage",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "bribe",
                "type": "t_address",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "operation",
                "type": "t_enum(Operation)2703",
                "offset": 20,
                "slot": "3"
              },
              {
                "label": "to",
                "type": "t_address",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "dexName",
                "type": "t_string_storage",
                "offset": 0,
                "slot": "5"
              }
            ],
            "numberOfBytes": "192"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "8a727771e5950e4024b7f825d7f7084a1e8f282bd6c1dfdc4f944e36f2b62a3b": {
      "address": "0xfF66c6A4B3910b62bBCF4Cfde61562ef3E96a5eD",
      "txHash": "0xcb2008817fe8a452b8f6936c19d2a2537c067cb2c002ae3a7c80be603ffda491",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_paused",
            "offset": 0,
            "slot": "251",
            "type": "t_bool",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)49_storage",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116"
          },
          {
            "label": "usdPlus",
            "offset": 0,
            "slot": "301",
            "type": "t_contract(UsdPlusToken)6436",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:32"
          },
          {
            "label": "usdc",
            "offset": 0,
            "slot": "302",
            "type": "t_contract(IERC20)2892",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:33"
          },
          {
            "label": "portfolioManager",
            "offset": 0,
            "slot": "303",
            "type": "t_contract(IPortfolioManager)6583",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:35"
          },
          {
            "label": "mark2market",
            "offset": 0,
            "slot": "304",
            "type": "t_contract(IMark2Market)6521",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:36"
          },
          {
            "label": "buyFee",
            "offset": 0,
            "slot": "305",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:38"
          },
          {
            "label": "buyFeeDenominator",
            "offset": 0,
            "slot": "306",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:39"
          },
          {
            "label": "redeemFee",
            "offset": 0,
            "slot": "307",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:41"
          },
          {
            "label": "redeemFeeDenominator",
            "offset": 0,
            "slot": "308",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:42"
          },
          {
            "label": "nextPayoutTime",
            "offset": 0,
            "slot": "309",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:45"
          },
          {
            "label": "payoutPeriod",
            "offset": 0,
            "slot": "310",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:48"
          },
          {
            "label": "payoutTimeRange",
            "offset": 0,
            "slot": "311",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:55"
          },
          {
            "label": "payoutListener",
            "offset": 0,
            "slot": "312",
            "type": "t_contract(IGlobalPayoutListener)6452",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:57"
          },
          {
            "label": "lastBlockNumber",
            "offset": 0,
            "slot": "313",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:60"
          },
          {
            "label": "abroadMin",
            "offset": 0,
            "slot": "314",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:62"
          },
          {
            "label": "abroadMax",
            "offset": 0,
            "slot": "315",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:63"
          },
          {
            "label": "insurance",
            "offset": 0,
            "slot": "316",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:65"
          },
          {
            "label": "oracleLoss",
            "offset": 0,
            "slot": "317",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:67"
          },
          {
            "label": "oracleLossDenominator",
            "offset": 0,
            "slot": "318",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:68"
          },
          {
            "label": "compensateLoss",
            "offset": 0,
            "slot": "319",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:70"
          },
          {
            "label": "compensateLossDenominator",
            "offset": 0,
            "slot": "320",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:71"
          },
          {
            "label": "profitRecipient",
            "offset": 0,
            "slot": "321",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:73"
          },
          {
            "label": "blockGetter",
            "offset": 0,
            "slot": "322",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:75"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)2892": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IGlobalPayoutListener)6452": {
            "label": "contract IGlobalPayoutListener",
            "numberOfBytes": "20"
          },
          "t_contract(IMark2Market)6521": {
            "label": "contract IMark2Market",
            "numberOfBytes": "20"
          },
          "t_contract(IPortfolioManager)6583": {
            "label": "contract IPortfolioManager",
            "numberOfBytes": "20"
          },
          "t_contract(UsdPlusToken)6436": {
            "label": "contract UsdPlusToken",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "47aac31b685fd73264b1c2b28dd7ae9d48a686613ec98228aaf49be242819244": {
      "address": "0x33b15A1b4E7bBEcFA2e67318d661eCe53421D72a",
      "txHash": "0xc19f50db44dccbe2798c2a08a63014ba4c8ed07f2c11b764ad14f041b4b24980",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\utils\\ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\utils\\introspection\\ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\access\\AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\access\\AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\ERC1967\\ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\UUPSUpgradeable.sol:107"
          },
          {
            "label": "items",
            "offset": 0,
            "slot": "251",
            "type": "t_array(t_struct(Item)2706_storage)dyn_storage",
            "contract": "GlobalPayoutListener",
            "src": "contracts\\GlobalPayoutListener.sol:36"
          },
          {
            "label": "disabled",
            "offset": 0,
            "slot": "252",
            "type": "t_bool",
            "contract": "GlobalPayoutListener",
            "src": "contracts\\GlobalPayoutListener.sol:37"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "253",
            "type": "t_array(t_uint256)50_storage",
            "contract": "GlobalPayoutListener",
            "src": "contracts\\GlobalPayoutListener.sol:247"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_struct(Item)2706_storage)dyn_storage": {
            "label": "struct GlobalPayoutListener.Item[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)10_storage": {
            "label": "uint256[10]",
            "numberOfBytes": "320"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_enum(Operation)2711": {
            "label": "enum GlobalPayoutListener.Operation",
            "members": [
              "SKIM",
              "SYNC",
              "BRIBE",
              "CUSTOM"
            ],
            "numberOfBytes": "1"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_struct(Item)2706_storage": {
            "label": "struct GlobalPayoutListener.Item",
            "members": [
              {
                "label": "pool",
                "type": "t_address",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "token",
                "type": "t_address",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "poolName",
                "type": "t_string_storage",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "bribe",
                "type": "t_address",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "operation",
                "type": "t_enum(Operation)2711",
                "offset": 20,
                "slot": "3"
              },
              {
                "label": "to",
                "type": "t_address",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "dexName",
                "type": "t_string_storage",
                "offset": 0,
                "slot": "5"
              },
              {
                "label": "feePercent",
                "type": "t_uint24",
                "offset": 0,
                "slot": "6"
              },
              {
                "label": "feeReceiver",
                "type": "t_address",
                "offset": 3,
                "slot": "6"
              },
              {
                "label": "__gap",
                "type": "t_array(t_uint256)10_storage",
                "offset": 0,
                "slot": "7"
              }
            ],
            "numberOfBytes": "544"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint24": {
            "label": "uint24",
            "numberOfBytes": "3"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "d29830fe9a1028648a52774496335ef6ec4aaf647ce16d8f70614e61b2f96829": {
      "address": "0x9B201813d2d3857AD9Dc69CC600Fe7D1e4eDB6dd",
      "txHash": "0xf5543d6adb97b552e2ec75d9ebb263363f4862ac6af919809888448ccdd51b89",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\utils\\ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\utils\\introspection\\ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\access\\AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\access\\AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\ERC1967\\ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\UUPSUpgradeable.sol:107"
          },
          {
            "label": "items",
            "offset": 0,
            "slot": "251",
            "type": "t_array(t_struct(Item)2706_storage)dyn_storage",
            "contract": "GlobalPayoutListener",
            "src": "contracts\\GlobalPayoutListener.sol:35"
          },
          {
            "label": "disabled",
            "offset": 0,
            "slot": "252",
            "type": "t_bool",
            "contract": "GlobalPayoutListener",
            "src": "contracts\\GlobalPayoutListener.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "253",
            "type": "t_array(t_uint256)50_storage",
            "contract": "GlobalPayoutListener",
            "src": "contracts\\GlobalPayoutListener.sol:283"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_struct(Item)2706_storage)dyn_storage": {
            "label": "struct GlobalPayoutListener.Item[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)10_storage": {
            "label": "uint256[10]",
            "numberOfBytes": "320"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_enum(Operation)2711": {
            "label": "enum GlobalPayoutListener.Operation",
            "members": [
              "SKIM",
              "SYNC",
              "BRIBE",
              "CUSTOM"
            ],
            "numberOfBytes": "1"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_struct(Item)2706_storage": {
            "label": "struct GlobalPayoutListener.Item",
            "members": [
              {
                "label": "pool",
                "type": "t_address",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "token",
                "type": "t_address",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "poolName",
                "type": "t_string_storage",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "bribe",
                "type": "t_address",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "operation",
                "type": "t_enum(Operation)2711",
                "offset": 20,
                "slot": "3"
              },
              {
                "label": "to",
                "type": "t_address",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "dexName",
                "type": "t_string_storage",
                "offset": 0,
                "slot": "5"
              },
              {
                "label": "feePercent",
                "type": "t_uint24",
                "offset": 0,
                "slot": "6"
              },
              {
                "label": "feeReceiver",
                "type": "t_address",
                "offset": 3,
                "slot": "6"
              },
              {
                "label": "__gap",
                "type": "t_array(t_uint256)10_storage",
                "offset": 0,
                "slot": "7"
              }
            ],
            "numberOfBytes": "544"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint24": {
            "label": "uint24",
            "numberOfBytes": "3"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "613e33b295bdd8b1a8109277990717910d326850a7a98b16aac701faf7105dd5": {
      "address": "0x4CE19C33B477250FE9C50172F6125Cf480259372",
      "txHash": "0x30cc29f5d8fa1a7cb71f805fca9ca2342464ba9b2bcf9133170a4a3fc927e424",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "items",
            "offset": 0,
            "slot": "251",
            "type": "t_array(t_struct(Item)2706_storage)dyn_storage",
            "contract": "GlobalPayoutListener",
            "src": "contracts/GlobalPayoutListener.sol:35"
          },
          {
            "label": "disabled",
            "offset": 0,
            "slot": "252",
            "type": "t_bool",
            "contract": "GlobalPayoutListener",
            "src": "contracts/GlobalPayoutListener.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "253",
            "type": "t_array(t_uint256)50_storage",
            "contract": "GlobalPayoutListener",
            "src": "contracts/GlobalPayoutListener.sol:293"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_struct(Item)2706_storage)dyn_storage": {
            "label": "struct GlobalPayoutListener.Item[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)10_storage": {
            "label": "uint256[10]",
            "numberOfBytes": "320"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_enum(Operation)2711": {
            "label": "enum GlobalPayoutListener.Operation",
            "members": [
              "SKIM",
              "SYNC",
              "BRIBE",
              "CUSTOM"
            ],
            "numberOfBytes": "1"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_struct(Item)2706_storage": {
            "label": "struct GlobalPayoutListener.Item",
            "members": [
              {
                "label": "pool",
                "type": "t_address",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "token",
                "type": "t_address",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "poolName",
                "type": "t_string_storage",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "bribe",
                "type": "t_address",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "operation",
                "type": "t_enum(Operation)2711",
                "offset": 20,
                "slot": "3"
              },
              {
                "label": "to",
                "type": "t_address",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "dexName",
                "type": "t_string_storage",
                "offset": 0,
                "slot": "5"
              },
              {
                "label": "feePercent",
                "type": "t_uint24",
                "offset": 0,
                "slot": "6"
              },
              {
                "label": "feeReceiver",
                "type": "t_address",
                "offset": 3,
                "slot": "6"
              },
              {
                "label": "__gap",
                "type": "t_array(t_uint256)10_storage",
                "offset": 0,
                "slot": "7"
              }
            ],
            "numberOfBytes": "544"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint24": {
            "label": "uint24",
            "numberOfBytes": "3"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "b4397a4893ea51b0cfc64db880665f8b92034c7e2ffccaf4024c2930cae3faec": {
      "address": "0xCF02Cf91b5EC8230D6bD26C48a8B762ce6081C0F",
      "txHash": "0xd36ce2588004960038f37dc3a670ff6faa5208928a31f93ecf3986312c4f1e95",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\utils\\ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\utils\\introspection\\ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\access\\AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\access\\AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\ERC1967\\ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\UUPSUpgradeable.sol:107"
          },
          {
            "label": "_paused",
            "offset": 0,
            "slot": "251",
            "type": "t_bool",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\security\\PausableUpgradeable.sol:29"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)49_storage",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\security\\PausableUpgradeable.sol:116"
          },
          {
            "label": "usdPlus",
            "offset": 0,
            "slot": "301",
            "type": "t_contract(UsdPlusToken)10536",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:32"
          },
          {
            "label": "usdc",
            "offset": 0,
            "slot": "302",
            "type": "t_contract(IERC20)2892",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:33"
          },
          {
            "label": "portfolioManager",
            "offset": 0,
            "slot": "303",
            "type": "t_contract(IPortfolioManager)10688",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:35"
          },
          {
            "label": "mark2market",
            "offset": 0,
            "slot": "304",
            "type": "t_contract(IMark2Market)10626",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:36"
          },
          {
            "label": "buyFee",
            "offset": 0,
            "slot": "305",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:38"
          },
          {
            "label": "buyFeeDenominator",
            "offset": 0,
            "slot": "306",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:39"
          },
          {
            "label": "redeemFee",
            "offset": 0,
            "slot": "307",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:41"
          },
          {
            "label": "redeemFeeDenominator",
            "offset": 0,
            "slot": "308",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:42"
          },
          {
            "label": "nextPayoutTime",
            "offset": 0,
            "slot": "309",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:45"
          },
          {
            "label": "payoutPeriod",
            "offset": 0,
            "slot": "310",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:48"
          },
          {
            "label": "payoutTimeRange",
            "offset": 0,
            "slot": "311",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:55"
          },
          {
            "label": "payoutListener",
            "offset": 0,
            "slot": "312",
            "type": "t_contract(IGlobalPayoutListener)10557",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:57"
          },
          {
            "label": "lastBlockNumber",
            "offset": 0,
            "slot": "313",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:60"
          },
          {
            "label": "abroadMin",
            "offset": 0,
            "slot": "314",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:62"
          },
          {
            "label": "abroadMax",
            "offset": 0,
            "slot": "315",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:63"
          },
          {
            "label": "insurance",
            "offset": 0,
            "slot": "316",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:65"
          },
          {
            "label": "oracleLoss",
            "offset": 0,
            "slot": "317",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:67"
          },
          {
            "label": "oracleLossDenominator",
            "offset": 0,
            "slot": "318",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:68"
          },
          {
            "label": "compensateLoss",
            "offset": 0,
            "slot": "319",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:70"
          },
          {
            "label": "compensateLossDenominator",
            "offset": 0,
            "slot": "320",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:71"
          },
          {
            "label": "profitRecipient",
            "offset": 0,
            "slot": "321",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:73"
          },
          {
            "label": "blockGetter",
            "offset": 0,
            "slot": "322",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts\\Exchange.sol:75"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)2892": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IGlobalPayoutListener)10557": {
            "label": "contract IGlobalPayoutListener",
            "numberOfBytes": "20"
          },
          "t_contract(IMark2Market)10626": {
            "label": "contract IMark2Market",
            "numberOfBytes": "20"
          },
          "t_contract(IPortfolioManager)10688": {
            "label": "contract IPortfolioManager",
            "numberOfBytes": "20"
          },
          "t_contract(UsdPlusToken)10536": {
            "label": "contract UsdPlusToken",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "3034f06cdf42e8fcd2278d313d97ac05fda4e6b3761d6a293d419d84451b1a88": {
      "address": "0xC81bA5fbA11c0249BDF3637acaEBee4D0Ea6dCff",
      "txHash": "0x50502d4c1ec257c1ffa9380519721ffad568c16f14011320e3acf4b483170c2b",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "items",
            "offset": 0,
            "slot": "251",
            "type": "t_array(t_struct(Item)5753_storage)dyn_storage",
            "contract": "GlobalPayoutListener",
            "src": "contracts/GlobalPayoutListener.sol:35"
          },
          {
            "label": "disabled",
            "offset": 0,
            "slot": "252",
            "type": "t_bool",
            "contract": "GlobalPayoutListener",
            "src": "contracts/GlobalPayoutListener.sol:37"
          },
          {
            "label": "undoneDisabled",
            "offset": 1,
            "slot": "252",
            "type": "t_bool",
            "contract": "GlobalPayoutListener",
            "src": "contracts/GlobalPayoutListener.sol:38"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "253",
            "type": "t_array(t_uint256)49_storage",
            "contract": "GlobalPayoutListener",
            "src": "contracts/GlobalPayoutListener.sol:328"
          },
          {
            "label": "defiEdgeTicks",
            "offset": 0,
            "slot": "302",
            "type": "t_array(t_struct(NewTick)2715_storage)dyn_storage",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:10"
          },
          {
            "label": "tokenAmount",
            "offset": 0,
            "slot": "303",
            "type": "t_uint256",
            "contract": "OptimismPayoutListener",
            "src": "contracts/payoutlisteners/OptimismPayoutListener.sol:11"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_struct(Item)5753_storage)dyn_storage": {
            "label": "struct GlobalPayoutListener.Item[]",
            "numberOfBytes": "32"
          },
          "t_array(t_struct(NewTick)2715_storage)dyn_storage": {
            "label": "struct IDefiEdgeTwapStrategy.NewTick[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)10_storage": {
            "label": "uint256[10]",
            "numberOfBytes": "320"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_enum(Operation)5758": {
            "label": "enum GlobalPayoutListener.Operation",
            "members": [
              "SKIM",
              "SYNC",
              "BRIBE",
              "CUSTOM"
            ],
            "numberOfBytes": "1"
          },
          "t_int24": {
            "label": "int24",
            "numberOfBytes": "3"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_struct(Item)5753_storage": {
            "label": "struct GlobalPayoutListener.Item",
            "members": [
              {
                "label": "pool",
                "type": "t_address",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "token",
                "type": "t_address",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "poolName",
                "type": "t_string_storage",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "bribe",
                "type": "t_address",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "operation",
                "type": "t_enum(Operation)5758",
                "offset": 20,
                "slot": "3"
              },
              {
                "label": "to",
                "type": "t_address",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "dexName",
                "type": "t_string_storage",
                "offset": 0,
                "slot": "5"
              },
              {
                "label": "feePercent",
                "type": "t_uint24",
                "offset": 0,
                "slot": "6"
              },
              {
                "label": "feeReceiver",
                "type": "t_address",
                "offset": 3,
                "slot": "6"
              },
              {
                "label": "__gap",
                "type": "t_array(t_uint256)10_storage",
                "offset": 0,
                "slot": "7"
              }
            ],
            "numberOfBytes": "544"
          },
          "t_struct(NewTick)2715_storage": {
            "label": "struct IDefiEdgeTwapStrategy.NewTick",
            "members": [
              {
                "label": "tickLower",
                "type": "t_int24",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "tickUpper",
                "type": "t_int24",
                "offset": 3,
                "slot": "0"
              },
              {
                "label": "amount0",
                "type": "t_uint256",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "amount1",
                "type": "t_uint256",
                "offset": 0,
                "slot": "2"
              }
            ],
            "numberOfBytes": "96"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint24": {
            "label": "uint24",
            "numberOfBytes": "3"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "d6d04725d811ea8dd6d83a2cffdf1171eb6a044eaa593e105fd8bd9f87f08303": {
      "address": "0x188Ebde9B486B8E4f4Cd1A60af64d6efe5F80762",
      "txHash": "0x76a92f6cbcba2db75d9dee1b2655290e1c40b29e23d3357f51071df1753b50b7",
      "layout": {
        "solcVersion": "0.8.6",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\utils\\ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\utils\\introspection\\ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\access\\AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\access\\AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\ERC1967\\ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\UUPSUpgradeable.sol:107"
          },
          {
            "label": "items",
            "offset": 0,
            "slot": "251",
            "type": "t_array(t_struct(Item)5240_storage)dyn_storage",
            "contract": "GlobalPayoutListener",
            "src": "contracts\\GlobalPayoutListener.sol:35"
          },
          {
            "label": "disabled",
            "offset": 0,
            "slot": "252",
            "type": "t_bool",
            "contract": "GlobalPayoutListener",
            "src": "contracts\\GlobalPayoutListener.sol:37"
          },
          {
            "label": "undoneDisabled",
            "offset": 1,
            "slot": "252",
            "type": "t_bool",
            "contract": "GlobalPayoutListener",
            "src": "contracts\\GlobalPayoutListener.sol:38"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "253",
            "type": "t_array(t_uint256)49_storage",
            "contract": "GlobalPayoutListener",
            "src": "contracts\\GlobalPayoutListener.sol:328"
          },
          {
            "label": "defiEdgeTicks",
            "offset": 0,
            "slot": "302",
            "type": "t_array(t_struct(NewTick)2715_storage)dyn_storage",
            "contract": "OptimismPayoutListener",
            "src": "contracts\\payoutlisteners\\OptimismPayoutListener.sol:10"
          },
          {
            "label": "tokenAmount",
            "offset": 0,
            "slot": "303",
            "type": "t_uint256",
            "contract": "OptimismPayoutListener",
            "src": "contracts\\payoutlisteners\\OptimismPayoutListener.sol:11"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_struct(Item)5240_storage)dyn_storage": {
            "label": "struct GlobalPayoutListener.Item[]",
            "numberOfBytes": "32"
          },
          "t_array(t_struct(NewTick)2715_storage)dyn_storage": {
            "label": "struct IDefiEdgeTwapStrategy.NewTick[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)10_storage": {
            "label": "uint256[10]",
            "numberOfBytes": "320"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_enum(Operation)5245": {
            "label": "enum GlobalPayoutListener.Operation",
            "members": [
              "SKIM",
              "SYNC",
              "BRIBE",
              "CUSTOM"
            ],
            "numberOfBytes": "1"
          },
          "t_int24": {
            "label": "int24",
            "numberOfBytes": "3"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_struct(Item)5240_storage": {
            "label": "struct GlobalPayoutListener.Item",
            "members": [
              {
                "label": "pool",
                "type": "t_address",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "token",
                "type": "t_address",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "poolName",
                "type": "t_string_storage",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "bribe",
                "type": "t_address",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "operation",
                "type": "t_enum(Operation)5245",
                "offset": 20,
                "slot": "3"
              },
              {
                "label": "to",
                "type": "t_address",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "dexName",
                "type": "t_string_storage",
                "offset": 0,
                "slot": "5"
              },
              {
                "label": "feePercent",
                "type": "t_uint24",
                "offset": 0,
                "slot": "6"
              },
              {
                "label": "feeReceiver",
                "type": "t_address",
                "offset": 3,
                "slot": "6"
              },
              {
                "label": "__gap",
                "type": "t_array(t_uint256)10_storage",
                "offset": 0,
                "slot": "7"
              }
            ],
            "numberOfBytes": "544"
          },
          "t_struct(NewTick)2715_storage": {
            "label": "struct IDefiEdgeTwapStrategy.NewTick",
            "members": [
              {
                "label": "tickLower",
                "type": "t_int24",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "tickUpper",
                "type": "t_int24",
                "offset": 3,
                "slot": "0"
              },
              {
                "label": "amount0",
                "type": "t_uint256",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "amount1",
                "type": "t_uint256",
                "offset": 0,
                "slot": "2"
              }
            ],
            "numberOfBytes": "96"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint24": {
            "label": "uint24",
            "numberOfBytes": "3"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "399cfb1692f07e9cc92abbfb5aec2f59ca99e6b084bd68b35849d1927d9320ca": {
      "address": "0xceb412d48c83928c1bb6Ab1591ec06A58b754110",
      "txHash": "0x681763e5a2fcc52fb798877bd8402dcaab1ab88a176440b7003caecc35933cb8",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "inchRouter",
            "offset": 0,
            "slot": "251",
            "type": "t_contract(IInchRouter)4186",
            "contract": "InchSwapper",
            "src": "contracts/InchSwapper.sol:18"
          },
          {
            "label": "blockGetter",
            "offset": 0,
            "slot": "252",
            "type": "t_address",
            "contract": "InchSwapper",
            "src": "contracts/InchSwapper.sol:19"
          },
          {
            "label": "routePathsMap",
            "offset": 0,
            "slot": "253",
            "type": "t_mapping(t_address,t_mapping(t_address,t_struct(Route)10664_storage))",
            "contract": "InchSwapper",
            "src": "contracts/InchSwapper.sol:21"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_bytes_storage": {
            "label": "bytes",
            "numberOfBytes": "32"
          },
          "t_contract(IInchRouter)4186": {
            "label": "contract IInchRouter",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_mapping(t_address,t_struct(Route)10664_storage))": {
            "label": "mapping(address => mapping(address => struct IInchSwapper.Route))",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_struct(Route)10664_storage)": {
            "label": "mapping(address => struct IInchSwapper.Route)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(Route)10664_storage": {
            "label": "struct IInchSwapper.Route",
            "members": [
              {
                "label": "updateBlock",
                "type": "t_uint256",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "amount",
                "type": "t_uint256",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "flags",
                "type": "t_uint256",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "srcReceiver",
                "type": "t_address",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "data",
                "type": "t_bytes_storage",
                "offset": 0,
                "slot": "4"
              }
            ],
            "numberOfBytes": "160"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "9b1ec05f56c1341a8bacf54dc6873e43564eff289f12d9774e9fbfee72e1a224": {
      "address": "0xd670540FA436519511413E90fa52bDd5CC42B0A4",
      "txHash": "0x837b63fe9dadca9d7ac54965974528fbdb830ea18ac9d24f9df2c36abfee2448",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_paused",
            "offset": 0,
            "slot": "251",
            "type": "t_bool",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)49_storage",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116"
          },
          {
            "label": "asset",
            "offset": 0,
            "slot": "301",
            "type": "t_contract(IERC20)2789",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:28"
          },
          {
            "label": "rebase",
            "offset": 0,
            "slot": "302",
            "type": "t_contract(IRebaseToken)5094",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:29"
          },
          {
            "label": "odosRouter",
            "offset": 0,
            "slot": "303",
            "type": "t_address",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:30"
          },
          {
            "label": "mintFee",
            "offset": 0,
            "slot": "304",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:32"
          },
          {
            "label": "mintFeeDenominator",
            "offset": 0,
            "slot": "305",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:33"
          },
          {
            "label": "redeemFee",
            "offset": 0,
            "slot": "306",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:35"
          },
          {
            "label": "redeemFeeDenominator",
            "offset": 0,
            "slot": "307",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:36"
          },
          {
            "label": "lastBlockNumber",
            "offset": 0,
            "slot": "308",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:38"
          },
          {
            "label": "swapSlippage",
            "offset": 0,
            "slot": "309",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:39"
          },
          {
            "label": "nextPayoutTime",
            "offset": 0,
            "slot": "310",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:41"
          },
          {
            "label": "payoutPeriod",
            "offset": 0,
            "slot": "311",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:42"
          },
          {
            "label": "payoutTimeRange",
            "offset": 0,
            "slot": "312",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:43"
          },
          {
            "label": "withdrawRequests",
            "offset": 0,
            "slot": "313",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:45"
          },
          {
            "label": "requestWaitPeriod",
            "offset": 0,
            "slot": "314",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:46"
          },
          {
            "label": "withdrawPeriod",
            "offset": 0,
            "slot": "315",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:47"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)2789": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IRebaseToken)5094": {
            "label": "contract IRebaseToken",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "01de0c56c9371ca283d461b8638932975e64643caca6fb6bddc2a5ebaea80c17": {
      "address": "0x8b61903554CC5A2A11c8858844222349129C713B",
      "txHash": "0x596f0222fa0fbd20a90db016eaca4e842b198bdbbe6c3efb16dd911b8acca113",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_balances",
            "offset": 0,
            "slot": "251",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "RebaseToken",
            "src": "contracts/RebaseToken.sol:20"
          },
          {
            "label": "_allowances",
            "offset": 0,
            "slot": "252",
            "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))",
            "contract": "RebaseToken",
            "src": "contracts/RebaseToken.sol:21"
          },
          {
            "label": "_totalSupply",
            "offset": 0,
            "slot": "253",
            "type": "t_uint256",
            "contract": "RebaseToken",
            "src": "contracts/RebaseToken.sol:23"
          },
          {
            "label": "_name",
            "offset": 0,
            "slot": "254",
            "type": "t_string_storage",
            "contract": "RebaseToken",
            "src": "contracts/RebaseToken.sol:25"
          },
          {
            "label": "_symbol",
            "offset": 0,
            "slot": "255",
            "type": "t_string_storage",
            "contract": "RebaseToken",
            "src": "contracts/RebaseToken.sol:26"
          },
          {
            "label": "_totalMint",
            "offset": 0,
            "slot": "256",
            "type": "t_uint256",
            "contract": "RebaseToken",
            "src": "contracts/RebaseToken.sol:30"
          },
          {
            "label": "_totalBurn",
            "offset": 0,
            "slot": "257",
            "type": "t_uint256",
            "contract": "RebaseToken",
            "src": "contracts/RebaseToken.sol:31"
          },
          {
            "label": "liquidityIndexChangeTime",
            "offset": 0,
            "slot": "258",
            "type": "t_uint256",
            "contract": "RebaseToken",
            "src": "contracts/RebaseToken.sol:33"
          },
          {
            "label": "liquidityIndex",
            "offset": 0,
            "slot": "259",
            "type": "t_uint256",
            "contract": "RebaseToken",
            "src": "contracts/RebaseToken.sol:34"
          },
          {
            "label": "liquidityIndexDenominator",
            "offset": 0,
            "slot": "260",
            "type": "t_uint256",
            "contract": "RebaseToken",
            "src": "contracts/RebaseToken.sol:35"
          },
          {
            "label": "_owners",
            "offset": 0,
            "slot": "261",
            "type": "t_struct(AddressSet)3013_storage",
            "contract": "RebaseToken",
            "src": "contracts/RebaseToken.sol:37"
          },
          {
            "label": "exchange",
            "offset": 0,
            "slot": "263",
            "type": "t_address",
            "contract": "RebaseToken",
            "src": "contracts/RebaseToken.sol:39"
          },
          {
            "label": "_decimals",
            "offset": 20,
            "slot": "263",
            "type": "t_uint8",
            "contract": "RebaseToken",
            "src": "contracts/RebaseToken.sol:40"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_bytes32)dyn_storage": {
            "label": "bytes32[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "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_address,t_mapping(t_address,t_uint256))": {
            "label": "mapping(address => mapping(address => uint256))",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_uint256)": {
            "label": "mapping(bytes32 => uint256)",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_struct(AddressSet)3013_storage": {
            "label": "struct EnumerableSet.AddressSet",
            "members": [
              {
                "label": "_inner",
                "type": "t_struct(Set)2698_storage",
                "offset": 0,
                "slot": "0"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(Set)2698_storage": {
            "label": "struct EnumerableSet.Set",
            "members": [
              {
                "label": "_values",
                "type": "t_array(t_bytes32)dyn_storage",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "_indexes",
                "type": "t_mapping(t_bytes32,t_uint256)",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "4a5ee9d499beafb61fb2960a85ce8268d92e2b51fa19c5d4a333dad5ab56a801": {
      "address": "0xDB50c362044571AADead2e5F097f34287A894412",
      "txHash": "0xb325bf3092f279bf7ad5ee20c0b08b2e5642a5e1fe5f9d6a26b2ce0a911657b4",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_paused",
            "offset": 0,
            "slot": "251",
            "type": "t_bool",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)49_storage",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116"
          },
          {
            "label": "usdPlus",
            "offset": 0,
            "slot": "301",
            "type": "t_contract(UsdPlusToken)6577",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:32"
          },
          {
            "label": "usdc",
            "offset": 0,
            "slot": "302",
            "type": "t_contract(IERC20)2892",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:33"
          },
          {
            "label": "portfolioManager",
            "offset": 0,
            "slot": "303",
            "type": "t_contract(IPortfolioManager)6745",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:35"
          },
          {
            "label": "mark2market",
            "offset": 0,
            "slot": "304",
            "type": "t_contract(IMark2Market)6680",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:36"
          },
          {
            "label": "buyFee",
            "offset": 0,
            "slot": "305",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:38"
          },
          {
            "label": "buyFeeDenominator",
            "offset": 0,
            "slot": "306",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:39"
          },
          {
            "label": "redeemFee",
            "offset": 0,
            "slot": "307",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:41"
          },
          {
            "label": "redeemFeeDenominator",
            "offset": 0,
            "slot": "308",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:42"
          },
          {
            "label": "nextPayoutTime",
            "offset": 0,
            "slot": "309",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:45"
          },
          {
            "label": "payoutPeriod",
            "offset": 0,
            "slot": "310",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:48"
          },
          {
            "label": "payoutTimeRange",
            "offset": 0,
            "slot": "311",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:55"
          },
          {
            "label": "payoutListener",
            "offset": 0,
            "slot": "312",
            "type": "t_contract(IGlobalPayoutListener)6598",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:57"
          },
          {
            "label": "lastBlockNumber",
            "offset": 0,
            "slot": "313",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:60"
          },
          {
            "label": "abroadMin",
            "offset": 0,
            "slot": "314",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:62"
          },
          {
            "label": "abroadMax",
            "offset": 0,
            "slot": "315",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:63"
          },
          {
            "label": "insurance",
            "offset": 0,
            "slot": "316",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:65"
          },
          {
            "label": "oracleLoss",
            "offset": 0,
            "slot": "317",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:67"
          },
          {
            "label": "oracleLossDenominator",
            "offset": 0,
            "slot": "318",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:68"
          },
          {
            "label": "compensateLoss",
            "offset": 0,
            "slot": "319",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:70"
          },
          {
            "label": "compensateLossDenominator",
            "offset": 0,
            "slot": "320",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:71"
          },
          {
            "label": "profitRecipient",
            "offset": 0,
            "slot": "321",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:73"
          },
          {
            "label": "blockGetter",
            "offset": 0,
            "slot": "322",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:75"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)2892": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IGlobalPayoutListener)6598": {
            "label": "contract IGlobalPayoutListener",
            "numberOfBytes": "20"
          },
          "t_contract(IMark2Market)6680": {
            "label": "contract IMark2Market",
            "numberOfBytes": "20"
          },
          "t_contract(IPortfolioManager)6745": {
            "label": "contract IPortfolioManager",
            "numberOfBytes": "20"
          },
          "t_contract(UsdPlusToken)6577": {
            "label": "contract UsdPlusToken",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "dce3c4fd1afd80dbad804c79c98ab62e3036b93fac4992f71ed5e3291164285a": {
      "address": "0xd037aCe05f8C32BD6C684aef01ECF417C5E1c6E1",
      "txHash": "0x9d4bbe266848c5d13f4fdcd3ff228f787b2a02cd3726b7a52bdba90a698e78df",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\utils\\ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\utils\\introspection\\ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\access\\AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\access\\AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\ERC1967\\ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\UUPSUpgradeable.sol:107"
          },
          {
            "label": "items",
            "offset": 0,
            "slot": "251",
            "type": "t_array(t_struct(Item)7673_storage)dyn_storage",
            "contract": "GlobalPayoutListener",
            "src": "contracts\\GlobalPayoutListener.sol:35"
          },
          {
            "label": "disabled",
            "offset": 0,
            "slot": "252",
            "type": "t_bool",
            "contract": "GlobalPayoutListener",
            "src": "contracts\\GlobalPayoutListener.sol:37"
          },
          {
            "label": "undoneDisabled",
            "offset": 1,
            "slot": "252",
            "type": "t_bool",
            "contract": "GlobalPayoutListener",
            "src": "contracts\\GlobalPayoutListener.sol:38"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "253",
            "type": "t_array(t_uint256)49_storage",
            "contract": "GlobalPayoutListener",
            "src": "contracts\\GlobalPayoutListener.sol:328"
          },
          {
            "label": "defiEdgeTicks",
            "offset": 0,
            "slot": "302",
            "type": "t_array(t_struct(NewTick)2715_storage)dyn_storage",
            "contract": "OptimismPayoutListener",
            "src": "contracts\\payoutlisteners\\OptimismPayoutListener.sol:10"
          },
          {
            "label": "tokenAmount",
            "offset": 0,
            "slot": "303",
            "type": "t_uint256",
            "contract": "OptimismPayoutListener",
            "src": "contracts\\payoutlisteners\\OptimismPayoutListener.sol:11"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_struct(Item)7673_storage)dyn_storage": {
            "label": "struct GlobalPayoutListener.Item[]",
            "numberOfBytes": "32"
          },
          "t_array(t_struct(NewTick)2715_storage)dyn_storage": {
            "label": "struct IDefiEdgeTwapStrategy.NewTick[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)10_storage": {
            "label": "uint256[10]",
            "numberOfBytes": "320"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_enum(Operation)7678": {
            "label": "enum GlobalPayoutListener.Operation",
            "members": [
              "SKIM",
              "SYNC",
              "BRIBE",
              "CUSTOM"
            ],
            "numberOfBytes": "1"
          },
          "t_int24": {
            "label": "int24",
            "numberOfBytes": "3"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_struct(Item)7673_storage": {
            "label": "struct GlobalPayoutListener.Item",
            "members": [
              {
                "label": "pool",
                "type": "t_address",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "token",
                "type": "t_address",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "poolName",
                "type": "t_string_storage",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "bribe",
                "type": "t_address",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "operation",
                "type": "t_enum(Operation)7678",
                "offset": 20,
                "slot": "3"
              },
              {
                "label": "to",
                "type": "t_address",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "dexName",
                "type": "t_string_storage",
                "offset": 0,
                "slot": "5"
              },
              {
                "label": "feePercent",
                "type": "t_uint24",
                "offset": 0,
                "slot": "6"
              },
              {
                "label": "feeReceiver",
                "type": "t_address",
                "offset": 3,
                "slot": "6"
              },
              {
                "label": "__gap",
                "type": "t_array(t_uint256)10_storage",
                "offset": 0,
                "slot": "7"
              }
            ],
            "numberOfBytes": "544"
          },
          "t_struct(NewTick)2715_storage": {
            "label": "struct IDefiEdgeTwapStrategy.NewTick",
            "members": [
              {
                "label": "tickLower",
                "type": "t_int24",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "tickUpper",
                "type": "t_int24",
                "offset": 3,
                "slot": "0"
              },
              {
                "label": "amount0",
                "type": "t_uint256",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "amount1",
                "type": "t_uint256",
                "offset": 0,
                "slot": "2"
              }
            ],
            "numberOfBytes": "96"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint24": {
            "label": "uint24",
            "numberOfBytes": "3"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "783ae40d234ef4dd567902d1e3fa8ce7efadfbdceb5b58afad6afca55075a1af": {
      "address": "0x8892031220FF16B15d436bd7634c85cCF9dab739",
      "txHash": "0xe5c6e502f223876d7296d7f420736e69a6f8417769a8a4261ee34c2d370a78f6",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "exchanger",
            "offset": 0,
            "slot": "251",
            "type": "t_address",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:26"
          },
          {
            "label": "asset",
            "offset": 0,
            "slot": "252",
            "type": "t_contract(IERC20)3869",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:27"
          },
          {
            "label": "strategyWeightPositions",
            "offset": 0,
            "slot": "253",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:28"
          },
          {
            "label": "strategyWeights",
            "offset": 0,
            "slot": "254",
            "type": "t_array(t_struct(StrategyWeight)20440_storage)dyn_storage",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:29"
          },
          {
            "label": "cashStrategy",
            "offset": 0,
            "slot": "255",
            "type": "t_contract(IStrategy)20739",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:30"
          },
          {
            "label": "m2m",
            "offset": 0,
            "slot": "256",
            "type": "t_contract(IMark2Market)20409",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:31"
          },
          {
            "label": "totalRiskFactor",
            "offset": 0,
            "slot": "257",
            "type": "t_uint256",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:32"
          },
          {
            "label": "navSlippageBp",
            "offset": 0,
            "slot": "258",
            "type": "t_uint256",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:33"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_struct(StrategyWeight)20440_storage)dyn_storage": {
            "label": "struct IPortfolioManager.StrategyWeight[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)3869": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IMark2Market)20409": {
            "label": "contract IMark2Market",
            "numberOfBytes": "20"
          },
          "t_contract(IStrategy)20739": {
            "label": "contract IStrategy",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(StrategyWeight)20440_storage": {
            "label": "struct IPortfolioManager.StrategyWeight",
            "members": [
              {
                "label": "strategy",
                "type": "t_address",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "minWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "targetWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "maxWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "riskFactor",
                "type": "t_uint256",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "enabled",
                "type": "t_bool",
                "offset": 0,
                "slot": "5"
              },
              {
                "label": "enabledReward",
                "type": "t_bool",
                "offset": 1,
                "slot": "5"
              }
            ],
            "numberOfBytes": "192"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "f1ea8ad07df0b69a09f1156f01c46c55c859decaecbd321a93ca310c4043e8c6": {
      "address": "0x85bd0A230A539f0043BA112bb51789e665063018",
      "txHash": "0xd4382ea3425ae8e19c91db78ba7c96a84de63e1ec13411870e67109640f5b7ad",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_paused",
            "offset": 0,
            "slot": "251",
            "type": "t_bool",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)49_storage",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116"
          },
          {
            "label": "asset",
            "offset": 0,
            "slot": "301",
            "type": "t_contract(IERC20)2789",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:28"
          },
          {
            "label": "rebase",
            "offset": 0,
            "slot": "302",
            "type": "t_contract(IRebaseToken)5090",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:29"
          },
          {
            "label": "odosRouter",
            "offset": 0,
            "slot": "303",
            "type": "t_address",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:30"
          },
          {
            "label": "mintFee",
            "offset": 0,
            "slot": "304",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:32"
          },
          {
            "label": "mintFeeDenominator",
            "offset": 0,
            "slot": "305",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:33"
          },
          {
            "label": "redeemFee",
            "offset": 0,
            "slot": "306",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:35"
          },
          {
            "label": "redeemFeeDenominator",
            "offset": 0,
            "slot": "307",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:36"
          },
          {
            "label": "lastBlockNumber",
            "offset": 0,
            "slot": "308",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:38"
          },
          {
            "label": "swapSlippage",
            "offset": 0,
            "slot": "309",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:39"
          },
          {
            "label": "nextPayoutTime",
            "offset": 0,
            "slot": "310",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:41"
          },
          {
            "label": "payoutPeriod",
            "offset": 0,
            "slot": "311",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:42"
          },
          {
            "label": "payoutTimeRange",
            "offset": 0,
            "slot": "312",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:43"
          },
          {
            "label": "withdrawRequests",
            "offset": 0,
            "slot": "313",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:45"
          },
          {
            "label": "requestWaitPeriod",
            "offset": 0,
            "slot": "314",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:46"
          },
          {
            "label": "withdrawPeriod",
            "offset": 0,
            "slot": "315",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:47"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)2789": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IRebaseToken)5090": {
            "label": "contract IRebaseToken",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "d8bf560c4c5ea6cce53e57e51da112a778ef59d6ebac7290797c2d5dd038398d": {
      "address": "0x622783656428E3d0E397641AB19F229A41Ac1090",
      "txHash": "0xbf45e533effc8926f56d708c8acaeda58383c8b4c56d54197bc10e8830a92773",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\utils\\ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\utils\\introspection\\ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\access\\AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\access\\AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\ERC1967\\ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\UUPSUpgradeable.sol:107"
          },
          {
            "label": "inchRouter",
            "offset": 0,
            "slot": "251",
            "type": "t_contract(IInchRouter)2709",
            "contract": "InchSwapper",
            "src": "contracts\\InchSwapper.sol:18"
          },
          {
            "label": "blockGetter",
            "offset": 0,
            "slot": "252",
            "type": "t_address",
            "contract": "InchSwapper",
            "src": "contracts\\InchSwapper.sol:19"
          },
          {
            "label": "routePathsMap",
            "offset": 0,
            "slot": "253",
            "type": "t_mapping(t_address,t_mapping(t_address,t_struct(Route)3070_storage))",
            "contract": "InchSwapper",
            "src": "contracts\\InchSwapper.sol:21"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_array(t_uint256)dyn_storage": {
            "label": "uint256[]",
            "numberOfBytes": "32"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_bytes_storage": {
            "label": "bytes",
            "numberOfBytes": "32"
          },
          "t_contract(IInchRouter)2709": {
            "label": "contract IInchRouter",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_mapping(t_address,t_struct(Route)3070_storage))": {
            "label": "mapping(address => mapping(address => struct IInchSwapper.Route))",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_struct(Route)3070_storage)": {
            "label": "mapping(address => struct IInchSwapper.Route)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(Route)3070_storage": {
            "label": "struct IInchSwapper.Route",
            "members": [
              {
                "label": "updateBlock",
                "type": "t_uint256",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "amount",
                "type": "t_uint256",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "flags",
                "type": "t_uint256",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "srcReceiver",
                "type": "t_address",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "data",
                "type": "t_bytes_storage",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "pools",
                "type": "t_array(t_uint256)dyn_storage",
                "offset": 0,
                "slot": "5"
              },
              {
                "label": "isUniV3",
                "type": "t_bool",
                "offset": 0,
                "slot": "6"
              }
            ],
            "numberOfBytes": "224"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "9e479891fecbaf7c9c6dc46fc56e2b02c1142dd25a8ad7730b75bdcbe14d2745": {
      "address": "0xf96Fc9fF8863c8b2fe73aD95a909Dc86EfB01a88",
      "txHash": "0x1a34003745a6d4b08aec6bdef62509a528aa11442b3827afd75e46f4ac59ef62",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\utils\\ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\utils\\introspection\\ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\access\\AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\access\\AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\ERC1967\\ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin\\contracts-upgradeable\\proxy\\utils\\UUPSUpgradeable.sol:107"
          },
          {
            "label": "inchRouter",
            "offset": 0,
            "slot": "251",
            "type": "t_contract(IInchRouter)2709",
            "contract": "InchSwapper",
            "src": "contracts\\InchSwapper.sol:18"
          },
          {
            "label": "blockGetter",
            "offset": 0,
            "slot": "252",
            "type": "t_address",
            "contract": "InchSwapper",
            "src": "contracts\\InchSwapper.sol:19"
          },
          {
            "label": "routePathsMap",
            "offset": 0,
            "slot": "253",
            "type": "t_mapping(t_address,t_mapping(t_address,t_struct(Route)3079_storage))",
            "contract": "InchSwapper",
            "src": "contracts\\InchSwapper.sol:21"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_array(t_uint256)dyn_storage": {
            "label": "uint256[]",
            "numberOfBytes": "32"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_bytes_storage": {
            "label": "bytes",
            "numberOfBytes": "32"
          },
          "t_contract(IInchRouter)2709": {
            "label": "contract IInchRouter",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_mapping(t_address,t_struct(Route)3079_storage))": {
            "label": "mapping(address => mapping(address => struct IInchSwapper.Route))",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_struct(Route)3079_storage)": {
            "label": "mapping(address => struct IInchSwapper.Route)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(Route)3079_storage": {
            "label": "struct IInchSwapper.Route",
            "members": [
              {
                "label": "updateBlock",
                "type": "t_uint256",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "amount",
                "type": "t_uint256",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "flags",
                "type": "t_uint256",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "srcReceiver",
                "type": "t_address",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "data",
                "type": "t_bytes_storage",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "pools",
                "type": "t_array(t_uint256)dyn_storage",
                "offset": 0,
                "slot": "5"
              },
              {
                "label": "isUniV3",
                "type": "t_bool",
                "offset": 0,
                "slot": "6"
              }
            ],
            "numberOfBytes": "224"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "7551a78977b51fe6f61fc0e051b78ac53fe8508513b39abe5882ec3f34c75d7f": {
      "address": "0x9a8687eF7B01375173aEF4446aBD25e7E744EBa2",
      "txHash": "0x3121b809b2786d845171eb0f487113e61de0919b7f0efa8448ca04755685865e",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)179_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_paused",
            "offset": 0,
            "slot": "251",
            "type": "t_bool",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)49_storage",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116"
          },
          {
            "label": "usdPlus",
            "offset": 0,
            "slot": "301",
            "type": "t_contract(UsdPlusToken)25800",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:32"
          },
          {
            "label": "usdc",
            "offset": 0,
            "slot": "302",
            "type": "t_contract(IERC20)4652",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:33"
          },
          {
            "label": "portfolioManager",
            "offset": 0,
            "slot": "303",
            "type": "t_contract(IPortfolioManager)27317",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:35"
          },
          {
            "label": "mark2market",
            "offset": 0,
            "slot": "304",
            "type": "t_contract(IMark2Market)27246",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:36"
          },
          {
            "label": "buyFee",
            "offset": 0,
            "slot": "305",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:38"
          },
          {
            "label": "buyFeeDenominator",
            "offset": 0,
            "slot": "306",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:39"
          },
          {
            "label": "redeemFee",
            "offset": 0,
            "slot": "307",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:41"
          },
          {
            "label": "redeemFeeDenominator",
            "offset": 0,
            "slot": "308",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:42"
          },
          {
            "label": "nextPayoutTime",
            "offset": 0,
            "slot": "309",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:45"
          },
          {
            "label": "payoutPeriod",
            "offset": 0,
            "slot": "310",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:48"
          },
          {
            "label": "payoutTimeRange",
            "offset": 0,
            "slot": "311",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:55"
          },
          {
            "label": "payoutListener",
            "offset": 0,
            "slot": "312",
            "type": "t_contract(IGlobalPayoutListener)27079",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:57"
          },
          {
            "label": "lastBlockNumber",
            "offset": 0,
            "slot": "313",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:60"
          },
          {
            "label": "abroadMin",
            "offset": 0,
            "slot": "314",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:62"
          },
          {
            "label": "abroadMax",
            "offset": 0,
            "slot": "315",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:63"
          },
          {
            "label": "insurance",
            "offset": 0,
            "slot": "316",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:65"
          },
          {
            "label": "oracleLoss",
            "offset": 0,
            "slot": "317",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:67"
          },
          {
            "label": "oracleLossDenominator",
            "offset": 0,
            "slot": "318",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:68"
          },
          {
            "label": "compensateLoss",
            "offset": 0,
            "slot": "319",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:70"
          },
          {
            "label": "compensateLossDenominator",
            "offset": 0,
            "slot": "320",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:71"
          },
          {
            "label": "profitRecipient",
            "offset": 0,
            "slot": "321",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:73"
          },
          {
            "label": "blockGetter",
            "offset": 0,
            "slot": "322",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:75"
          },
          {
            "label": "roleManager",
            "offset": 0,
            "slot": "323",
            "type": "t_contract(IRoleManager)27492",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:76"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)4652": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IGlobalPayoutListener)27079": {
            "label": "contract IGlobalPayoutListener",
            "numberOfBytes": "20"
          },
          "t_contract(IMark2Market)27246": {
            "label": "contract IMark2Market",
            "numberOfBytes": "20"
          },
          "t_contract(IPortfolioManager)27317": {
            "label": "contract IPortfolioManager",
            "numberOfBytes": "20"
          },
          "t_contract(IRoleManager)27492": {
            "label": "contract IRoleManager",
            "numberOfBytes": "20"
          },
          "t_contract(UsdPlusToken)25800": {
            "label": "contract UsdPlusToken",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)179_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)179_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "4ae4c5ff43e35991d3b7918af9608e78ee155b30abd6be3353d2ed5f96e6fee9": {
      "address": "0xD9F74C70c28bba1d9dB0c44c5a2651cBEB45f3BA",
      "txHash": "0xc315fc5d4187b9e87309715384e19e1d0d3fa927b71b350d130c18a6aa066720",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)179_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "exchanger",
            "offset": 0,
            "slot": "251",
            "type": "t_address",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:25"
          },
          {
            "label": "asset",
            "offset": 0,
            "slot": "252",
            "type": "t_contract(IERC20)4652",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:26"
          },
          {
            "label": "strategyWeightPositions",
            "offset": 0,
            "slot": "253",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:27"
          },
          {
            "label": "strategyWeights",
            "offset": 0,
            "slot": "254",
            "type": "t_array(t_struct(StrategyWeight)27277_storage)dyn_storage",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:28"
          },
          {
            "label": "cashStrategy",
            "offset": 0,
            "slot": "255",
            "type": "t_contract(IStrategy)27588",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:29"
          },
          {
            "label": "m2m",
            "offset": 0,
            "slot": "256",
            "type": "t_contract(IMark2Market)27246",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:30"
          },
          {
            "label": "totalRiskFactor",
            "offset": 0,
            "slot": "257",
            "type": "t_uint256",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:31"
          },
          {
            "label": "navSlippageBp",
            "offset": 0,
            "slot": "258",
            "type": "t_uint256",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:32"
          },
          {
            "label": "roleManager",
            "offset": 0,
            "slot": "259",
            "type": "t_contract(IRoleManager)27492",
            "contract": "PortfolioManager",
            "src": "contracts/PortfolioManager.sol:33"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_struct(StrategyWeight)27277_storage)dyn_storage": {
            "label": "struct IPortfolioManager.StrategyWeight[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)4652": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IMark2Market)27246": {
            "label": "contract IMark2Market",
            "numberOfBytes": "20"
          },
          "t_contract(IRoleManager)27492": {
            "label": "contract IRoleManager",
            "numberOfBytes": "20"
          },
          "t_contract(IStrategy)27588": {
            "label": "contract IStrategy",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)179_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)179_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(StrategyWeight)27277_storage": {
            "label": "struct IPortfolioManager.StrategyWeight",
            "members": [
              {
                "label": "strategy",
                "type": "t_address",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "minWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "targetWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "maxWeight",
                "type": "t_uint256",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "riskFactor",
                "type": "t_uint256",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "enabled",
                "type": "t_bool",
                "offset": 0,
                "slot": "5"
              },
              {
                "label": "enabledReward",
                "type": "t_bool",
                "offset": 1,
                "slot": "5"
              }
            ],
            "numberOfBytes": "192"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "d7947894c5eb5ea3d8b75522415d8f7521d06f6127e37f69ae36ffb9065e99b0": {
      "address": "0xc1fBe4ceB41551467e3F22fFb22D52da21A9bfBE",
      "txHash": "0x1a0dca1437005debc0c7d9a8b47f891ba1c0a05ef52fd70334e428af60614bcc",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)179_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_paused",
            "offset": 0,
            "slot": "251",
            "type": "t_bool",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)49_storage",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116"
          },
          {
            "label": "asset",
            "offset": 0,
            "slot": "301",
            "type": "t_contract(IERC20)4652",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:27"
          },
          {
            "label": "rebase",
            "offset": 0,
            "slot": "302",
            "type": "t_contract(IRebaseToken)27480",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:28"
          },
          {
            "label": "odosRouter",
            "offset": 0,
            "slot": "303",
            "type": "t_address",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:29"
          },
          {
            "label": "mintFee",
            "offset": 0,
            "slot": "304",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:31"
          },
          {
            "label": "mintFeeDenominator",
            "offset": 0,
            "slot": "305",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:32"
          },
          {
            "label": "redeemFee",
            "offset": 0,
            "slot": "306",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:34"
          },
          {
            "label": "redeemFeeDenominator",
            "offset": 0,
            "slot": "307",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:35"
          },
          {
            "label": "lastBlockNumber",
            "offset": 0,
            "slot": "308",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:37"
          },
          {
            "label": "swapSlippage",
            "offset": 0,
            "slot": "309",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:38"
          },
          {
            "label": "nextPayoutTime",
            "offset": 0,
            "slot": "310",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:40"
          },
          {
            "label": "payoutPeriod",
            "offset": 0,
            "slot": "311",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:41"
          },
          {
            "label": "payoutTimeRange",
            "offset": 0,
            "slot": "312",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:42"
          },
          {
            "label": "withdrawRequests",
            "offset": 0,
            "slot": "313",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:44"
          },
          {
            "label": "requestWaitPeriod",
            "offset": 0,
            "slot": "314",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:45"
          },
          {
            "label": "withdrawPeriod",
            "offset": 0,
            "slot": "315",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:46"
          },
          {
            "label": "roleManager",
            "offset": 0,
            "slot": "316",
            "type": "t_contract(IRoleManager)27492",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:47"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)4652": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IRebaseToken)27480": {
            "label": "contract IRebaseToken",
            "numberOfBytes": "20"
          },
          "t_contract(IRoleManager)27492": {
            "label": "contract IRoleManager",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)179_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)179_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "bf727e810a7c5527c0e785f6cb744f18c06d4acd9953993c672a0df07e2e3827": {
      "address": "0x3F0bdBeC0101D75Bd47C01a5BB149AaDd7206251",
      "txHash": "0xedfc862a17661cd5d34c41149e41fdab4910a6d11052c68ecb4d9951170f0aed",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)179_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "_roleMembers",
            "offset": 0,
            "slot": "151",
            "type": "t_mapping(t_bytes32,t_struct(AddressSet)3310_storage)",
            "contract": "AccessControlEnumerableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.sol:22"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "152",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlEnumerableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.sol:76"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "251",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_bytes32)dyn_storage": {
            "label": "bytes32[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "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(AddressSet)3310_storage)": {
            "label": "mapping(bytes32 => struct EnumerableSetUpgradeable.AddressSet)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)179_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_uint256)": {
            "label": "mapping(bytes32 => uint256)",
            "numberOfBytes": "32"
          },
          "t_struct(AddressSet)3310_storage": {
            "label": "struct EnumerableSetUpgradeable.AddressSet",
            "members": [
              {
                "label": "_inner",
                "type": "t_struct(Set)2995_storage",
                "offset": 0,
                "slot": "0"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(RoleData)179_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(Set)2995_storage": {
            "label": "struct EnumerableSetUpgradeable.Set",
            "members": [
              {
                "label": "_values",
                "type": "t_array(t_bytes32)dyn_storage",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "_indexes",
                "type": "t_mapping(t_bytes32,t_uint256)",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "e4562f5adc4c122ee94863404517a37827941e0a9a16d8a535819acb6310adee": {
      "address": "0xC45b866F8AfC7c89548828bcfECCD0d1a20691e8",
      "txHash": "0xff3604f5f23bd05f895c7b331c1e81621c239e79ae919d1f79a4319d91e5befe",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)179_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "inchRouter",
            "offset": 0,
            "slot": "251",
            "type": "t_contract(IInchRouter)7680",
            "contract": "InchSwapper",
            "src": "contracts/InchSwapper.sol:17"
          },
          {
            "label": "blockGetter",
            "offset": 0,
            "slot": "252",
            "type": "t_address",
            "contract": "InchSwapper",
            "src": "contracts/InchSwapper.sol:18"
          },
          {
            "label": "routePathsMap",
            "offset": 0,
            "slot": "253",
            "type": "t_mapping(t_address,t_mapping(t_address,t_struct(Route)27116_storage))",
            "contract": "InchSwapper",
            "src": "contracts/InchSwapper.sol:19"
          },
          {
            "label": "roleManager",
            "offset": 0,
            "slot": "254",
            "type": "t_contract(IRoleManager)27492",
            "contract": "InchSwapper",
            "src": "contracts/InchSwapper.sol:20"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_array(t_uint256)dyn_storage": {
            "label": "uint256[]",
            "numberOfBytes": "32"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_bytes_storage": {
            "label": "bytes",
            "numberOfBytes": "32"
          },
          "t_contract(IInchRouter)7680": {
            "label": "contract IInchRouter",
            "numberOfBytes": "20"
          },
          "t_contract(IRoleManager)27492": {
            "label": "contract IRoleManager",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_mapping(t_address,t_struct(Route)27116_storage))": {
            "label": "mapping(address => mapping(address => struct IInchSwapper.Route))",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_struct(Route)27116_storage)": {
            "label": "mapping(address => struct IInchSwapper.Route)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)179_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)179_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(Route)27116_storage": {
            "label": "struct IInchSwapper.Route",
            "members": [
              {
                "label": "updateBlock",
                "type": "t_uint256",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "amount",
                "type": "t_uint256",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "flags",
                "type": "t_uint256",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "srcReceiver",
                "type": "t_address",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "data",
                "type": "t_bytes_storage",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "pools",
                "type": "t_array(t_uint256)dyn_storage",
                "offset": 0,
                "slot": "5"
              },
              {
                "label": "isUniV3",
                "type": "t_bool",
                "offset": 0,
                "slot": "6"
              }
            ],
            "numberOfBytes": "224"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "9c8ac4a70cc3d1aa79b8f44c399072b9d8739085f65e568fc119fd657f7a80a5": {
      "address": "0xb55838c7Ce38bbF899cb9BCcC0C1B706e18e0294",
      "txHash": "0xc8a0453ad628ac85adef57dbc6bb69eded85eb6b24b1201757352fc675933320",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)179_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_creditBalances",
            "offset": 0,
            "slot": "251",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:41"
          },
          {
            "label": "_allowances",
            "offset": 0,
            "slot": "252",
            "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:43"
          },
          {
            "label": "_totalSupply",
            "offset": 0,
            "slot": "253",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:45"
          },
          {
            "label": "_name",
            "offset": 0,
            "slot": "254",
            "type": "t_string_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:47"
          },
          {
            "label": "_symbol",
            "offset": 0,
            "slot": "255",
            "type": "t_string_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:48"
          },
          {
            "label": "_rebasingCredits",
            "offset": 0,
            "slot": "256",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:50"
          },
          {
            "label": "_rebasingCreditsPerToken",
            "offset": 0,
            "slot": "257",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:51"
          },
          {
            "label": "nonRebasingSupply",
            "offset": 0,
            "slot": "258",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:53"
          },
          {
            "label": "DELETED_1",
            "offset": 0,
            "slot": "259",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:54"
          },
          {
            "label": "DELETED_2",
            "offset": 0,
            "slot": "260",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:55"
          },
          {
            "label": "_owners",
            "offset": 0,
            "slot": "261",
            "type": "t_struct(AddressSet)7084_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:57"
          },
          {
            "label": "exchange",
            "offset": 0,
            "slot": "263",
            "type": "t_address",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:59"
          },
          {
            "label": "_decimals",
            "offset": 20,
            "slot": "263",
            "type": "t_uint8",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:60"
          },
          {
            "label": "payoutManager",
            "offset": 0,
            "slot": "264",
            "type": "t_address",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:61"
          },
          {
            "label": "nonRebasingCreditsPerToken",
            "offset": 0,
            "slot": "265",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:63"
          },
          {
            "label": "rebaseState",
            "offset": 0,
            "slot": "266",
            "type": "t_mapping(t_address,t_enum(RebaseOptions)26580)",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:64"
          },
          {
            "label": "_nonRebaseOwners",
            "offset": 0,
            "slot": "267",
            "type": "t_struct(AddressSet)7084_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:65"
          },
          {
            "label": "_status",
            "offset": 0,
            "slot": "269",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:67"
          },
          {
            "label": "paused",
            "offset": 0,
            "slot": "270",
            "type": "t_bool",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:68"
          },
          {
            "label": "roleManager",
            "offset": 1,
            "slot": "270",
            "type": "t_contract(IRoleManager)33937",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:69"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_bytes32)dyn_storage": {
            "label": "bytes32[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IRoleManager)33937": {
            "label": "contract IRoleManager",
            "numberOfBytes": "20"
          },
          "t_enum(RebaseOptions)26580": {
            "label": "enum UsdPlusToken.RebaseOptions",
            "members": [
              "OptIn",
              "OptOut"
            ],
            "numberOfBytes": "1"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_enum(RebaseOptions)26580)": {
            "label": "mapping(address => enum UsdPlusToken.RebaseOptions)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_mapping(t_address,t_uint256))": {
            "label": "mapping(address => mapping(address => uint256))",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)179_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_uint256)": {
            "label": "mapping(bytes32 => uint256)",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_struct(AddressSet)7084_storage": {
            "label": "struct EnumerableSet.AddressSet",
            "members": [
              {
                "label": "_inner",
                "type": "t_struct(Set)6769_storage",
                "offset": 0,
                "slot": "0"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(RoleData)179_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(Set)6769_storage": {
            "label": "struct EnumerableSet.Set",
            "members": [
              {
                "label": "_values",
                "type": "t_array(t_bytes32)dyn_storage",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "_indexes",
                "type": "t_mapping(t_bytes32,t_uint256)",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "ec723afc9b7f5285e1732e86714ebe1c40b02064a9a53af1a773e96f3e57bd97": {
      "address": "0xff750f3870D6D98082FC60Fb5273Aee1477dFA39",
      "txHash": "0x90b5583eb23ad50759398cef06b4a6b29b06c5c18b2072b7fab6e06dcd64d605",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)179_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_paused",
            "offset": 0,
            "slot": "251",
            "type": "t_bool",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)49_storage",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116"
          },
          {
            "label": "usdPlus",
            "offset": 0,
            "slot": "301",
            "type": "t_contract(IUsdPlusToken)34300",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:32"
          },
          {
            "label": "usdc",
            "offset": 0,
            "slot": "302",
            "type": "t_contract(IERC20)4652",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:33"
          },
          {
            "label": "portfolioManager",
            "offset": 0,
            "slot": "303",
            "type": "t_contract(IPortfolioManager)33754",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:35"
          },
          {
            "label": "mark2market",
            "offset": 0,
            "slot": "304",
            "type": "t_contract(IMark2Market)33662",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:36"
          },
          {
            "label": "buyFee",
            "offset": 0,
            "slot": "305",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:38"
          },
          {
            "label": "buyFeeDenominator",
            "offset": 0,
            "slot": "306",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:39"
          },
          {
            "label": "redeemFee",
            "offset": 0,
            "slot": "307",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:41"
          },
          {
            "label": "redeemFeeDenominator",
            "offset": 0,
            "slot": "308",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:42"
          },
          {
            "label": "nextPayoutTime",
            "offset": 0,
            "slot": "309",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:45"
          },
          {
            "label": "payoutPeriod",
            "offset": 0,
            "slot": "310",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:48"
          },
          {
            "label": "payoutTimeRange",
            "offset": 0,
            "slot": "311",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:55"
          },
          {
            "label": "payoutManager",
            "offset": 0,
            "slot": "312",
            "type": "t_contract(IPayoutManager)33689",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:57"
          },
          {
            "label": "lastBlockNumber",
            "offset": 0,
            "slot": "313",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:60"
          },
          {
            "label": "abroadMin",
            "offset": 0,
            "slot": "314",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:62"
          },
          {
            "label": "abroadMax",
            "offset": 0,
            "slot": "315",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:63"
          },
          {
            "label": "insurance",
            "offset": 0,
            "slot": "316",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:65"
          },
          {
            "label": "oracleLoss",
            "offset": 0,
            "slot": "317",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:67"
          },
          {
            "label": "oracleLossDenominator",
            "offset": 0,
            "slot": "318",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:68"
          },
          {
            "label": "compensateLoss",
            "offset": 0,
            "slot": "319",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:70"
          },
          {
            "label": "compensateLossDenominator",
            "offset": 0,
            "slot": "320",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:71"
          },
          {
            "label": "profitRecipient",
            "offset": 0,
            "slot": "321",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:73"
          },
          {
            "label": "blockGetter",
            "offset": 0,
            "slot": "322",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:75"
          },
          {
            "label": "roleManager",
            "offset": 0,
            "slot": "323",
            "type": "t_contract(IRoleManager)33937",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:76"
          },
          {
            "label": "_reentrancyGuardStatus",
            "offset": 0,
            "slot": "324",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:78"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)4652": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IMark2Market)33662": {
            "label": "contract IMark2Market",
            "numberOfBytes": "20"
          },
          "t_contract(IPayoutManager)33689": {
            "label": "contract IPayoutManager",
            "numberOfBytes": "20"
          },
          "t_contract(IPortfolioManager)33754": {
            "label": "contract IPortfolioManager",
            "numberOfBytes": "20"
          },
          "t_contract(IRoleManager)33937": {
            "label": "contract IRoleManager",
            "numberOfBytes": "20"
          },
          "t_contract(IUsdPlusToken)34300": {
            "label": "contract IUsdPlusToken",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)179_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)179_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "c2c266c3eda862e151465e1ddf16347ad25552df20cd427d0c7cb522bb485d59": {
      "address": "0x21dC33cDc6E68484aAd323DAD1B65BA88e2dee1f",
      "txHash": "0xb0993d1520be43bd3d58c2d8ce9e44b6ab9949f1b5a18342d74a570d853689ed",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)179_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_paused",
            "offset": 0,
            "slot": "251",
            "type": "t_bool",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)49_storage",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116"
          },
          {
            "label": "asset",
            "offset": 0,
            "slot": "301",
            "type": "t_contract(IERC20)4652",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:29"
          },
          {
            "label": "rebase",
            "offset": 0,
            "slot": "302",
            "type": "t_contract(IRebaseToken)33925",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:30"
          },
          {
            "label": "odosRouter",
            "offset": 0,
            "slot": "303",
            "type": "t_address",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:31"
          },
          {
            "label": "mintFee",
            "offset": 0,
            "slot": "304",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:33"
          },
          {
            "label": "redeemFee",
            "offset": 0,
            "slot": "305",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:34"
          },
          {
            "label": "lastBlockNumber",
            "offset": 0,
            "slot": "306",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:36"
          },
          {
            "label": "swapSlippage",
            "offset": 0,
            "slot": "307",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:37"
          },
          {
            "label": "nextPayoutTime",
            "offset": 0,
            "slot": "308",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:39"
          },
          {
            "label": "payoutPeriod",
            "offset": 0,
            "slot": "309",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:40"
          },
          {
            "label": "payoutTimeRange",
            "offset": 0,
            "slot": "310",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:41"
          },
          {
            "label": "withdrawRequests",
            "offset": 0,
            "slot": "311",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:43"
          },
          {
            "label": "requestWaitPeriod",
            "offset": 0,
            "slot": "312",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:44"
          },
          {
            "label": "withdrawPeriod",
            "offset": 0,
            "slot": "313",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:45"
          },
          {
            "label": "assetOracle",
            "offset": 0,
            "slot": "314",
            "type": "t_contract(IAssetOracle)33380",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:47"
          },
          {
            "label": "roleManager",
            "offset": 0,
            "slot": "315",
            "type": "t_contract(IRoleManager)33937",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:48"
          },
          {
            "label": "blockGetter",
            "offset": 0,
            "slot": "316",
            "type": "t_address",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:49"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IAssetOracle)33380": {
            "label": "contract IAssetOracle",
            "numberOfBytes": "20"
          },
          "t_contract(IERC20)4652": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IRebaseToken)33925": {
            "label": "contract IRebaseToken",
            "numberOfBytes": "20"
          },
          "t_contract(IRoleManager)33937": {
            "label": "contract IRoleManager",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)179_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)179_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "6feb24ef3b3825ffd9af3160105382f9541705022f1e8b5cefad8c0a08b945ea": {
      "address": "0x388eF6587473FCEe972ba5aca5abC8A79137e6Cf",
      "txHash": "0x7631ed949f626d4f75201ad0e9a4c5e825cd38faa097509cf9ceaf1eb3387eff",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_creditBalances",
            "offset": 0,
            "slot": "251",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:41"
          },
          {
            "label": "_allowances",
            "offset": 0,
            "slot": "252",
            "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:43"
          },
          {
            "label": "_totalSupply",
            "offset": 0,
            "slot": "253",
            "type": "t_uint256",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:45"
          },
          {
            "label": "_name",
            "offset": 0,
            "slot": "254",
            "type": "t_string_storage",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:47"
          },
          {
            "label": "_symbol",
            "offset": 0,
            "slot": "255",
            "type": "t_string_storage",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:48"
          },
          {
            "label": "_rebasingCredits",
            "offset": 0,
            "slot": "256",
            "type": "t_uint256",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:50"
          },
          {
            "label": "_rebasingCreditsPerToken",
            "offset": 0,
            "slot": "257",
            "type": "t_uint256",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:51"
          },
          {
            "label": "nonRebasingSupply",
            "offset": 0,
            "slot": "258",
            "type": "t_uint256",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:53"
          },
          {
            "label": "DELETED_1",
            "offset": 0,
            "slot": "259",
            "type": "t_uint256",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:54"
          },
          {
            "label": "DELETED_2",
            "offset": 0,
            "slot": "260",
            "type": "t_uint256",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:55"
          },
          {
            "label": "_owners",
            "offset": 0,
            "slot": "261",
            "type": "t_struct(AddressSet)3325_storage",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:57"
          },
          {
            "label": "exchange",
            "offset": 0,
            "slot": "263",
            "type": "t_address",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:59"
          },
          {
            "label": "_decimals",
            "offset": 20,
            "slot": "263",
            "type": "t_uint8",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:60"
          },
          {
            "label": "payoutManager",
            "offset": 0,
            "slot": "264",
            "type": "t_address",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:61"
          },
          {
            "label": "nonRebasingCreditsPerToken",
            "offset": 0,
            "slot": "265",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:63"
          },
          {
            "label": "rebaseState",
            "offset": 0,
            "slot": "266",
            "type": "t_mapping(t_address,t_enum(RebaseOptions)3755)",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:64"
          },
          {
            "label": "_nonRebaseOwners",
            "offset": 0,
            "slot": "267",
            "type": "t_struct(AddressSet)3325_storage",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:65"
          },
          {
            "label": "_status",
            "offset": 0,
            "slot": "269",
            "type": "t_uint256",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:67"
          },
          {
            "label": "paused",
            "offset": 0,
            "slot": "270",
            "type": "t_bool",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:68"
          },
          {
            "label": "roleManager",
            "offset": 1,
            "slot": "270",
            "type": "t_contract(IRoleManager)5652",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:69"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_bytes32)dyn_storage": {
            "label": "bytes32[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IRoleManager)5652": {
            "label": "contract IRoleManager",
            "numberOfBytes": "20"
          },
          "t_enum(RebaseOptions)3755": {
            "label": "enum UsdPlusTokenMigration.RebaseOptions",
            "members": [
              "OptIn",
              "OptOut"
            ],
            "numberOfBytes": "1"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_enum(RebaseOptions)3755)": {
            "label": "mapping(address => enum UsdPlusTokenMigration.RebaseOptions)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_mapping(t_address,t_uint256))": {
            "label": "mapping(address => mapping(address => uint256))",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_uint256)": {
            "label": "mapping(bytes32 => uint256)",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_struct(AddressSet)3325_storage": {
            "label": "struct EnumerableSet.AddressSet",
            "members": [
              {
                "label": "_inner",
                "type": "t_struct(Set)3010_storage",
                "offset": 0,
                "slot": "0"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(Set)3010_storage": {
            "label": "struct EnumerableSet.Set",
            "members": [
              {
                "label": "_values",
                "type": "t_array(t_bytes32)dyn_storage",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "_indexes",
                "type": "t_mapping(t_bytes32,t_uint256)",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "5908401870990b0f7ded1103535d2cbdf8dc76f3b04d30185976ef8ea2f4b299": {
      "address": "0xa2dbE1D92d9C66DbB3e4C9358d91988907bC9Ad4",
      "txHash": "0xf35700c94fc9a808e9e47f1542b57513f7c0ed8d679b464f06d3b5f946c411fc",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)179_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "items",
            "offset": 0,
            "slot": "251",
            "type": "t_array(t_struct(Item)22187_storage)dyn_storage",
            "contract": "PayoutManager",
            "src": "contracts/PayoutManager.sol:39"
          },
          {
            "label": "disabled",
            "offset": 0,
            "slot": "252",
            "type": "t_bool",
            "contract": "PayoutManager",
            "src": "contracts/PayoutManager.sol:41"
          },
          {
            "label": "roleManager",
            "offset": 1,
            "slot": "252",
            "type": "t_contract(IRoleManager)33839",
            "contract": "PayoutManager",
            "src": "contracts/PayoutManager.sol:42"
          },
          {
            "label": "rewardWallet",
            "offset": 0,
            "slot": "253",
            "type": "t_address",
            "contract": "PayoutManager",
            "src": "contracts/PayoutManager.sol:43"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "254",
            "type": "t_array(t_uint256)49_storage",
            "contract": "PayoutManager",
            "src": "contracts/PayoutManager.sol:318"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_struct(Item)22187_storage)dyn_storage": {
            "label": "struct PayoutManager.Item[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)10_storage": {
            "label": "uint256[10]",
            "numberOfBytes": "320"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IRoleManager)33839": {
            "label": "contract IRoleManager",
            "numberOfBytes": "20"
          },
          "t_enum(Operation)22192": {
            "label": "enum PayoutManager.Operation",
            "members": [
              "SKIM",
              "SYNC",
              "BRIBE",
              "CUSTOM"
            ],
            "numberOfBytes": "1"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)179_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_struct(Item)22187_storage": {
            "label": "struct PayoutManager.Item",
            "members": [
              {
                "label": "pool",
                "type": "t_address",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "token",
                "type": "t_address",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "poolName",
                "type": "t_string_storage",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "bribe",
                "type": "t_address",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "operation",
                "type": "t_enum(Operation)22192",
                "offset": 20,
                "slot": "3"
              },
              {
                "label": "to",
                "type": "t_address",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "dexName",
                "type": "t_string_storage",
                "offset": 0,
                "slot": "5"
              },
              {
                "label": "feePercent",
                "type": "t_uint24",
                "offset": 0,
                "slot": "6"
              },
              {
                "label": "feeReceiver",
                "type": "t_address",
                "offset": 3,
                "slot": "6"
              },
              {
                "label": "__gap",
                "type": "t_array(t_uint256)10_storage",
                "offset": 0,
                "slot": "7"
              }
            ],
            "numberOfBytes": "544"
          },
          "t_struct(RoleData)179_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint24": {
            "label": "uint24",
            "numberOfBytes": "3"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "3aff361f6de6eb3d59ccdd6c36684921af4120e93460666b04cc26c7a5fe2cf6": {
      "address": "0xd8BD1Af9955A77A40Cfa58099622Bc176b5A862A",
      "txHash": "0x258c13c372b97f107488ef5778eda6d64ea4e0037f3e27286300967f80930a61",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)34_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "_creditBalances",
            "offset": 0,
            "slot": "251",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:41"
          },
          {
            "label": "_allowances",
            "offset": 0,
            "slot": "252",
            "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:43"
          },
          {
            "label": "_totalSupply",
            "offset": 0,
            "slot": "253",
            "type": "t_uint256",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:45"
          },
          {
            "label": "_name",
            "offset": 0,
            "slot": "254",
            "type": "t_string_storage",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:47"
          },
          {
            "label": "_symbol",
            "offset": 0,
            "slot": "255",
            "type": "t_string_storage",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:48"
          },
          {
            "label": "_rebasingCredits",
            "offset": 0,
            "slot": "256",
            "type": "t_uint256",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:50"
          },
          {
            "label": "_rebasingCreditsPerToken",
            "offset": 0,
            "slot": "257",
            "type": "t_uint256",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:51"
          },
          {
            "label": "nonRebasingSupply",
            "offset": 0,
            "slot": "258",
            "type": "t_uint256",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:53"
          },
          {
            "label": "DELETED_1",
            "offset": 0,
            "slot": "259",
            "type": "t_uint256",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:54"
          },
          {
            "label": "DELETED_2",
            "offset": 0,
            "slot": "260",
            "type": "t_uint256",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:55"
          },
          {
            "label": "_owners",
            "offset": 0,
            "slot": "261",
            "type": "t_struct(AddressSet)3325_storage",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:57"
          },
          {
            "label": "exchange",
            "offset": 0,
            "slot": "263",
            "type": "t_address",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:59"
          },
          {
            "label": "_decimals",
            "offset": 20,
            "slot": "263",
            "type": "t_uint8",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:60"
          },
          {
            "label": "payoutManager",
            "offset": 0,
            "slot": "264",
            "type": "t_address",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:61"
          },
          {
            "label": "nonRebasingCreditsPerToken",
            "offset": 0,
            "slot": "265",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:63"
          },
          {
            "label": "rebaseState",
            "offset": 0,
            "slot": "266",
            "type": "t_mapping(t_address,t_enum(RebaseOptions)3755)",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:64"
          },
          {
            "label": "_nonRebaseOwners",
            "offset": 0,
            "slot": "267",
            "type": "t_struct(AddressSet)3325_storage",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:65"
          },
          {
            "label": "_status",
            "offset": 0,
            "slot": "269",
            "type": "t_uint256",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:67"
          },
          {
            "label": "paused",
            "offset": 0,
            "slot": "270",
            "type": "t_bool",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:68"
          },
          {
            "label": "roleManager",
            "offset": 1,
            "slot": "270",
            "type": "t_contract(IRoleManager)5661",
            "contract": "UsdPlusTokenMigration",
            "src": "contracts/UsdPlusTokenMigration.sol:69"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_bytes32)dyn_storage": {
            "label": "bytes32[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IRoleManager)5661": {
            "label": "contract IRoleManager",
            "numberOfBytes": "20"
          },
          "t_enum(RebaseOptions)3755": {
            "label": "enum UsdPlusTokenMigration.RebaseOptions",
            "members": [
              "OptIn",
              "OptOut"
            ],
            "numberOfBytes": "1"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_enum(RebaseOptions)3755)": {
            "label": "mapping(address => enum UsdPlusTokenMigration.RebaseOptions)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_mapping(t_address,t_uint256))": {
            "label": "mapping(address => mapping(address => uint256))",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)34_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_uint256)": {
            "label": "mapping(bytes32 => uint256)",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_struct(AddressSet)3325_storage": {
            "label": "struct EnumerableSet.AddressSet",
            "members": [
              {
                "label": "_inner",
                "type": "t_struct(Set)3010_storage",
                "offset": 0,
                "slot": "0"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(RoleData)34_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(Set)3010_storage": {
            "label": "struct EnumerableSet.Set",
            "members": [
              {
                "label": "_values",
                "type": "t_array(t_bytes32)dyn_storage",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "_indexes",
                "type": "t_mapping(t_bytes32,t_uint256)",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "f302344b8084a8adb5e540439f2d00eb8084e0fc9170dc618ecb704b6e67a920": {
      "address": "0x624511D4A1E474ed07a5e4465Ae4D75FFC683c43",
      "txHash": "0xcffd52a48d840c3d7b81948d2d59471655837d3eec38d7dcc0faf6b70b5f0c8b",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)179_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "asset",
            "offset": 0,
            "slot": "251",
            "type": "t_address",
            "contract": "AssetOracleOffChain",
            "src": "contracts/assetOracle/AssetOracleOffChain.sol:23"
          },
          {
            "label": "priceAssetUsd",
            "offset": 0,
            "slot": "252",
            "type": "t_uint256",
            "contract": "AssetOracleOffChain",
            "src": "contracts/assetOracle/AssetOracleOffChain.sol:24"
          },
          {
            "label": "roleManager",
            "offset": 0,
            "slot": "253",
            "type": "t_contract(IRoleManager)33848",
            "contract": "AssetOracleOffChain",
            "src": "contracts/assetOracle/AssetOracleOffChain.sol:25"
          },
          {
            "label": "minPriceUsd",
            "offset": 0,
            "slot": "254",
            "type": "t_uint256",
            "contract": "AssetOracleOffChain",
            "src": "contracts/assetOracle/AssetOracleOffChain.sol:26"
          },
          {
            "label": "maxPriceUsd",
            "offset": 0,
            "slot": "255",
            "type": "t_uint256",
            "contract": "AssetOracleOffChain",
            "src": "contracts/assetOracle/AssetOracleOffChain.sol:27"
          },
          {
            "label": "assetDm",
            "offset": 0,
            "slot": "256",
            "type": "t_uint256",
            "contract": "AssetOracleOffChain",
            "src": "contracts/assetOracle/AssetOracleOffChain.sol:29"
          },
          {
            "label": "duration",
            "offset": 0,
            "slot": "257",
            "type": "t_uint256",
            "contract": "AssetOracleOffChain",
            "src": "contracts/assetOracle/AssetOracleOffChain.sol:31"
          },
          {
            "label": "lastTimeUpdatedPrice",
            "offset": 0,
            "slot": "258",
            "type": "t_uint256",
            "contract": "AssetOracleOffChain",
            "src": "contracts/assetOracle/AssetOracleOffChain.sol:32"
          },
          {
            "label": "underlyingItems",
            "offset": 0,
            "slot": "259",
            "type": "t_mapping(t_address,t_struct(UnderlyingItem)31864_storage)",
            "contract": "AssetOracleOffChain",
            "src": "contracts/assetOracle/AssetOracleOffChain.sol:34"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IRoleManager)33848": {
            "label": "contract IRoleManager",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_struct(UnderlyingItem)31864_storage)": {
            "label": "mapping(address => struct AssetOracleOffChain.UnderlyingItem)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)179_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)179_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(UnderlyingItem)31864_storage": {
            "label": "struct AssetOracleOffChain.UnderlyingItem",
            "members": [
              {
                "label": "dm",
                "type": "t_uint256",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "assetAddress",
                "type": "t_address",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "oracle",
                "type": "t_address",
                "offset": 0,
                "slot": "2"
              }
            ],
            "numberOfBytes": "96"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "5fb0be29e9589d2541bbd7e587b372e6a0baf662be03d08101a330c0d201e41c": {
      "address": "0xb631C104064aeCf8511F3Cf8C6a49d0bBA1CD8a0",
      "txHash": "0xdb1bfbbab1b0974e9702358c4a06ff671c2ad391f0a2d77947e5c2d4016218d7",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)179_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:61"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:259"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:211"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:107"
          },
          {
            "label": "inchRouter",
            "offset": 0,
            "slot": "251",
            "type": "t_contract(IInchRouter)8585",
            "contract": "InchSwapper",
            "src": "contracts/InchSwapper.sol:17"
          },
          {
            "label": "blockGetter",
            "offset": 0,
            "slot": "252",
            "type": "t_address",
            "contract": "InchSwapper",
            "src": "contracts/InchSwapper.sol:18"
          },
          {
            "label": "routePathsMap",
            "offset": 0,
            "slot": "253",
            "type": "t_mapping(t_address,t_mapping(t_address,t_struct(Route)33445_storage))",
            "contract": "InchSwapper",
            "src": "contracts/InchSwapper.sol:19"
          },
          {
            "label": "roleManager",
            "offset": 0,
            "slot": "254",
            "type": "t_contract(IRoleManager)33852",
            "contract": "InchSwapper",
            "src": "contracts/InchSwapper.sol:20"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_array(t_uint256)dyn_storage": {
            "label": "uint256[]",
            "numberOfBytes": "32"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_bytes_storage": {
            "label": "bytes",
            "numberOfBytes": "32"
          },
          "t_contract(IInchRouter)8585": {
            "label": "contract IInchRouter",
            "numberOfBytes": "20"
          },
          "t_contract(IRoleManager)33852": {
            "label": "contract IRoleManager",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_mapping(t_address,t_struct(Route)33445_storage))": {
            "label": "mapping(address => mapping(address => struct IInchSwapper.Route))",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_struct(Route)33445_storage)": {
            "label": "mapping(address => struct IInchSwapper.Route)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)179_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)179_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(Route)33445_storage": {
            "label": "struct IInchSwapper.Route",
            "members": [
              {
                "label": "updateBlock",
                "type": "t_uint256",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "amount",
                "type": "t_uint256",
                "offset": 0,
                "slot": "1"
              },
              {
                "label": "flags",
                "type": "t_uint256",
                "offset": 0,
                "slot": "2"
              },
              {
                "label": "srcReceiver",
                "type": "t_address",
                "offset": 0,
                "slot": "3"
              },
              {
                "label": "data",
                "type": "t_bytes_storage",
                "offset": 0,
                "slot": "4"
              },
              {
                "label": "pools",
                "type": "t_array(t_uint256)dyn_storage",
                "offset": 0,
                "slot": "5"
              },
              {
                "label": "isUniV3",
                "type": "t_bool",
                "offset": 0,
                "slot": "6"
              },
              {
                "label": "isUsed",
                "type": "t_bool",
                "offset": 1,
                "slot": "6"
              }
            ],
            "numberOfBytes": "224"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        }
      }
    },
    "f7f9a69b2353a5576c3689bb687a93f7ffe057fcd573f2bb02b4920bd9f3a9b5": {
      "address": "0x0cCCb7d6aaFB23D055E350dF93adfbd1189CB1bd",
      "txHash": "0x55e4dadd496e198fb89db5357d6e80f08f86207ed42296741c2d09b69b195469",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:63",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:68"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:40"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)23_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:57"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:260"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:169"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:111"
          },
          {
            "label": "_creditBalances",
            "offset": 0,
            "slot": "251",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:42"
          },
          {
            "label": "_allowances",
            "offset": 0,
            "slot": "252",
            "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:44"
          },
          {
            "label": "_totalSupply",
            "offset": 0,
            "slot": "253",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:46"
          },
          {
            "label": "_name",
            "offset": 0,
            "slot": "254",
            "type": "t_string_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:48"
          },
          {
            "label": "_symbol",
            "offset": 0,
            "slot": "255",
            "type": "t_string_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:49"
          },
          {
            "label": "_rebasingCredits",
            "offset": 0,
            "slot": "256",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:51"
          },
          {
            "label": "_rebasingCreditsPerToken",
            "offset": 0,
            "slot": "257",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:52"
          },
          {
            "label": "nonRebasingSupply",
            "offset": 0,
            "slot": "258",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:54"
          },
          {
            "label": "DELETED_1",
            "offset": 0,
            "slot": "259",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:55"
          },
          {
            "label": "DELETED_2",
            "offset": 0,
            "slot": "260",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:56"
          },
          {
            "label": "_owners",
            "offset": 0,
            "slot": "261",
            "type": "t_struct(AddressSet)4290_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:58"
          },
          {
            "label": "exchange",
            "offset": 0,
            "slot": "263",
            "type": "t_address",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:60"
          },
          {
            "label": "_decimals",
            "offset": 20,
            "slot": "263",
            "type": "t_uint8",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:61"
          },
          {
            "label": "payoutManager",
            "offset": 0,
            "slot": "264",
            "type": "t_address",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:62"
          },
          {
            "label": "nonRebasingCreditsPerToken",
            "offset": 0,
            "slot": "265",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:64"
          },
          {
            "label": "rebaseState",
            "offset": 0,
            "slot": "266",
            "type": "t_mapping(t_address,t_enum(RebaseOptions)4721)",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:65"
          },
          {
            "label": "_nonRebaseOwners",
            "offset": 0,
            "slot": "267",
            "type": "t_struct(AddressSet)4290_storage",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:66"
          },
          {
            "label": "_status",
            "offset": 0,
            "slot": "269",
            "type": "t_uint256",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:68"
          },
          {
            "label": "paused",
            "offset": 0,
            "slot": "270",
            "type": "t_bool",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:69"
          },
          {
            "label": "roleManager",
            "offset": 1,
            "slot": "270",
            "type": "t_contract(IRoleManager)6588",
            "contract": "UsdPlusToken",
            "src": "contracts/UsdPlusToken.sol:70"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_bytes32)dyn_storage": {
            "label": "bytes32[]",
            "numberOfBytes": "32"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IRoleManager)6588": {
            "label": "contract IRoleManager",
            "numberOfBytes": "20"
          },
          "t_enum(RebaseOptions)4721": {
            "label": "enum UsdPlusToken.RebaseOptions",
            "members": [
              "OptIn",
              "OptOut"
            ],
            "numberOfBytes": "1"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_enum(RebaseOptions)4721)": {
            "label": "mapping(address => enum UsdPlusToken.RebaseOptions)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_mapping(t_address,t_uint256))": {
            "label": "mapping(address => mapping(address => uint256))",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)23_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_uint256)": {
            "label": "mapping(bytes32 => uint256)",
            "numberOfBytes": "32"
          },
          "t_string_storage": {
            "label": "string",
            "numberOfBytes": "32"
          },
          "t_struct(AddressSet)4290_storage": {
            "label": "struct EnumerableSet.AddressSet",
            "members": [
              {
                "label": "_inner",
                "type": "t_struct(Set)3975_storage",
                "offset": 0,
                "slot": "0"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(RoleData)23_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_struct(Set)3975_storage": {
            "label": "struct EnumerableSet.Set",
            "members": [
              {
                "label": "_values",
                "type": "t_array(t_bytes32)dyn_storage",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "_indexes",
                "type": "t_mapping(t_bytes32,t_uint256)",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        },
        "namespaces": {}
      }
    },
    "4d36c16e3ed04294f72377fe82002b45bc6af0da82671482b153afb7376d4853": {
      "address": "0xa01a1807bAa787981c3536711bDB4a05E5f3f04f",
      "txHash": "0x410d252eeec440f5f1edd9a4aa48895541b16392c08bedc8f5e19825980e7817",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:63",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:68"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:40"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)23_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:57"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:260"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:169"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:111"
          },
          {
            "label": "_paused",
            "offset": 0,
            "slot": "251",
            "type": "t_bool",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)49_storage",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116"
          },
          {
            "label": "usdPlus",
            "offset": 0,
            "slot": "301",
            "type": "t_contract(IUsdPlusToken)5986",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:33"
          },
          {
            "label": "usdc",
            "offset": 0,
            "slot": "302",
            "type": "t_contract(IERC20)3035",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:34"
          },
          {
            "label": "portfolioManager",
            "offset": 0,
            "slot": "303",
            "type": "t_contract(IPortfolioManager)5769",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:36"
          },
          {
            "label": "mark2market",
            "offset": 0,
            "slot": "304",
            "type": "t_contract(IMark2Market)5683",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:37"
          },
          {
            "label": "buyFee",
            "offset": 0,
            "slot": "305",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:39"
          },
          {
            "label": "buyFeeDenominator",
            "offset": 0,
            "slot": "306",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:40"
          },
          {
            "label": "redeemFee",
            "offset": 0,
            "slot": "307",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:42"
          },
          {
            "label": "redeemFeeDenominator",
            "offset": 0,
            "slot": "308",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:43"
          },
          {
            "label": "nextPayoutTime",
            "offset": 0,
            "slot": "309",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:46"
          },
          {
            "label": "payoutPeriod",
            "offset": 0,
            "slot": "310",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:49"
          },
          {
            "label": "payoutTimeRange",
            "offset": 0,
            "slot": "311",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:56"
          },
          {
            "label": "payoutManager",
            "offset": 0,
            "slot": "312",
            "type": "t_contract(IPayoutManager)5704",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:58"
          },
          {
            "label": "lastBlockNumber",
            "offset": 0,
            "slot": "313",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:61"
          },
          {
            "label": "abroadMin",
            "offset": 0,
            "slot": "314",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:63"
          },
          {
            "label": "abroadMax",
            "offset": 0,
            "slot": "315",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:64"
          },
          {
            "label": "insurance",
            "offset": 0,
            "slot": "316",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:66"
          },
          {
            "label": "oracleLoss",
            "offset": 0,
            "slot": "317",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:68"
          },
          {
            "label": "oracleLossDenominator",
            "offset": 0,
            "slot": "318",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:69"
          },
          {
            "label": "compensateLoss",
            "offset": 0,
            "slot": "319",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:71"
          },
          {
            "label": "compensateLossDenominator",
            "offset": 0,
            "slot": "320",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:72"
          },
          {
            "label": "profitRecipient",
            "offset": 0,
            "slot": "321",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:74"
          },
          {
            "label": "blockGetter",
            "offset": 0,
            "slot": "322",
            "type": "t_address",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:76"
          },
          {
            "label": "roleManager",
            "offset": 0,
            "slot": "323",
            "type": "t_contract(IRoleManager)5781",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:77"
          },
          {
            "label": "_reentrancyGuardStatus",
            "offset": 0,
            "slot": "324",
            "type": "t_uint256",
            "contract": "Exchange",
            "src": "contracts/Exchange.sol:79"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IERC20)3035": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IMark2Market)5683": {
            "label": "contract IMark2Market",
            "numberOfBytes": "20"
          },
          "t_contract(IPayoutManager)5704": {
            "label": "contract IPayoutManager",
            "numberOfBytes": "20"
          },
          "t_contract(IPortfolioManager)5769": {
            "label": "contract IPortfolioManager",
            "numberOfBytes": "20"
          },
          "t_contract(IRoleManager)5781": {
            "label": "contract IRoleManager",
            "numberOfBytes": "20"
          },
          "t_contract(IUsdPlusToken)5986": {
            "label": "contract IUsdPlusToken",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)23_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)23_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        },
        "namespaces": {}
      }
    },
    "f4dcd1e8ab10c2b6e01ff72dc257a16c6c73eaf7d573bbf51272ee0e2a79c25c": {
      "address": "0xc017885fed58F60377e01eB2A07c198F80F06232",
      "txHash": "0xea3c9e486bf1cd44e1081769baae66d0bef2eb994e3a6d4e7bec091d83437eb7",
      "layout": {
        "solcVersion": "0.8.17",
        "storage": [
          {
            "label": "_initialized",
            "offset": 0,
            "slot": "0",
            "type": "t_uint8",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:63",
            "retypedFrom": "bool"
          },
          {
            "label": "_initializing",
            "offset": 1,
            "slot": "0",
            "type": "t_bool",
            "contract": "Initializable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:68"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "1",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ContextUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:40"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "51",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC165Upgradeable",
            "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
          },
          {
            "label": "_roles",
            "offset": 0,
            "slot": "101",
            "type": "t_mapping(t_bytes32,t_struct(RoleData)23_storage)",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:57"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "102",
            "type": "t_array(t_uint256)49_storage",
            "contract": "AccessControlUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:260"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "151",
            "type": "t_array(t_uint256)50_storage",
            "contract": "ERC1967UpgradeUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol:169"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "201",
            "type": "t_array(t_uint256)50_storage",
            "contract": "UUPSUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.sol:111"
          },
          {
            "label": "_paused",
            "offset": 0,
            "slot": "251",
            "type": "t_bool",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29"
          },
          {
            "label": "__gap",
            "offset": 0,
            "slot": "252",
            "type": "t_array(t_uint256)49_storage",
            "contract": "PausableUpgradeable",
            "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116"
          },
          {
            "label": "asset",
            "offset": 0,
            "slot": "301",
            "type": "t_contract(IERC20)3035",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:30"
          },
          {
            "label": "rebase",
            "offset": 0,
            "slot": "302",
            "type": "t_contract(IRebaseToken)5334",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:31"
          },
          {
            "label": "odosRouter",
            "offset": 0,
            "slot": "303",
            "type": "t_address",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:32"
          },
          {
            "label": "mintFee",
            "offset": 0,
            "slot": "304",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:34"
          },
          {
            "label": "redeemFee",
            "offset": 0,
            "slot": "305",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:35"
          },
          {
            "label": "lastBlockNumber",
            "offset": 0,
            "slot": "306",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:37"
          },
          {
            "label": "swapSlippage",
            "offset": 0,
            "slot": "307",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:38"
          },
          {
            "label": "nextPayoutTime",
            "offset": 0,
            "slot": "308",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:40"
          },
          {
            "label": "payoutPeriod",
            "offset": 0,
            "slot": "309",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:41"
          },
          {
            "label": "payoutTimeRange",
            "offset": 0,
            "slot": "310",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:42"
          },
          {
            "label": "withdrawRequests",
            "offset": 0,
            "slot": "311",
            "type": "t_mapping(t_address,t_uint256)",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:44"
          },
          {
            "label": "requestWaitPeriod",
            "offset": 0,
            "slot": "312",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:45"
          },
          {
            "label": "withdrawPeriod",
            "offset": 0,
            "slot": "313",
            "type": "t_uint256",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:46"
          },
          {
            "label": "assetOracle",
            "offset": 0,
            "slot": "314",
            "type": "t_contract(IAssetOracle)5014",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:48"
          },
          {
            "label": "roleManager",
            "offset": 0,
            "slot": "315",
            "type": "t_contract(IRoleManager)5346",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:49"
          },
          {
            "label": "blockGetter",
            "offset": 0,
            "slot": "316",
            "type": "t_address",
            "contract": "InsuranceExchange",
            "src": "contracts/InsuranceExchange.sol:50"
          }
        ],
        "types": {
          "t_address": {
            "label": "address",
            "numberOfBytes": "20"
          },
          "t_array(t_uint256)49_storage": {
            "label": "uint256[49]",
            "numberOfBytes": "1568"
          },
          "t_array(t_uint256)50_storage": {
            "label": "uint256[50]",
            "numberOfBytes": "1600"
          },
          "t_bool": {
            "label": "bool",
            "numberOfBytes": "1"
          },
          "t_bytes32": {
            "label": "bytes32",
            "numberOfBytes": "32"
          },
          "t_contract(IAssetOracle)5014": {
            "label": "contract IAssetOracle",
            "numberOfBytes": "20"
          },
          "t_contract(IERC20)3035": {
            "label": "contract IERC20",
            "numberOfBytes": "20"
          },
          "t_contract(IRebaseToken)5334": {
            "label": "contract IRebaseToken",
            "numberOfBytes": "20"
          },
          "t_contract(IRoleManager)5346": {
            "label": "contract IRoleManager",
            "numberOfBytes": "20"
          },
          "t_mapping(t_address,t_bool)": {
            "label": "mapping(address => bool)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_address,t_uint256)": {
            "label": "mapping(address => uint256)",
            "numberOfBytes": "32"
          },
          "t_mapping(t_bytes32,t_struct(RoleData)23_storage)": {
            "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
            "numberOfBytes": "32"
          },
          "t_struct(RoleData)23_storage": {
            "label": "struct AccessControlUpgradeable.RoleData",
            "members": [
              {
                "label": "members",
                "type": "t_mapping(t_address,t_bool)",
                "offset": 0,
                "slot": "0"
              },
              {
                "label": "adminRole",
                "type": "t_bytes32",
                "offset": 0,
                "slot": "1"
              }
            ],
            "numberOfBytes": "64"
          },
          "t_uint256": {
            "label": "uint256",
            "numberOfBytes": "32"
          },
          "t_uint8": {
            "label": "uint8",
            "numberOfBytes": "1"
          }
        },
        "namespaces": {}
      }
    }
  }
}
