{
  "version": "3.4",
  "log": [
    {
      "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:OwnableUpgradeable": {
        "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:21",
        "inherit": [
          "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:ContextUpgradeable",
          "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:Initializable"
        ],
        "libraries": [],
        "methods": [
          "owner()",
          "renounceOwnership()",
          "transferOwnership(address)"
        ],
        "linkReferences": [],
        "errors": [],
        "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": "_owner",
              "offset": 0,
              "slot": "51",
              "type": "t_address",
              "contract": "OwnableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22"
            },
            {
              "label": "__gap",
              "offset": 0,
              "slot": "52",
              "type": "t_array(t_uint256)49_storage",
              "contract": "OwnableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94"
            }
          ],
          "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_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint8": {
              "label": "uint8",
              "numberOfBytes": "1"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:Initializable": {
        "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:57",
        "inherit": [],
        "libraries": [
          "@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol:AddressUpgradeable"
        ],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "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"
            }
          ],
          "types": {
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_uint8": {
              "label": "uint8",
              "numberOfBytes": "1"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:ERC721Upgradeable": {
        "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:20",
        "version": {
          "withMetadata": "95f50c4e4f11185ba68b4624c60fec67a9e912650814b1556fac1a9823c0cebd",
          "withoutMetadata": "3ed05ee09d077f3d09547660c35ae0fd270ba28be84b018fb80544e440870479",
          "linkedWithoutMetadata": "3ed05ee09d077f3d09547660c35ae0fd270ba28be84b018fb80544e440870479"
        },
        "inherit": [
          "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.sol:IERC721MetadataUpgradeable",
          "@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.sol:IERC721Upgradeable",
          "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:ERC165Upgradeable",
          "@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol:IERC165Upgradeable",
          "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:ContextUpgradeable",
          "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:Initializable"
        ],
        "libraries": [
          "@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol:AddressUpgradeable",
          "@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol:StringsUpgradeable"
        ],
        "methods": [
          "supportsInterface(bytes4)",
          "balanceOf(address)",
          "ownerOf(uint256)",
          "name()",
          "symbol()",
          "tokenURI(uint256)",
          "approve(address,uint256)",
          "getApproved(uint256)",
          "setApprovalForAll(address,bool)",
          "isApprovedForAll(address,address)",
          "transferFrom(address,address,uint256)",
          "safeTransferFrom(address,address,uint256)",
          "safeTransferFrom(address,address,uint256,bytes)"
        ],
        "linkReferences": [],
        "errors": [],
        "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": "_name",
              "offset": 0,
              "slot": "101",
              "type": "t_string_storage",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:25"
            },
            {
              "label": "_symbol",
              "offset": 0,
              "slot": "102",
              "type": "t_string_storage",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:28"
            },
            {
              "label": "_owners",
              "offset": 0,
              "slot": "103",
              "type": "t_mapping(t_uint256,t_address)",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:31"
            },
            {
              "label": "_balances",
              "offset": 0,
              "slot": "104",
              "type": "t_mapping(t_address,t_uint256)",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:34"
            },
            {
              "label": "_tokenApprovals",
              "offset": 0,
              "slot": "105",
              "type": "t_mapping(t_uint256,t_address)",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:37"
            },
            {
              "label": "_operatorApprovals",
              "offset": 0,
              "slot": "106",
              "type": "t_mapping(t_address,t_mapping(t_address,t_bool))",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:40"
            },
            {
              "label": "__gap",
              "offset": 0,
              "slot": "107",
              "type": "t_array(t_uint256)44_storage",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:514"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_array(t_uint256)44_storage": {
              "label": "uint256[44]",
              "numberOfBytes": "1408"
            },
            "t_array(t_uint256)50_storage": {
              "label": "uint256[50]",
              "numberOfBytes": "1600"
            },
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_mapping(t_address,t_bool)": {
              "label": "mapping(address => bool)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_mapping(t_address,t_bool))": {
              "label": "mapping(address => mapping(address => bool))",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_uint256)": {
              "label": "mapping(address => uint256)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_address)": {
              "label": "mapping(uint256 => address)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint8": {
              "label": "uint8",
              "numberOfBytes": "1"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.sol:IERC721ReceiverUpgradeable": {
        "src": "@openzeppelin/contracts-upgradeable/token/ERC721/IERC721ReceiverUpgradeable.sol:11",
        "inherit": [],
        "libraries": [],
        "methods": [
          "onERC721Received(address,address,uint256,bytes)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.sol:IERC721Upgradeable": {
        "src": "@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.sol:11",
        "inherit": [
          "@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol:IERC165Upgradeable"
        ],
        "libraries": [],
        "methods": [
          "balanceOf(address)",
          "ownerOf(uint256)",
          "safeTransferFrom(address,address,uint256,bytes)",
          "safeTransferFrom(address,address,uint256)",
          "transferFrom(address,address,uint256)",
          "approve(address,uint256)",
          "setApprovalForAll(address,bool)",
          "getApproved(uint256)",
          "isApprovedForAll(address,address)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721EnumerableUpgradeable.sol:ERC721EnumerableUpgradeable": {
        "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721EnumerableUpgradeable.sol:15",
        "inherit": [
          "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721EnumerableUpgradeable.sol:IERC721EnumerableUpgradeable",
          "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:ERC721Upgradeable",
          "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.sol:IERC721MetadataUpgradeable",
          "@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.sol:IERC721Upgradeable",
          "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:ERC165Upgradeable",
          "@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol:IERC165Upgradeable",
          "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:ContextUpgradeable",
          "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:Initializable"
        ],
        "libraries": [],
        "methods": [
          "supportsInterface(bytes4)",
          "tokenOfOwnerByIndex(address,uint256)",
          "totalSupply()",
          "tokenByIndex(uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "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": "_name",
              "offset": 0,
              "slot": "101",
              "type": "t_string_storage",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:25"
            },
            {
              "label": "_symbol",
              "offset": 0,
              "slot": "102",
              "type": "t_string_storage",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:28"
            },
            {
              "label": "_owners",
              "offset": 0,
              "slot": "103",
              "type": "t_mapping(t_uint256,t_address)",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:31"
            },
            {
              "label": "_balances",
              "offset": 0,
              "slot": "104",
              "type": "t_mapping(t_address,t_uint256)",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:34"
            },
            {
              "label": "_tokenApprovals",
              "offset": 0,
              "slot": "105",
              "type": "t_mapping(t_uint256,t_address)",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:37"
            },
            {
              "label": "_operatorApprovals",
              "offset": 0,
              "slot": "106",
              "type": "t_mapping(t_address,t_mapping(t_address,t_bool))",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:40"
            },
            {
              "label": "__gap",
              "offset": 0,
              "slot": "107",
              "type": "t_array(t_uint256)44_storage",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:514"
            },
            {
              "label": "_ownedTokens",
              "offset": 0,
              "slot": "151",
              "type": "t_mapping(t_address,t_mapping(t_uint256,t_uint256))",
              "contract": "ERC721EnumerableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721EnumerableUpgradeable.sol:22"
            },
            {
              "label": "_ownedTokensIndex",
              "offset": 0,
              "slot": "152",
              "type": "t_mapping(t_uint256,t_uint256)",
              "contract": "ERC721EnumerableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721EnumerableUpgradeable.sol:25"
            },
            {
              "label": "_allTokens",
              "offset": 0,
              "slot": "153",
              "type": "t_array(t_uint256)dyn_storage",
              "contract": "ERC721EnumerableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721EnumerableUpgradeable.sol:28"
            },
            {
              "label": "_allTokensIndex",
              "offset": 0,
              "slot": "154",
              "type": "t_mapping(t_uint256,t_uint256)",
              "contract": "ERC721EnumerableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721EnumerableUpgradeable.sol:31"
            },
            {
              "label": "__gap",
              "offset": 0,
              "slot": "155",
              "type": "t_array(t_uint256)46_storage",
              "contract": "ERC721EnumerableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721EnumerableUpgradeable.sol:171"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_array(t_uint256)44_storage": {
              "label": "uint256[44]",
              "numberOfBytes": "1408"
            },
            "t_array(t_uint256)46_storage": {
              "label": "uint256[46]",
              "numberOfBytes": "1472"
            },
            "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_mapping(t_address,t_bool)": {
              "label": "mapping(address => bool)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_mapping(t_address,t_bool))": {
              "label": "mapping(address => mapping(address => bool))",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_mapping(t_uint256,t_uint256))": {
              "label": "mapping(address => mapping(uint256 => uint256))",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_uint256)": {
              "label": "mapping(address => uint256)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_address)": {
              "label": "mapping(uint256 => address)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_uint256)": {
              "label": "mapping(uint256 => uint256)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint8": {
              "label": "uint8",
              "numberOfBytes": "1"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721URIStorageUpgradeable.sol:ERC721URIStorageUpgradeable": {
        "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721URIStorageUpgradeable.sol:12",
        "inherit": [
          "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:ERC721Upgradeable",
          "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.sol:IERC721MetadataUpgradeable",
          "@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.sol:IERC721Upgradeable",
          "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:ERC165Upgradeable",
          "@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol:IERC165Upgradeable",
          "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:ContextUpgradeable",
          "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:Initializable"
        ],
        "libraries": [
          "@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol:StringsUpgradeable"
        ],
        "methods": [
          "tokenURI(uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "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": "_name",
              "offset": 0,
              "slot": "101",
              "type": "t_string_storage",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:25"
            },
            {
              "label": "_symbol",
              "offset": 0,
              "slot": "102",
              "type": "t_string_storage",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:28"
            },
            {
              "label": "_owners",
              "offset": 0,
              "slot": "103",
              "type": "t_mapping(t_uint256,t_address)",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:31"
            },
            {
              "label": "_balances",
              "offset": 0,
              "slot": "104",
              "type": "t_mapping(t_address,t_uint256)",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:34"
            },
            {
              "label": "_tokenApprovals",
              "offset": 0,
              "slot": "105",
              "type": "t_mapping(t_uint256,t_address)",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:37"
            },
            {
              "label": "_operatorApprovals",
              "offset": 0,
              "slot": "106",
              "type": "t_mapping(t_address,t_mapping(t_address,t_bool))",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:40"
            },
            {
              "label": "__gap",
              "offset": 0,
              "slot": "107",
              "type": "t_array(t_uint256)44_storage",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:514"
            },
            {
              "label": "_tokenURIs",
              "offset": 0,
              "slot": "151",
              "type": "t_mapping(t_uint256,t_string_storage)",
              "contract": "ERC721URIStorageUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721URIStorageUpgradeable.sol:21"
            },
            {
              "label": "__gap",
              "offset": 0,
              "slot": "152",
              "type": "t_array(t_uint256)49_storage",
              "contract": "ERC721URIStorageUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721URIStorageUpgradeable.sol:74"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_array(t_uint256)44_storage": {
              "label": "uint256[44]",
              "numberOfBytes": "1408"
            },
            "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_mapping(t_address,t_bool)": {
              "label": "mapping(address => bool)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_mapping(t_address,t_bool))": {
              "label": "mapping(address => mapping(address => bool))",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_uint256)": {
              "label": "mapping(address => uint256)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_address)": {
              "label": "mapping(uint256 => address)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_string_storage)": {
              "label": "mapping(uint256 => string)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint8": {
              "label": "uint8",
              "numberOfBytes": "1"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721EnumerableUpgradeable.sol:IERC721EnumerableUpgradeable": {
        "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721EnumerableUpgradeable.sol:12",
        "inherit": [
          "@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.sol:IERC721Upgradeable",
          "@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol:IERC165Upgradeable"
        ],
        "libraries": [],
        "methods": [
          "totalSupply()",
          "tokenOfOwnerByIndex(address,uint256)",
          "tokenByIndex(uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.sol:IERC721MetadataUpgradeable": {
        "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.sol:12",
        "inherit": [
          "@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.sol:IERC721Upgradeable",
          "@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol:IERC165Upgradeable"
        ],
        "libraries": [],
        "methods": [
          "name()",
          "symbol()",
          "tokenURI(uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol:AddressUpgradeable": {
        "src": "@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol:9",
        "version": {
          "withMetadata": "7ff05020af4dc4f4409bb28f7ce7509a00ae8938979e421dadfd4221983aaebf",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:ContextUpgradeable": {
        "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:17",
        "inherit": [
          "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:Initializable"
        ],
        "libraries": [],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "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"
            }
          ],
          "types": {
            "t_array(t_uint256)50_storage": {
              "label": "uint256[50]",
              "numberOfBytes": "1600"
            },
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint8": {
              "label": "uint8",
              "numberOfBytes": "1"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol:StringsUpgradeable": {
        "src": "@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol:11",
        "version": {
          "withMetadata": "570049fdb3e94ca5c3508c99b9636bddefbfb0ad88dd5387a76cfc8130847752",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [
          "@openzeppelin/contracts-upgradeable/utils/math/MathUpgradeable.sol:MathUpgradeable"
        ],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:ERC165Upgradeable": {
        "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:23",
        "inherit": [
          "@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol:IERC165Upgradeable",
          "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:Initializable"
        ],
        "libraries": [],
        "methods": [
          "supportsInterface(bytes4)"
        ],
        "linkReferences": [],
        "errors": [],
        "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": "ERC165Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41"
            }
          ],
          "types": {
            "t_array(t_uint256)50_storage": {
              "label": "uint256[50]",
              "numberOfBytes": "1600"
            },
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint8": {
              "label": "uint8",
              "numberOfBytes": "1"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol:IERC165Upgradeable": {
        "src": "@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol:15",
        "inherit": [],
        "libraries": [],
        "methods": [
          "supportsInterface(bytes4)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts-upgradeable/utils/math/MathUpgradeable.sol:MathUpgradeable": {
        "src": "@openzeppelin/contracts-upgradeable/utils/math/MathUpgradeable.sol:9",
        "version": {
          "withMetadata": "4c3587495463f2927859cafae0f0c5c53e8d2594b4f74d5460e1a8ff5e93fc55",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts-upgradeable/utils/structs/EnumerableMapUpgradeable.sol:EnumerableMapUpgradeable": {
        "src": "@openzeppelin/contracts-upgradeable/utils/structs/EnumerableMapUpgradeable.sol:48",
        "version": {
          "withMetadata": "fa3afcd0f05511b89a8f183c9eed8731224fd6e43623e8afc40b25b78907c77d",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [
          "@openzeppelin/contracts-upgradeable/utils/structs/EnumerableSetUpgradeable.sol:EnumerableSetUpgradeable"
        ],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts-upgradeable/utils/structs/EnumerableSetUpgradeable.sol:EnumerableSetUpgradeable": {
        "src": "@openzeppelin/contracts-upgradeable/utils/structs/EnumerableSetUpgradeable.sol:41",
        "version": {
          "withMetadata": "c8eaa7232139dbd5cadd5580f333ee25addc173f69bf3eacf9c304ecd8e0d66f",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/access/AccessControl.sol:AccessControl": {
        "src": "@openzeppelin/contracts/access/AccessControl.sol:49",
        "inherit": [
          "@openzeppelin/contracts/utils/introspection/ERC165.sol:ERC165",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165",
          "@openzeppelin/contracts/access/IAccessControl.sol:IAccessControl",
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [
          "@openzeppelin/contracts/utils/Strings.sol:Strings"
        ],
        "methods": [
          "supportsInterface(bytes4)",
          "hasRole(bytes32,address)",
          "getRoleAdmin(bytes32)",
          "grantRole(bytes32,address)",
          "revokeRole(bytes32,address)",
          "renounceRole(bytes32,address)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [
            {
              "label": "_roles",
              "offset": 0,
              "slot": "0",
              "type": "t_mapping(t_bytes32,t_struct(RoleData)5158_storage)",
              "contract": "AccessControl",
              "src": "@openzeppelin/contracts/access/AccessControl.sol:55"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_bytes32": {
              "label": "bytes32",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_bool)": {
              "label": "mapping(address => bool)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_bytes32,t_struct(RoleData)5158_storage)": {
              "label": "mapping(bytes32 => struct AccessControl.RoleData)",
              "numberOfBytes": "32"
            },
            "t_struct(RoleData)5158_storage": {
              "label": "struct AccessControl.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"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/access/IAccessControl.sol:IAccessControl": {
        "src": "@openzeppelin/contracts/access/IAccessControl.sol:9",
        "inherit": [],
        "libraries": [],
        "methods": [
          "hasRole(bytes32,address)",
          "getRoleAdmin(bytes32)",
          "grantRole(bytes32,address)",
          "revokeRole(bytes32,address)",
          "renounceRole(bytes32,address)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/access/Ownable.sol:Ownable": {
        "src": "@openzeppelin/contracts/access/Ownable.sol:20",
        "inherit": [
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [],
        "methods": [
          "owner()",
          "renounceOwnership()",
          "transferOwnership(address)"
        ],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "Ownable",
            "src": "@openzeppelin/contracts/access/Ownable.sol:28"
          }
        ],
        "layout": {
          "storage": [
            {
              "label": "_owner",
              "offset": 0,
              "slot": "0",
              "type": "t_address",
              "contract": "Ownable",
              "src": "@openzeppelin/contracts/access/Ownable.sol:21"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/governance/Governor.sol:Governor": {
        "src": "@openzeppelin/contracts/governance/Governor.sol:29",
        "inherit": [
          "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol:IERC1155Receiver",
          "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol:IERC721Receiver",
          "@openzeppelin/contracts/governance/IGovernor.sol:IGovernor",
          "@openzeppelin/contracts/utils/cryptography/EIP712.sol:EIP712",
          "@openzeppelin/contracts/utils/introspection/ERC165.sol:ERC165",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165",
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [
          "@openzeppelin/contracts/utils/structs/DoubleEndedQueue.sol:DoubleEndedQueue",
          "@openzeppelin/contracts/utils/math/SafeCast.sol:SafeCast",
          "@openzeppelin/contracts/utils/Timers.sol:Timers",
          "@openzeppelin/contracts/utils/Address.sol:Address",
          "@openzeppelin/contracts/utils/cryptography/ECDSA.sol:ECDSA"
        ],
        "methods": [
          "()",
          "supportsInterface(bytes4)",
          "name()",
          "version()",
          "hashProposal(address[],uint256[],bytes[],bytes32)",
          "state(uint256)",
          "proposalSnapshot(uint256)",
          "proposalDeadline(uint256)",
          "proposalThreshold()",
          "propose(address[],uint256[],bytes[],string)",
          "execute(address[],uint256[],bytes[],bytes32)",
          "getVotes(address,uint256)",
          "getVotesWithParams(address,uint256,bytes)",
          "castVote(uint256,uint8)",
          "castVoteWithReason(uint256,uint8,string)",
          "castVoteWithReasonAndParams(uint256,uint8,string,bytes)",
          "castVoteBySig(uint256,uint8,uint8,bytes32,bytes32)",
          "castVoteWithReasonAndParamsBySig(uint256,uint8,string,bytes,uint8,bytes32,bytes32)",
          "relay(address,uint256,bytes)",
          "onERC721Received(address,address,uint256,bytes)",
          "onERC1155Received(address,address,uint256,uint256,bytes)",
          "onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)"
        ],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "Governor",
            "src": "@openzeppelin/contracts/governance/Governor.sol:78"
          }
        ],
        "layout": {
          "storage": [
            {
              "label": "_name",
              "offset": 0,
              "slot": "0",
              "type": "t_string_storage",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:45"
            },
            {
              "label": "_proposals",
              "offset": 0,
              "slot": "1",
              "type": "t_mapping(t_uint256,t_struct(ProposalCore)5698_storage)",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:47"
            },
            {
              "label": "_governanceCall",
              "offset": 0,
              "slot": "2",
              "type": "t_struct(Bytes32Deque)17763_storage",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:53"
            }
          ],
          "types": {
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_bytes32": {
              "label": "bytes32",
              "numberOfBytes": "32"
            },
            "t_int128": {
              "label": "int128",
              "numberOfBytes": "16"
            },
            "t_mapping(t_int128,t_bytes32)": {
              "label": "mapping(int128 => bytes32)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_struct(ProposalCore)5698_storage)": {
              "label": "mapping(uint256 => struct Governor.ProposalCore)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_struct(BlockNumber)14684_storage": {
              "label": "struct Timers.BlockNumber",
              "members": [
                {
                  "label": "_deadline",
                  "type": "t_uint64",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "32"
            },
            "t_struct(Bytes32Deque)17763_storage": {
              "label": "struct DoubleEndedQueue.Bytes32Deque",
              "members": [
                {
                  "label": "_begin",
                  "type": "t_int128",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "_end",
                  "type": "t_int128",
                  "offset": 16,
                  "slot": "0"
                },
                {
                  "label": "_data",
                  "type": "t_mapping(t_int128,t_bytes32)",
                  "offset": 0,
                  "slot": "1"
                }
              ],
              "numberOfBytes": "64"
            },
            "t_struct(ProposalCore)5698_storage": {
              "label": "struct Governor.ProposalCore",
              "members": [
                {
                  "label": "voteStart",
                  "type": "t_struct(BlockNumber)14684_storage",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "voteEnd",
                  "type": "t_struct(BlockNumber)14684_storage",
                  "offset": 0,
                  "slot": "1"
                },
                {
                  "label": "executed",
                  "type": "t_bool",
                  "offset": 0,
                  "slot": "2"
                },
                {
                  "label": "canceled",
                  "type": "t_bool",
                  "offset": 1,
                  "slot": "2"
                }
              ],
              "numberOfBytes": "96"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint64": {
              "label": "uint64",
              "numberOfBytes": "8"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/governance/IGovernor.sol:IGovernor": {
        "src": "@openzeppelin/contracts/governance/IGovernor.sol:13",
        "inherit": [
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165"
        ],
        "libraries": [],
        "methods": [
          "name()",
          "version()",
          "COUNTING_MODE()",
          "hashProposal(address[],uint256[],bytes[],bytes32)",
          "state(uint256)",
          "proposalSnapshot(uint256)",
          "proposalDeadline(uint256)",
          "votingDelay()",
          "votingPeriod()",
          "quorum(uint256)",
          "getVotes(address,uint256)",
          "getVotesWithParams(address,uint256,bytes)",
          "hasVoted(uint256,address)",
          "propose(address[],uint256[],bytes[],string)",
          "execute(address[],uint256[],bytes[],bytes32)",
          "castVote(uint256,uint8)",
          "castVoteWithReason(uint256,uint8,string)",
          "castVoteWithReasonAndParams(uint256,uint8,string,bytes)",
          "castVoteBySig(uint256,uint8,uint8,bytes32,bytes32)",
          "castVoteWithReasonAndParamsBySig(uint256,uint8,string,bytes,uint8,bytes32,bytes32)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/governance/TimelockController.sol:TimelockController": {
        "src": "@openzeppelin/contracts/governance/TimelockController.sol:26",
        "version": {
          "withMetadata": "36ad78c5a75d864e7c12c3be408d3d69de16785c423f32594a99ab6f9f31c436",
          "withoutMetadata": "36ad78c5a75d864e7c12c3be408d3d69de16785c423f32594a99ab6f9f31c436",
          "linkedWithoutMetadata": "36ad78c5a75d864e7c12c3be408d3d69de16785c423f32594a99ab6f9f31c436"
        },
        "inherit": [
          "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol:IERC1155Receiver",
          "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol:IERC721Receiver",
          "@openzeppelin/contracts/access/AccessControl.sol:AccessControl",
          "@openzeppelin/contracts/utils/introspection/ERC165.sol:ERC165",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165",
          "@openzeppelin/contracts/access/IAccessControl.sol:IAccessControl",
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [],
        "methods": [
          "(uint256,address[],address[],address)",
          "()",
          "supportsInterface(bytes4)",
          "isOperation(bytes32)",
          "isOperationPending(bytes32)",
          "isOperationReady(bytes32)",
          "isOperationDone(bytes32)",
          "getTimestamp(bytes32)",
          "getMinDelay()",
          "hashOperation(address,uint256,bytes,bytes32,bytes32)",
          "hashOperationBatch(address[],uint256[],bytes[],bytes32,bytes32)",
          "schedule(address,uint256,bytes,bytes32,bytes32,uint256)",
          "scheduleBatch(address[],uint256[],bytes[],bytes32,bytes32,uint256)",
          "cancel(bytes32)",
          "execute(address,uint256,bytes,bytes32,bytes32)",
          "executeBatch(address[],uint256[],bytes[],bytes32,bytes32)",
          "updateDelay(uint256)",
          "onERC721Received(address,address,uint256,bytes)",
          "onERC1155Received(address,address,uint256,uint256,bytes)",
          "onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)"
        ],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "TimelockController",
            "src": "@openzeppelin/contracts/governance/TimelockController.sol:77"
          }
        ],
        "layout": {
          "storage": [
            {
              "label": "_roles",
              "offset": 0,
              "slot": "0",
              "type": "t_mapping(t_bytes32,t_struct(RoleData)5158_storage)",
              "contract": "AccessControl",
              "src": "@openzeppelin/contracts/access/AccessControl.sol:55"
            },
            {
              "label": "_timestamps",
              "offset": 0,
              "slot": "1",
              "type": "t_mapping(t_bytes32,t_uint256)",
              "contract": "TimelockController",
              "src": "@openzeppelin/contracts/governance/TimelockController.sol:33"
            },
            {
              "label": "_minDelay",
              "offset": 0,
              "slot": "2",
              "type": "t_uint256",
              "contract": "TimelockController",
              "src": "@openzeppelin/contracts/governance/TimelockController.sol:34"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_bytes32": {
              "label": "bytes32",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_bool)": {
              "label": "mapping(address => bool)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_bytes32,t_struct(RoleData)5158_storage)": {
              "label": "mapping(bytes32 => struct AccessControl.RoleData)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_bytes32,t_uint256)": {
              "label": "mapping(bytes32 => uint256)",
              "numberOfBytes": "32"
            },
            "t_struct(RoleData)5158_storage": {
              "label": "struct AccessControl.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"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/governance/extensions/GovernorCountingSimple.sol:GovernorCountingSimple": {
        "src": "@openzeppelin/contracts/governance/extensions/GovernorCountingSimple.sol:13",
        "inherit": [
          "@openzeppelin/contracts/governance/Governor.sol:Governor",
          "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol:IERC1155Receiver",
          "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol:IERC721Receiver",
          "@openzeppelin/contracts/governance/IGovernor.sol:IGovernor",
          "@openzeppelin/contracts/utils/cryptography/EIP712.sol:EIP712",
          "@openzeppelin/contracts/utils/introspection/ERC165.sol:ERC165",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165",
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [],
        "methods": [
          "COUNTING_MODE()",
          "hasVoted(uint256,address)",
          "proposalVotes(uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [
            {
              "label": "_name",
              "offset": 0,
              "slot": "0",
              "type": "t_string_storage",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:45"
            },
            {
              "label": "_proposals",
              "offset": 0,
              "slot": "1",
              "type": "t_mapping(t_uint256,t_struct(ProposalCore)5698_storage)",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:47"
            },
            {
              "label": "_governanceCall",
              "offset": 0,
              "slot": "2",
              "type": "t_struct(Bytes32Deque)17763_storage",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:53"
            },
            {
              "label": "_proposalVotes",
              "offset": 0,
              "slot": "4",
              "type": "t_mapping(t_uint256,t_struct(ProposalVote)8180_storage)",
              "contract": "GovernorCountingSimple",
              "src": "@openzeppelin/contracts/governance/extensions/GovernorCountingSimple.sol:30"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_bytes32": {
              "label": "bytes32",
              "numberOfBytes": "32"
            },
            "t_int128": {
              "label": "int128",
              "numberOfBytes": "16"
            },
            "t_mapping(t_address,t_bool)": {
              "label": "mapping(address => bool)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_int128,t_bytes32)": {
              "label": "mapping(int128 => bytes32)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_struct(ProposalCore)5698_storage)": {
              "label": "mapping(uint256 => struct Governor.ProposalCore)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_struct(ProposalVote)8180_storage)": {
              "label": "mapping(uint256 => struct GovernorCountingSimple.ProposalVote)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_struct(BlockNumber)14684_storage": {
              "label": "struct Timers.BlockNumber",
              "members": [
                {
                  "label": "_deadline",
                  "type": "t_uint64",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "32"
            },
            "t_struct(Bytes32Deque)17763_storage": {
              "label": "struct DoubleEndedQueue.Bytes32Deque",
              "members": [
                {
                  "label": "_begin",
                  "type": "t_int128",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "_end",
                  "type": "t_int128",
                  "offset": 16,
                  "slot": "0"
                },
                {
                  "label": "_data",
                  "type": "t_mapping(t_int128,t_bytes32)",
                  "offset": 0,
                  "slot": "1"
                }
              ],
              "numberOfBytes": "64"
            },
            "t_struct(ProposalCore)5698_storage": {
              "label": "struct Governor.ProposalCore",
              "members": [
                {
                  "label": "voteStart",
                  "type": "t_struct(BlockNumber)14684_storage",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "voteEnd",
                  "type": "t_struct(BlockNumber)14684_storage",
                  "offset": 0,
                  "slot": "1"
                },
                {
                  "label": "executed",
                  "type": "t_bool",
                  "offset": 0,
                  "slot": "2"
                },
                {
                  "label": "canceled",
                  "type": "t_bool",
                  "offset": 1,
                  "slot": "2"
                }
              ],
              "numberOfBytes": "96"
            },
            "t_struct(ProposalVote)8180_storage": {
              "label": "struct GovernorCountingSimple.ProposalVote",
              "members": [
                {
                  "label": "againstVotes",
                  "type": "t_uint256",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "forVotes",
                  "type": "t_uint256",
                  "offset": 0,
                  "slot": "1"
                },
                {
                  "label": "abstainVotes",
                  "type": "t_uint256",
                  "offset": 0,
                  "slot": "2"
                },
                {
                  "label": "hasVoted",
                  "type": "t_mapping(t_address,t_bool)",
                  "offset": 0,
                  "slot": "3"
                }
              ],
              "numberOfBytes": "128"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint64": {
              "label": "uint64",
              "numberOfBytes": "8"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/governance/extensions/GovernorSettings.sol:GovernorSettings": {
        "src": "@openzeppelin/contracts/governance/extensions/GovernorSettings.sol:13",
        "inherit": [
          "@openzeppelin/contracts/governance/Governor.sol:Governor",
          "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol:IERC1155Receiver",
          "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol:IERC721Receiver",
          "@openzeppelin/contracts/governance/IGovernor.sol:IGovernor",
          "@openzeppelin/contracts/utils/cryptography/EIP712.sol:EIP712",
          "@openzeppelin/contracts/utils/introspection/ERC165.sol:ERC165",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165",
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [],
        "methods": [
          "votingDelay()",
          "votingPeriod()",
          "proposalThreshold()",
          "setVotingDelay(uint256)",
          "setVotingPeriod(uint256)",
          "setProposalThreshold(uint256)"
        ],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "GovernorSettings",
            "src": "@openzeppelin/contracts/governance/extensions/GovernorSettings.sol:25"
          }
        ],
        "layout": {
          "storage": [
            {
              "label": "_name",
              "offset": 0,
              "slot": "0",
              "type": "t_string_storage",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:45"
            },
            {
              "label": "_proposals",
              "offset": 0,
              "slot": "1",
              "type": "t_mapping(t_uint256,t_struct(ProposalCore)5698_storage)",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:47"
            },
            {
              "label": "_governanceCall",
              "offset": 0,
              "slot": "2",
              "type": "t_struct(Bytes32Deque)17763_storage",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:53"
            },
            {
              "label": "_votingDelay",
              "offset": 0,
              "slot": "4",
              "type": "t_uint256",
              "contract": "GovernorSettings",
              "src": "@openzeppelin/contracts/governance/extensions/GovernorSettings.sol:14"
            },
            {
              "label": "_votingPeriod",
              "offset": 0,
              "slot": "5",
              "type": "t_uint256",
              "contract": "GovernorSettings",
              "src": "@openzeppelin/contracts/governance/extensions/GovernorSettings.sol:15"
            },
            {
              "label": "_proposalThreshold",
              "offset": 0,
              "slot": "6",
              "type": "t_uint256",
              "contract": "GovernorSettings",
              "src": "@openzeppelin/contracts/governance/extensions/GovernorSettings.sol:16"
            }
          ],
          "types": {
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_bytes32": {
              "label": "bytes32",
              "numberOfBytes": "32"
            },
            "t_int128": {
              "label": "int128",
              "numberOfBytes": "16"
            },
            "t_mapping(t_int128,t_bytes32)": {
              "label": "mapping(int128 => bytes32)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_struct(ProposalCore)5698_storage)": {
              "label": "mapping(uint256 => struct Governor.ProposalCore)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_struct(BlockNumber)14684_storage": {
              "label": "struct Timers.BlockNumber",
              "members": [
                {
                  "label": "_deadline",
                  "type": "t_uint64",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "32"
            },
            "t_struct(Bytes32Deque)17763_storage": {
              "label": "struct DoubleEndedQueue.Bytes32Deque",
              "members": [
                {
                  "label": "_begin",
                  "type": "t_int128",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "_end",
                  "type": "t_int128",
                  "offset": 16,
                  "slot": "0"
                },
                {
                  "label": "_data",
                  "type": "t_mapping(t_int128,t_bytes32)",
                  "offset": 0,
                  "slot": "1"
                }
              ],
              "numberOfBytes": "64"
            },
            "t_struct(ProposalCore)5698_storage": {
              "label": "struct Governor.ProposalCore",
              "members": [
                {
                  "label": "voteStart",
                  "type": "t_struct(BlockNumber)14684_storage",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "voteEnd",
                  "type": "t_struct(BlockNumber)14684_storage",
                  "offset": 0,
                  "slot": "1"
                },
                {
                  "label": "executed",
                  "type": "t_bool",
                  "offset": 0,
                  "slot": "2"
                },
                {
                  "label": "canceled",
                  "type": "t_bool",
                  "offset": 1,
                  "slot": "2"
                }
              ],
              "numberOfBytes": "96"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint64": {
              "label": "uint64",
              "numberOfBytes": "8"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/governance/extensions/GovernorTimelockControl.sol:GovernorTimelockControl": {
        "src": "@openzeppelin/contracts/governance/extensions/GovernorTimelockControl.sol:26",
        "inherit": [
          "@openzeppelin/contracts/governance/Governor.sol:Governor",
          "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol:IERC1155Receiver",
          "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol:IERC721Receiver",
          "@openzeppelin/contracts/governance/extensions/IGovernorTimelock.sol:IGovernorTimelock",
          "@openzeppelin/contracts/governance/IGovernor.sol:IGovernor",
          "@openzeppelin/contracts/utils/cryptography/EIP712.sol:EIP712",
          "@openzeppelin/contracts/utils/introspection/ERC165.sol:ERC165",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165",
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [],
        "methods": [
          "supportsInterface(bytes4)",
          "state(uint256)",
          "timelock()",
          "proposalEta(uint256)",
          "queue(address[],uint256[],bytes[],bytes32)",
          "updateTimelock(address)"
        ],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "GovernorTimelockControl",
            "src": "@openzeppelin/contracts/governance/extensions/GovernorTimelockControl.sol:38"
          }
        ],
        "layout": {
          "storage": [
            {
              "label": "_name",
              "offset": 0,
              "slot": "0",
              "type": "t_string_storage",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:45"
            },
            {
              "label": "_proposals",
              "offset": 0,
              "slot": "1",
              "type": "t_mapping(t_uint256,t_struct(ProposalCore)5698_storage)",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:47"
            },
            {
              "label": "_governanceCall",
              "offset": 0,
              "slot": "2",
              "type": "t_struct(Bytes32Deque)17763_storage",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:53"
            },
            {
              "label": "_timelock",
              "offset": 0,
              "slot": "4",
              "type": "t_contract(TimelockController)8159",
              "contract": "GovernorTimelockControl",
              "src": "@openzeppelin/contracts/governance/extensions/GovernorTimelockControl.sol:27"
            },
            {
              "label": "_timelockIds",
              "offset": 0,
              "slot": "5",
              "type": "t_mapping(t_uint256,t_bytes32)",
              "contract": "GovernorTimelockControl",
              "src": "@openzeppelin/contracts/governance/extensions/GovernorTimelockControl.sol:28"
            }
          ],
          "types": {
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_bytes32": {
              "label": "bytes32",
              "numberOfBytes": "32"
            },
            "t_contract(TimelockController)8159": {
              "label": "contract TimelockController",
              "numberOfBytes": "20"
            },
            "t_int128": {
              "label": "int128",
              "numberOfBytes": "16"
            },
            "t_mapping(t_int128,t_bytes32)": {
              "label": "mapping(int128 => bytes32)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_bytes32)": {
              "label": "mapping(uint256 => bytes32)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_struct(ProposalCore)5698_storage)": {
              "label": "mapping(uint256 => struct Governor.ProposalCore)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_struct(BlockNumber)14684_storage": {
              "label": "struct Timers.BlockNumber",
              "members": [
                {
                  "label": "_deadline",
                  "type": "t_uint64",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "32"
            },
            "t_struct(Bytes32Deque)17763_storage": {
              "label": "struct DoubleEndedQueue.Bytes32Deque",
              "members": [
                {
                  "label": "_begin",
                  "type": "t_int128",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "_end",
                  "type": "t_int128",
                  "offset": 16,
                  "slot": "0"
                },
                {
                  "label": "_data",
                  "type": "t_mapping(t_int128,t_bytes32)",
                  "offset": 0,
                  "slot": "1"
                }
              ],
              "numberOfBytes": "64"
            },
            "t_struct(ProposalCore)5698_storage": {
              "label": "struct Governor.ProposalCore",
              "members": [
                {
                  "label": "voteStart",
                  "type": "t_struct(BlockNumber)14684_storage",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "voteEnd",
                  "type": "t_struct(BlockNumber)14684_storage",
                  "offset": 0,
                  "slot": "1"
                },
                {
                  "label": "executed",
                  "type": "t_bool",
                  "offset": 0,
                  "slot": "2"
                },
                {
                  "label": "canceled",
                  "type": "t_bool",
                  "offset": 1,
                  "slot": "2"
                }
              ],
              "numberOfBytes": "96"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint64": {
              "label": "uint64",
              "numberOfBytes": "8"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/governance/extensions/GovernorVotes.sol:GovernorVotes": {
        "src": "@openzeppelin/contracts/governance/extensions/GovernorVotes.sol:14",
        "inherit": [
          "@openzeppelin/contracts/governance/Governor.sol:Governor",
          "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol:IERC1155Receiver",
          "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol:IERC721Receiver",
          "@openzeppelin/contracts/governance/IGovernor.sol:IGovernor",
          "@openzeppelin/contracts/utils/cryptography/EIP712.sol:EIP712",
          "@openzeppelin/contracts/utils/introspection/ERC165.sol:ERC165",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165",
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [],
        "methods": [],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "GovernorVotes",
            "src": "@openzeppelin/contracts/governance/extensions/GovernorVotes.sol:17"
          },
          {
            "kind": "state-variable-immutable",
            "name": "token",
            "src": "@openzeppelin/contracts/governance/extensions/GovernorVotes.sol:15"
          }
        ],
        "layout": {
          "storage": [
            {
              "label": "_name",
              "offset": 0,
              "slot": "0",
              "type": "t_string_storage",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:45"
            },
            {
              "label": "_proposals",
              "offset": 0,
              "slot": "1",
              "type": "t_mapping(t_uint256,t_struct(ProposalCore)5698_storage)",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:47"
            },
            {
              "label": "_governanceCall",
              "offset": 0,
              "slot": "2",
              "type": "t_struct(Bytes32Deque)17763_storage",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:53"
            }
          ],
          "types": {
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_bytes32": {
              "label": "bytes32",
              "numberOfBytes": "32"
            },
            "t_int128": {
              "label": "int128",
              "numberOfBytes": "16"
            },
            "t_mapping(t_int128,t_bytes32)": {
              "label": "mapping(int128 => bytes32)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_struct(ProposalCore)5698_storage)": {
              "label": "mapping(uint256 => struct Governor.ProposalCore)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_struct(BlockNumber)14684_storage": {
              "label": "struct Timers.BlockNumber",
              "members": [
                {
                  "label": "_deadline",
                  "type": "t_uint64",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "32"
            },
            "t_struct(Bytes32Deque)17763_storage": {
              "label": "struct DoubleEndedQueue.Bytes32Deque",
              "members": [
                {
                  "label": "_begin",
                  "type": "t_int128",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "_end",
                  "type": "t_int128",
                  "offset": 16,
                  "slot": "0"
                },
                {
                  "label": "_data",
                  "type": "t_mapping(t_int128,t_bytes32)",
                  "offset": 0,
                  "slot": "1"
                }
              ],
              "numberOfBytes": "64"
            },
            "t_struct(ProposalCore)5698_storage": {
              "label": "struct Governor.ProposalCore",
              "members": [
                {
                  "label": "voteStart",
                  "type": "t_struct(BlockNumber)14684_storage",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "voteEnd",
                  "type": "t_struct(BlockNumber)14684_storage",
                  "offset": 0,
                  "slot": "1"
                },
                {
                  "label": "executed",
                  "type": "t_bool",
                  "offset": 0,
                  "slot": "2"
                },
                {
                  "label": "canceled",
                  "type": "t_bool",
                  "offset": 1,
                  "slot": "2"
                }
              ],
              "numberOfBytes": "96"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint64": {
              "label": "uint64",
              "numberOfBytes": "8"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/governance/extensions/GovernorVotesQuorumFraction.sol:GovernorVotesQuorumFraction": {
        "src": "@openzeppelin/contracts/governance/extensions/GovernorVotesQuorumFraction.sol:16",
        "inherit": [
          "@openzeppelin/contracts/governance/extensions/GovernorVotes.sol:GovernorVotes",
          "@openzeppelin/contracts/governance/Governor.sol:Governor",
          "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol:IERC1155Receiver",
          "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol:IERC721Receiver",
          "@openzeppelin/contracts/governance/IGovernor.sol:IGovernor",
          "@openzeppelin/contracts/utils/cryptography/EIP712.sol:EIP712",
          "@openzeppelin/contracts/utils/introspection/ERC165.sol:ERC165",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165",
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [
          "@openzeppelin/contracts/utils/Checkpoints.sol:Checkpoints",
          "@openzeppelin/contracts/utils/math/SafeCast.sol:SafeCast"
        ],
        "methods": [
          "quorumNumerator()",
          "quorumNumerator(uint256)",
          "quorumDenominator()",
          "quorum(uint256)",
          "updateQuorumNumerator(uint256)"
        ],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "GovernorVotesQuorumFraction",
            "src": "@openzeppelin/contracts/governance/extensions/GovernorVotesQuorumFraction.sol:31"
          }
        ],
        "layout": {
          "storage": [
            {
              "label": "_name",
              "offset": 0,
              "slot": "0",
              "type": "t_string_storage",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:45"
            },
            {
              "label": "_proposals",
              "offset": 0,
              "slot": "1",
              "type": "t_mapping(t_uint256,t_struct(ProposalCore)5698_storage)",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:47"
            },
            {
              "label": "_governanceCall",
              "offset": 0,
              "slot": "2",
              "type": "t_struct(Bytes32Deque)17763_storage",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:53"
            },
            {
              "label": "_quorumNumerator",
              "offset": 0,
              "slot": "4",
              "type": "t_uint256",
              "contract": "GovernorVotesQuorumFraction",
              "src": "@openzeppelin/contracts/governance/extensions/GovernorVotesQuorumFraction.sol:19"
            },
            {
              "label": "_quorumNumeratorHistory",
              "offset": 0,
              "slot": "5",
              "type": "t_struct(History)12941_storage",
              "contract": "GovernorVotesQuorumFraction",
              "src": "@openzeppelin/contracts/governance/extensions/GovernorVotesQuorumFraction.sol:20"
            }
          ],
          "types": {
            "t_array(t_struct(Checkpoint)12946_storage)dyn_storage": {
              "label": "struct Checkpoints.Checkpoint[]",
              "numberOfBytes": "32"
            },
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_bytes32": {
              "label": "bytes32",
              "numberOfBytes": "32"
            },
            "t_int128": {
              "label": "int128",
              "numberOfBytes": "16"
            },
            "t_mapping(t_int128,t_bytes32)": {
              "label": "mapping(int128 => bytes32)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_struct(ProposalCore)5698_storage)": {
              "label": "mapping(uint256 => struct Governor.ProposalCore)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_struct(BlockNumber)14684_storage": {
              "label": "struct Timers.BlockNumber",
              "members": [
                {
                  "label": "_deadline",
                  "type": "t_uint64",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "32"
            },
            "t_struct(Bytes32Deque)17763_storage": {
              "label": "struct DoubleEndedQueue.Bytes32Deque",
              "members": [
                {
                  "label": "_begin",
                  "type": "t_int128",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "_end",
                  "type": "t_int128",
                  "offset": 16,
                  "slot": "0"
                },
                {
                  "label": "_data",
                  "type": "t_mapping(t_int128,t_bytes32)",
                  "offset": 0,
                  "slot": "1"
                }
              ],
              "numberOfBytes": "64"
            },
            "t_struct(Checkpoint)12946_storage": {
              "label": "struct Checkpoints.Checkpoint",
              "members": [
                {
                  "label": "_blockNumber",
                  "type": "t_uint32",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "_value",
                  "type": "t_uint224",
                  "offset": 4,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "32"
            },
            "t_struct(History)12941_storage": {
              "label": "struct Checkpoints.History",
              "members": [
                {
                  "label": "_checkpoints",
                  "type": "t_array(t_struct(Checkpoint)12946_storage)dyn_storage",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "32"
            },
            "t_struct(ProposalCore)5698_storage": {
              "label": "struct Governor.ProposalCore",
              "members": [
                {
                  "label": "voteStart",
                  "type": "t_struct(BlockNumber)14684_storage",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "voteEnd",
                  "type": "t_struct(BlockNumber)14684_storage",
                  "offset": 0,
                  "slot": "1"
                },
                {
                  "label": "executed",
                  "type": "t_bool",
                  "offset": 0,
                  "slot": "2"
                },
                {
                  "label": "canceled",
                  "type": "t_bool",
                  "offset": 1,
                  "slot": "2"
                }
              ],
              "numberOfBytes": "96"
            },
            "t_uint224": {
              "label": "uint224",
              "numberOfBytes": "28"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint32": {
              "label": "uint32",
              "numberOfBytes": "4"
            },
            "t_uint64": {
              "label": "uint64",
              "numberOfBytes": "8"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/governance/extensions/IGovernorTimelock.sol:IGovernorTimelock": {
        "src": "@openzeppelin/contracts/governance/extensions/IGovernorTimelock.sol:13",
        "inherit": [
          "@openzeppelin/contracts/governance/IGovernor.sol:IGovernor",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165"
        ],
        "libraries": [],
        "methods": [
          "timelock()",
          "proposalEta(uint256)",
          "queue(address[],uint256[],bytes[],bytes32)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/governance/utils/IVotes.sol:IVotes": {
        "src": "@openzeppelin/contracts/governance/utils/IVotes.sol:10",
        "inherit": [],
        "libraries": [],
        "methods": [
          "getVotes(address)",
          "getPastVotes(address,uint256)",
          "getPastTotalSupply(uint256)",
          "delegates(address)",
          "delegate(address)",
          "delegateBySig(address,uint256,uint256,uint8,bytes32,bytes32)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol:IERC1155Receiver": {
        "src": "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol:11",
        "inherit": [
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165"
        ],
        "libraries": [],
        "methods": [
          "onERC1155Received(address,address,uint256,uint256,bytes)",
          "onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/token/ERC20/ERC20.sol:ERC20": {
        "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:35",
        "version": {
          "withMetadata": "e9cc14ab959c4cd9367b0c2040400dd10cf52c478f8159e2d44d3e68c89055c4",
          "withoutMetadata": "b88954434c1323bef884c814f309755275a30d00fbd7290dedb8d43b871933fc",
          "linkedWithoutMetadata": "b88954434c1323bef884c814f309755275a30d00fbd7290dedb8d43b871933fc"
        },
        "inherit": [
          "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol:IERC20Metadata",
          "@openzeppelin/contracts/token/ERC20/IERC20.sol:IERC20",
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [],
        "methods": [
          "(string,string)",
          "name()",
          "symbol()",
          "decimals()",
          "totalSupply()",
          "balanceOf(address)",
          "transfer(address,uint256)",
          "allowance(address,address)",
          "approve(address,uint256)",
          "transferFrom(address,address,uint256)",
          "increaseAllowance(address,uint256)",
          "decreaseAllowance(address,uint256)"
        ],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "ERC20",
            "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:54"
          }
        ],
        "layout": {
          "storage": [
            {
              "label": "_balances",
              "offset": 0,
              "slot": "0",
              "type": "t_mapping(t_address,t_uint256)",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:36"
            },
            {
              "label": "_allowances",
              "offset": 0,
              "slot": "1",
              "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:38"
            },
            {
              "label": "_totalSupply",
              "offset": 0,
              "slot": "2",
              "type": "t_uint256",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:40"
            },
            {
              "label": "_name",
              "offset": 0,
              "slot": "3",
              "type": "t_string_storage",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:42"
            },
            {
              "label": "_symbol",
              "offset": 0,
              "slot": "4",
              "type": "t_string_storage",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:43"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "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_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/token/ERC20/IERC20.sol:IERC20": {
        "src": "@openzeppelin/contracts/token/ERC20/IERC20.sol:9",
        "inherit": [],
        "libraries": [],
        "methods": [
          "totalSupply()",
          "balanceOf(address)",
          "transfer(address,uint256)",
          "allowance(address,address)",
          "approve(address,uint256)",
          "transferFrom(address,address,uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol:ERC20Burnable": {
        "src": "@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol:14",
        "inherit": [
          "@openzeppelin/contracts/token/ERC20/ERC20.sol:ERC20",
          "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol:IERC20Metadata",
          "@openzeppelin/contracts/token/ERC20/IERC20.sol:IERC20",
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [],
        "methods": [
          "burn(uint256)",
          "burnFrom(address,uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [
            {
              "label": "_balances",
              "offset": 0,
              "slot": "0",
              "type": "t_mapping(t_address,t_uint256)",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:36"
            },
            {
              "label": "_allowances",
              "offset": 0,
              "slot": "1",
              "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:38"
            },
            {
              "label": "_totalSupply",
              "offset": 0,
              "slot": "2",
              "type": "t_uint256",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:40"
            },
            {
              "label": "_name",
              "offset": 0,
              "slot": "3",
              "type": "t_string_storage",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:42"
            },
            {
              "label": "_symbol",
              "offset": 0,
              "slot": "4",
              "type": "t_string_storage",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:43"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "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_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/token/ERC20/extensions/ERC20Votes.sol:ERC20Votes": {
        "src": "@openzeppelin/contracts/token/ERC20/extensions/ERC20Votes.sol:27",
        "inherit": [
          "@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol:ERC20Permit",
          "@openzeppelin/contracts/utils/cryptography/EIP712.sol:EIP712",
          "@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol:IERC20Permit",
          "@openzeppelin/contracts/token/ERC20/ERC20.sol:ERC20",
          "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol:IERC20Metadata",
          "@openzeppelin/contracts/token/ERC20/IERC20.sol:IERC20",
          "@openzeppelin/contracts/utils/Context.sol:Context",
          "@openzeppelin/contracts/governance/utils/IVotes.sol:IVotes"
        ],
        "libraries": [
          "@openzeppelin/contracts/utils/math/SafeCast.sol:SafeCast",
          "@openzeppelin/contracts/utils/math/Math.sol:Math",
          "@openzeppelin/contracts/utils/cryptography/ECDSA.sol:ECDSA"
        ],
        "methods": [
          "checkpoints(address,uint32)",
          "numCheckpoints(address)",
          "delegates(address)",
          "getVotes(address)",
          "getPastVotes(address,uint256)",
          "getPastTotalSupply(uint256)",
          "delegate(address)",
          "delegateBySig(address,uint256,uint256,uint8,bytes32,bytes32)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [
            {
              "label": "_balances",
              "offset": 0,
              "slot": "0",
              "type": "t_mapping(t_address,t_uint256)",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:36"
            },
            {
              "label": "_allowances",
              "offset": 0,
              "slot": "1",
              "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:38"
            },
            {
              "label": "_totalSupply",
              "offset": 0,
              "slot": "2",
              "type": "t_uint256",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:40"
            },
            {
              "label": "_name",
              "offset": 0,
              "slot": "3",
              "type": "t_string_storage",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:42"
            },
            {
              "label": "_symbol",
              "offset": 0,
              "slot": "4",
              "type": "t_string_storage",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:43"
            },
            {
              "label": "_nonces",
              "offset": 0,
              "slot": "5",
              "type": "t_mapping(t_address,t_struct(Counter)14330_storage)",
              "contract": "ERC20Permit",
              "src": "@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol:25"
            },
            {
              "label": "_PERMIT_TYPEHASH_DEPRECATED_SLOT",
              "offset": 0,
              "slot": "6",
              "type": "t_bytes32",
              "contract": "ERC20Permit",
              "src": "@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol:37",
              "renamedFrom": "_PERMIT_TYPEHASH"
            },
            {
              "label": "_delegates",
              "offset": 0,
              "slot": "7",
              "type": "t_mapping(t_address,t_address)",
              "contract": "ERC20Votes",
              "src": "@openzeppelin/contracts/token/ERC20/extensions/ERC20Votes.sol:36"
            },
            {
              "label": "_checkpoints",
              "offset": 0,
              "slot": "8",
              "type": "t_mapping(t_address,t_array(t_struct(Checkpoint)10071_storage)dyn_storage)",
              "contract": "ERC20Votes",
              "src": "@openzeppelin/contracts/token/ERC20/extensions/ERC20Votes.sol:37"
            },
            {
              "label": "_totalSupplyCheckpoints",
              "offset": 0,
              "slot": "9",
              "type": "t_array(t_struct(Checkpoint)10071_storage)dyn_storage",
              "contract": "ERC20Votes",
              "src": "@openzeppelin/contracts/token/ERC20/extensions/ERC20Votes.sol:38"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_array(t_struct(Checkpoint)10071_storage)dyn_storage": {
              "label": "struct ERC20Votes.Checkpoint[]",
              "numberOfBytes": "32"
            },
            "t_bytes32": {
              "label": "bytes32",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_address)": {
              "label": "mapping(address => address)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_array(t_struct(Checkpoint)10071_storage)dyn_storage)": {
              "label": "mapping(address => struct ERC20Votes.Checkpoint[])",
              "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_struct(Counter)14330_storage)": {
              "label": "mapping(address => struct Counters.Counter)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_uint256)": {
              "label": "mapping(address => uint256)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_struct(Checkpoint)10071_storage": {
              "label": "struct ERC20Votes.Checkpoint",
              "members": [
                {
                  "label": "fromBlock",
                  "type": "t_uint32",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "votes",
                  "type": "t_uint224",
                  "offset": 4,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "32"
            },
            "t_struct(Counter)14330_storage": {
              "label": "struct Counters.Counter",
              "members": [
                {
                  "label": "_value",
                  "type": "t_uint256",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "32"
            },
            "t_uint224": {
              "label": "uint224",
              "numberOfBytes": "28"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint32": {
              "label": "uint32",
              "numberOfBytes": "4"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol:IERC20Metadata": {
        "src": "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol:13",
        "inherit": [
          "@openzeppelin/contracts/token/ERC20/IERC20.sol:IERC20"
        ],
        "libraries": [],
        "methods": [
          "name()",
          "symbol()",
          "decimals()"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol:ERC20Permit": {
        "src": "@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol:22",
        "inherit": [
          "@openzeppelin/contracts/utils/cryptography/EIP712.sol:EIP712",
          "@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol:IERC20Permit",
          "@openzeppelin/contracts/token/ERC20/ERC20.sol:ERC20",
          "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol:IERC20Metadata",
          "@openzeppelin/contracts/token/ERC20/IERC20.sol:IERC20",
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [
          "@openzeppelin/contracts/utils/Counters.sol:Counters",
          "@openzeppelin/contracts/utils/cryptography/ECDSA.sol:ECDSA"
        ],
        "methods": [
          "permit(address,address,uint256,uint256,uint8,bytes32,bytes32)",
          "nonces(address)",
          "DOMAIN_SEPARATOR()"
        ],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "ERC20Permit",
            "src": "@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol:44"
          }
        ],
        "layout": {
          "storage": [
            {
              "label": "_balances",
              "offset": 0,
              "slot": "0",
              "type": "t_mapping(t_address,t_uint256)",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:36"
            },
            {
              "label": "_allowances",
              "offset": 0,
              "slot": "1",
              "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:38"
            },
            {
              "label": "_totalSupply",
              "offset": 0,
              "slot": "2",
              "type": "t_uint256",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:40"
            },
            {
              "label": "_name",
              "offset": 0,
              "slot": "3",
              "type": "t_string_storage",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:42"
            },
            {
              "label": "_symbol",
              "offset": 0,
              "slot": "4",
              "type": "t_string_storage",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:43"
            },
            {
              "label": "_nonces",
              "offset": 0,
              "slot": "5",
              "type": "t_mapping(t_address,t_struct(Counter)14330_storage)",
              "contract": "ERC20Permit",
              "src": "@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol:25"
            },
            {
              "label": "_PERMIT_TYPEHASH_DEPRECATED_SLOT",
              "offset": 0,
              "slot": "6",
              "type": "t_bytes32",
              "contract": "ERC20Permit",
              "src": "@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol:37",
              "renamedFrom": "_PERMIT_TYPEHASH"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_bytes32": {
              "label": "bytes32",
              "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_struct(Counter)14330_storage)": {
              "label": "mapping(address => struct Counters.Counter)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_uint256)": {
              "label": "mapping(address => uint256)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_struct(Counter)14330_storage": {
              "label": "struct Counters.Counter",
              "members": [
                {
                  "label": "_value",
                  "type": "t_uint256",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "32"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol:IERC20Permit": {
        "src": "@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol:14",
        "inherit": [],
        "libraries": [],
        "methods": [
          "permit(address,address,uint256,uint256,uint8,bytes32,bytes32)",
          "nonces(address)",
          "DOMAIN_SEPARATOR()"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/token/ERC721/ERC721.sol:ERC721": {
        "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:19",
        "version": {
          "withMetadata": "d2247bcca03fe78a1132b1a20ca8aa0be6a39de793e2790e6bdeaf66f5f1fdc7",
          "withoutMetadata": "e99d3577fe7bc07638df4aa38668fd1d02d9e9365d02b8fddf76ea89c439b266",
          "linkedWithoutMetadata": "e99d3577fe7bc07638df4aa38668fd1d02d9e9365d02b8fddf76ea89c439b266"
        },
        "inherit": [
          "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol:IERC721Metadata",
          "@openzeppelin/contracts/token/ERC721/IERC721.sol:IERC721",
          "@openzeppelin/contracts/utils/introspection/ERC165.sol:ERC165",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165",
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [
          "@openzeppelin/contracts/utils/Address.sol:Address",
          "@openzeppelin/contracts/utils/Strings.sol:Strings"
        ],
        "methods": [
          "(string,string)",
          "supportsInterface(bytes4)",
          "balanceOf(address)",
          "ownerOf(uint256)",
          "name()",
          "symbol()",
          "tokenURI(uint256)",
          "approve(address,uint256)",
          "getApproved(uint256)",
          "setApprovalForAll(address,bool)",
          "isApprovedForAll(address,address)",
          "transferFrom(address,address,uint256)",
          "safeTransferFrom(address,address,uint256)",
          "safeTransferFrom(address,address,uint256,bytes)"
        ],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "ERC721",
            "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:44"
          }
        ],
        "layout": {
          "storage": [
            {
              "label": "_name",
              "offset": 0,
              "slot": "0",
              "type": "t_string_storage",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:24"
            },
            {
              "label": "_symbol",
              "offset": 0,
              "slot": "1",
              "type": "t_string_storage",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:27"
            },
            {
              "label": "_owners",
              "offset": 0,
              "slot": "2",
              "type": "t_mapping(t_uint256,t_address)",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:30"
            },
            {
              "label": "_balances",
              "offset": 0,
              "slot": "3",
              "type": "t_mapping(t_address,t_uint256)",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:33"
            },
            {
              "label": "_tokenApprovals",
              "offset": 0,
              "slot": "4",
              "type": "t_mapping(t_uint256,t_address)",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:36"
            },
            {
              "label": "_operatorApprovals",
              "offset": 0,
              "slot": "5",
              "type": "t_mapping(t_address,t_mapping(t_address,t_bool))",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:39"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_mapping(t_address,t_bool)": {
              "label": "mapping(address => bool)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_mapping(t_address,t_bool))": {
              "label": "mapping(address => mapping(address => bool))",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_uint256)": {
              "label": "mapping(address => uint256)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_address)": {
              "label": "mapping(uint256 => address)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/token/ERC721/IERC721.sol:IERC721": {
        "src": "@openzeppelin/contracts/token/ERC721/IERC721.sol:11",
        "inherit": [
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165"
        ],
        "libraries": [],
        "methods": [
          "balanceOf(address)",
          "ownerOf(uint256)",
          "safeTransferFrom(address,address,uint256,bytes)",
          "safeTransferFrom(address,address,uint256)",
          "transferFrom(address,address,uint256)",
          "approve(address,uint256)",
          "setApprovalForAll(address,bool)",
          "getApproved(uint256)",
          "isApprovedForAll(address,address)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol:IERC721Receiver": {
        "src": "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol:11",
        "inherit": [],
        "libraries": [],
        "methods": [
          "onERC721Received(address,address,uint256,bytes)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol:ERC721Enumerable": {
        "src": "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol:14",
        "inherit": [
          "@openzeppelin/contracts/token/ERC721/extensions/IERC721Enumerable.sol:IERC721Enumerable",
          "@openzeppelin/contracts/token/ERC721/ERC721.sol:ERC721",
          "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol:IERC721Metadata",
          "@openzeppelin/contracts/token/ERC721/IERC721.sol:IERC721",
          "@openzeppelin/contracts/utils/introspection/ERC165.sol:ERC165",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165",
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [],
        "methods": [
          "supportsInterface(bytes4)",
          "tokenOfOwnerByIndex(address,uint256)",
          "totalSupply()",
          "tokenByIndex(uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [
            {
              "label": "_name",
              "offset": 0,
              "slot": "0",
              "type": "t_string_storage",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:24"
            },
            {
              "label": "_symbol",
              "offset": 0,
              "slot": "1",
              "type": "t_string_storage",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:27"
            },
            {
              "label": "_owners",
              "offset": 0,
              "slot": "2",
              "type": "t_mapping(t_uint256,t_address)",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:30"
            },
            {
              "label": "_balances",
              "offset": 0,
              "slot": "3",
              "type": "t_mapping(t_address,t_uint256)",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:33"
            },
            {
              "label": "_tokenApprovals",
              "offset": 0,
              "slot": "4",
              "type": "t_mapping(t_uint256,t_address)",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:36"
            },
            {
              "label": "_operatorApprovals",
              "offset": 0,
              "slot": "5",
              "type": "t_mapping(t_address,t_mapping(t_address,t_bool))",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:39"
            },
            {
              "label": "_ownedTokens",
              "offset": 0,
              "slot": "6",
              "type": "t_mapping(t_address,t_mapping(t_uint256,t_uint256))",
              "contract": "ERC721Enumerable",
              "src": "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol:16"
            },
            {
              "label": "_ownedTokensIndex",
              "offset": 0,
              "slot": "7",
              "type": "t_mapping(t_uint256,t_uint256)",
              "contract": "ERC721Enumerable",
              "src": "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol:19"
            },
            {
              "label": "_allTokens",
              "offset": 0,
              "slot": "8",
              "type": "t_array(t_uint256)dyn_storage",
              "contract": "ERC721Enumerable",
              "src": "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol:22"
            },
            {
              "label": "_allTokensIndex",
              "offset": 0,
              "slot": "9",
              "type": "t_mapping(t_uint256,t_uint256)",
              "contract": "ERC721Enumerable",
              "src": "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol:25"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_array(t_uint256)dyn_storage": {
              "label": "uint256[]",
              "numberOfBytes": "32"
            },
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_mapping(t_address,t_bool)": {
              "label": "mapping(address => bool)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_mapping(t_address,t_bool))": {
              "label": "mapping(address => mapping(address => bool))",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_mapping(t_uint256,t_uint256))": {
              "label": "mapping(address => mapping(uint256 => uint256))",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_uint256)": {
              "label": "mapping(address => uint256)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_address)": {
              "label": "mapping(uint256 => address)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_uint256)": {
              "label": "mapping(uint256 => uint256)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol:ERC721URIStorage": {
        "src": "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol:11",
        "inherit": [
          "@openzeppelin/contracts/token/ERC721/ERC721.sol:ERC721",
          "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol:IERC721Metadata",
          "@openzeppelin/contracts/token/ERC721/IERC721.sol:IERC721",
          "@openzeppelin/contracts/utils/introspection/ERC165.sol:ERC165",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165",
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [
          "@openzeppelin/contracts/utils/Strings.sol:Strings"
        ],
        "methods": [
          "tokenURI(uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [
            {
              "label": "_name",
              "offset": 0,
              "slot": "0",
              "type": "t_string_storage",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:24"
            },
            {
              "label": "_symbol",
              "offset": 0,
              "slot": "1",
              "type": "t_string_storage",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:27"
            },
            {
              "label": "_owners",
              "offset": 0,
              "slot": "2",
              "type": "t_mapping(t_uint256,t_address)",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:30"
            },
            {
              "label": "_balances",
              "offset": 0,
              "slot": "3",
              "type": "t_mapping(t_address,t_uint256)",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:33"
            },
            {
              "label": "_tokenApprovals",
              "offset": 0,
              "slot": "4",
              "type": "t_mapping(t_uint256,t_address)",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:36"
            },
            {
              "label": "_operatorApprovals",
              "offset": 0,
              "slot": "5",
              "type": "t_mapping(t_address,t_mapping(t_address,t_bool))",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:39"
            },
            {
              "label": "_tokenURIs",
              "offset": 0,
              "slot": "6",
              "type": "t_mapping(t_uint256,t_string_storage)",
              "contract": "ERC721URIStorage",
              "src": "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol:15"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_mapping(t_address,t_bool)": {
              "label": "mapping(address => bool)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_mapping(t_address,t_bool))": {
              "label": "mapping(address => mapping(address => bool))",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_uint256)": {
              "label": "mapping(address => uint256)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_address)": {
              "label": "mapping(uint256 => address)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_string_storage)": {
              "label": "mapping(uint256 => string)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/token/ERC721/extensions/IERC721Enumerable.sol:IERC721Enumerable": {
        "src": "@openzeppelin/contracts/token/ERC721/extensions/IERC721Enumerable.sol:12",
        "inherit": [
          "@openzeppelin/contracts/token/ERC721/IERC721.sol:IERC721",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165"
        ],
        "libraries": [],
        "methods": [
          "totalSupply()",
          "tokenOfOwnerByIndex(address,uint256)",
          "tokenByIndex(uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol:IERC721Metadata": {
        "src": "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol:12",
        "inherit": [
          "@openzeppelin/contracts/token/ERC721/IERC721.sol:IERC721",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165"
        ],
        "libraries": [],
        "methods": [
          "name()",
          "symbol()",
          "tokenURI(uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/utils/Address.sol:Address": {
        "src": "@openzeppelin/contracts/utils/Address.sol:9",
        "version": {
          "withMetadata": "1233183b0e8946d36239a2525837911ae28b765c9643dfdfabc93307bfbbe970",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [],
        "methods": [],
        "linkReferences": [],
        "errors": [
          {
            "kind": "delegatecall",
            "src": "@openzeppelin/contracts/utils/Address.sol:185"
          },
          {
            "kind": "delegatecall",
            "src": "@openzeppelin/contracts/utils/Address.sol:185"
          }
        ],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/utils/Checkpoints.sol:Checkpoints": {
        "src": "@openzeppelin/contracts/utils/Checkpoints.sol:19",
        "version": {
          "withMetadata": "3f8548ceea7f85e91d2666d339da9587941181a11e7e333ea8f6eca60ba72ea4",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [
          "@openzeppelin/contracts/utils/math/SafeCast.sol:SafeCast",
          "@openzeppelin/contracts/utils/math/Math.sol:Math"
        ],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/utils/Context.sol:Context": {
        "src": "@openzeppelin/contracts/utils/Context.sol:16",
        "inherit": [],
        "libraries": [],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/utils/Counters.sol:Counters": {
        "src": "@openzeppelin/contracts/utils/Counters.sol:14",
        "version": {
          "withMetadata": "a0ca7618cd5f04e7c5beb70665a60fae9525f0598100b67d6d499a766bd74593",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/utils/Strings.sol:Strings": {
        "src": "@openzeppelin/contracts/utils/Strings.sol:11",
        "version": {
          "withMetadata": "a451ee39c2ea08a9ebe2a2eb84f0284a5d36f9e9751fecd6c0377cdcbef0415b",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [
          "@openzeppelin/contracts/utils/math/Math.sol:Math"
        ],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/utils/Timers.sol:Timers": {
        "src": "@openzeppelin/contracts/utils/Timers.sol:9",
        "version": {
          "withMetadata": "a082e5b75be4e358002ba48ce3bd094a87dadc0e59cc1ba15f224d30b3805e9b",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/utils/cryptography/ECDSA.sol:ECDSA": {
        "src": "@openzeppelin/contracts/utils/cryptography/ECDSA.sol:14",
        "version": {
          "withMetadata": "fb9f35dd5af37c90ac3ce83e3289c2069858cf11ba59c1378fb1dc7ab379b2dc",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [
          "@openzeppelin/contracts/utils/Strings.sol:Strings"
        ],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/utils/cryptography/EIP712.sol:EIP712": {
        "src": "@openzeppelin/contracts/utils/cryptography/EIP712.sol:27",
        "inherit": [],
        "libraries": [
          "@openzeppelin/contracts/utils/cryptography/ECDSA.sol:ECDSA"
        ],
        "methods": [],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "EIP712",
            "src": "@openzeppelin/contracts/utils/cryptography/EIP712.sol:53"
          },
          {
            "kind": "state-variable-immutable",
            "name": "_CACHED_DOMAIN_SEPARATOR",
            "src": "@openzeppelin/contracts/utils/cryptography/EIP712.sol:31"
          },
          {
            "kind": "state-variable-immutable",
            "name": "_CACHED_CHAIN_ID",
            "src": "@openzeppelin/contracts/utils/cryptography/EIP712.sol:32"
          },
          {
            "kind": "state-variable-immutable",
            "name": "_CACHED_THIS",
            "src": "@openzeppelin/contracts/utils/cryptography/EIP712.sol:33"
          },
          {
            "kind": "state-variable-immutable",
            "name": "_HASHED_NAME",
            "src": "@openzeppelin/contracts/utils/cryptography/EIP712.sol:35"
          },
          {
            "kind": "state-variable-immutable",
            "name": "_HASHED_VERSION",
            "src": "@openzeppelin/contracts/utils/cryptography/EIP712.sol:36"
          },
          {
            "kind": "state-variable-immutable",
            "name": "_TYPE_HASH",
            "src": "@openzeppelin/contracts/utils/cryptography/EIP712.sol:37"
          }
        ],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/utils/introspection/ERC165.sol:ERC165": {
        "src": "@openzeppelin/contracts/utils/introspection/ERC165.sol:22",
        "inherit": [
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165"
        ],
        "libraries": [],
        "methods": [
          "supportsInterface(bytes4)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165": {
        "src": "@openzeppelin/contracts/utils/introspection/IERC165.sol:15",
        "inherit": [],
        "libraries": [],
        "methods": [
          "supportsInterface(bytes4)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/utils/math/Math.sol:Math": {
        "src": "@openzeppelin/contracts/utils/math/Math.sol:9",
        "version": {
          "withMetadata": "22cdfe484f0c7dc8af5c96ee396fd699f4abe94f06f6402ed6517f3369777416",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/utils/math/SafeCast.sol:SafeCast": {
        "src": "@openzeppelin/contracts/utils/math/SafeCast.sol:22",
        "version": {
          "withMetadata": "ea021e522dd28c0e6b47c27563758a66c6cd9255e7a93b6250bcd4b8bf528742",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/utils/structs/DoubleEndedQueue.sol:DoubleEndedQueue": {
        "src": "@openzeppelin/contracts/utils/structs/DoubleEndedQueue.sol:21",
        "version": {
          "withMetadata": "5470777cca951c68e77201141733a291fe9f544898b0d5b8d3d2ac12d43bee68",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [
          "@openzeppelin/contracts/utils/math/SafeCast.sol:SafeCast"
        ],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/utils/structs/EnumerableMap.sol:EnumerableMap": {
        "src": "@openzeppelin/contracts/utils/structs/EnumerableMap.sol:48",
        "version": {
          "withMetadata": "7cc0df4705377e07630572f7f8bddda28ec00fc1bb6c10f483612ae1779f3458",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [
          "@openzeppelin/contracts/utils/structs/EnumerableSet.sol:EnumerableSet"
        ],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "@openzeppelin/contracts/utils/structs/EnumerableSet.sol:EnumerableSet": {
        "src": "@openzeppelin/contracts/utils/structs/EnumerableSet.sol:41",
        "version": {
          "withMetadata": "259dbae79dfeb62990d0ae72a08d228655045fa033371f489bc44a18f6411aef",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "contracts/My3SecHub.sol:My3SecHub": {
        "src": "contracts/My3SecHub.sol:21",
        "version": {
          "withMetadata": "b2ff677fb66747a0f7e313729616e10551329b1ea9b7d75a897c887388f6999f",
          "withoutMetadata": "7db8296faf286b2a873f6bb8f02911ba932568f56a2117a76e7a57c78b4d1a63",
          "linkedWithoutMetadata": "7db8296faf286b2a873f6bb8f02911ba932568f56a2117a76e7a57c78b4d1a63"
        },
        "inherit": [
          "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:OwnableUpgradeable",
          "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:ContextUpgradeable",
          "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:Initializable",
          "contracts/common/interfaces/IMy3SecHub.sol:IMy3SecHub"
        ],
        "libraries": [
          "@openzeppelin/contracts/utils/structs/EnumerableSet.sol:EnumerableSet",
          "contracts/common/libraries/Errors.sol:Errors",
          "contracts/common/libraries/DataTypes.sol:DataTypes",
          "contracts/common/libraries/Constants.sol:Constants",
          "contracts/common/libraries/Events.sol:Events"
        ],
        "methods": [
          "initialize()",
          "setGovernanceTimelockContractAddress(address)",
          "setOrganizationFactoryContract(address)",
          "setSkillRegistryContract(address)",
          "setCertificateNFTContract(address)",
          "setMy3SecProfilesContract(address)",
          "setEnergyWalletContract(address)",
          "setTimeWalletContract(address)",
          "setSkillWalletContract(address)",
          "getDefaultProfile(address)",
          "getProfileAccount(uint256)",
          "getProfile(uint256)",
          "setDefaultProfile(uint256)",
          "createProfile((string))",
          "updateProfile(uint256,(string))",
          "giveEnergyTo(uint256,uint256)",
          "removeEnergyFrom(uint256,uint256)",
          "getOrganizationCount()",
          "getOrganization(uint256)",
          "hasWithdrawn(address,uint256,uint256)",
          "createOrganization(string)",
          "registerOrganization(address)",
          "joinOrganization(address)",
          "leaveOrganization(address)",
          "logTime(address,uint256,uint256)",
          "withdraw(address,uint256)",
          "issueCertificate(uint256,string)",
          "issueCertificate(address,uint256,string)",
          "emitPendingMemberApproved(address,uint256)",
          "emitPendingMemberRejected(address,uint256)",
          "emitProjectCreated(address,uint256)",
          "emitProjectUpdated(address,uint256)",
          "emitProjectMemberAdded(address,uint256,uint256)",
          "emitProjectMemberRemoved(address,uint256,uint256)",
          "emitTaskCreated(address,uint256,uint256)",
          "emitTaskUpdated(address,uint256)",
          "emitTaskMemberAdded(address,uint256,uint256)",
          "emitTaskMemberRemoved(address,uint256,uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "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": "_owner",
              "offset": 0,
              "slot": "51",
              "type": "t_address",
              "contract": "OwnableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22"
            },
            {
              "label": "__gap",
              "offset": 0,
              "slot": "52",
              "type": "t_array(t_uint256)49_storage",
              "contract": "OwnableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94"
            },
            {
              "label": "_governanceTimelockContractAddress",
              "offset": 0,
              "slot": "101",
              "type": "t_address",
              "contract": "My3SecHub",
              "src": "contracts/My3SecHub.sol:24"
            },
            {
              "label": "_organizationFactory",
              "offset": 0,
              "slot": "102",
              "type": "t_contract(OrganizationFactory)24267",
              "contract": "My3SecHub",
              "src": "contracts/My3SecHub.sol:26"
            },
            {
              "label": "_skillRegistry",
              "offset": 0,
              "slot": "103",
              "type": "t_contract(ISkillRegistry)21914",
              "contract": "My3SecHub",
              "src": "contracts/My3SecHub.sol:27"
            },
            {
              "label": "_certificateNFT",
              "offset": 0,
              "slot": "104",
              "type": "t_contract(ICertificateNFT)21239",
              "contract": "My3SecHub",
              "src": "contracts/My3SecHub.sol:28"
            },
            {
              "label": "_my3SecProfiles",
              "offset": 0,
              "slot": "105",
              "type": "t_contract(IMy3SecProfiles)21601",
              "contract": "My3SecHub",
              "src": "contracts/My3SecHub.sol:29"
            },
            {
              "label": "_energyWallet",
              "offset": 0,
              "slot": "106",
              "type": "t_contract(IEnergyWallet)21338",
              "contract": "My3SecHub",
              "src": "contracts/My3SecHub.sol:30"
            },
            {
              "label": "_timeWallet",
              "offset": 0,
              "slot": "107",
              "type": "t_contract(ITimeWallet)21954",
              "contract": "My3SecHub",
              "src": "contracts/My3SecHub.sol:31"
            },
            {
              "label": "_skillWallet",
              "offset": 0,
              "slot": "108",
              "type": "t_contract(ISkillWallet)21944",
              "contract": "My3SecHub",
              "src": "contracts/My3SecHub.sol:32"
            },
            {
              "label": "_organizations",
              "offset": 0,
              "slot": "109",
              "type": "t_struct(AddressSet)19533_storage",
              "contract": "My3SecHub",
              "src": "contracts/My3SecHub.sol:34"
            },
            {
              "label": "rewards",
              "offset": 0,
              "slot": "111",
              "type": "t_mapping(t_address,t_mapping(t_uint256,t_uint256))",
              "contract": "My3SecHub",
              "src": "contracts/My3SecHub.sol:37"
            }
          ],
          "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(ICertificateNFT)21239": {
              "label": "contract ICertificateNFT",
              "numberOfBytes": "20"
            },
            "t_contract(IEnergyWallet)21338": {
              "label": "contract IEnergyWallet",
              "numberOfBytes": "20"
            },
            "t_contract(IMy3SecProfiles)21601": {
              "label": "contract IMy3SecProfiles",
              "numberOfBytes": "20"
            },
            "t_contract(ISkillRegistry)21914": {
              "label": "contract ISkillRegistry",
              "numberOfBytes": "20"
            },
            "t_contract(ISkillWallet)21944": {
              "label": "contract ISkillWallet",
              "numberOfBytes": "20"
            },
            "t_contract(ITimeWallet)21954": {
              "label": "contract ITimeWallet",
              "numberOfBytes": "20"
            },
            "t_contract(OrganizationFactory)24267": {
              "label": "contract OrganizationFactory",
              "numberOfBytes": "20"
            },
            "t_mapping(t_address,t_mapping(t_uint256,t_uint256))": {
              "label": "mapping(address => mapping(uint256 => uint256))",
              "numberOfBytes": "32"
            },
            "t_mapping(t_bytes32,t_uint256)": {
              "label": "mapping(bytes32 => uint256)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_uint256)": {
              "label": "mapping(uint256 => uint256)",
              "numberOfBytes": "32"
            },
            "t_struct(AddressSet)19533_storage": {
              "label": "struct EnumerableSet.AddressSet",
              "members": [
                {
                  "label": "_inner",
                  "type": "t_struct(Set)19218_storage",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "64"
            },
            "t_struct(Set)19218_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"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "contracts/common/access/HubControllable.sol:HubControllable": {
        "src": "contracts/common/access/HubControllable.sol:6",
        "inherit": [],
        "libraries": [
          "contracts/common/libraries/Errors.sol:Errors"
        ],
        "methods": [],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "HubControllable",
            "src": "contracts/common/access/HubControllable.sol:14"
          },
          {
            "kind": "state-variable-immutable",
            "name": "HUB",
            "src": "contracts/common/access/HubControllable.sol:7"
          }
        ],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "contracts/common/access/HubControllableUpgradeable.sol:HubControllableUpgradeable": {
        "src": "contracts/common/access/HubControllableUpgradeable.sol:9",
        "inherit": [
          "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:OwnableUpgradeable",
          "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:ContextUpgradeable",
          "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:Initializable"
        ],
        "libraries": [
          "contracts/common/libraries/Errors.sol:Errors"
        ],
        "methods": [
          "__HubControllable_init(address)",
          "setHub(address)"
        ],
        "linkReferences": [],
        "errors": [],
        "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": "_owner",
              "offset": 0,
              "slot": "51",
              "type": "t_address",
              "contract": "OwnableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22"
            },
            {
              "label": "__gap",
              "offset": 0,
              "slot": "52",
              "type": "t_array(t_uint256)49_storage",
              "contract": "OwnableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94"
            },
            {
              "label": "HUB",
              "offset": 0,
              "slot": "101",
              "type": "t_address",
              "contract": "HubControllableUpgradeable",
              "src": "contracts/common/access/HubControllableUpgradeable.sol:10"
            }
          ],
          "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_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint8": {
              "label": "uint8",
              "numberOfBytes": "1"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "contracts/common/access/Whitelistable.sol:Whitelistable": {
        "src": "contracts/common/access/Whitelistable.sol:10",
        "inherit": [
          "@openzeppelin/contracts/access/Ownable.sol:Ownable",
          "@openzeppelin/contracts/utils/Context.sol:Context",
          "contracts/common/interfaces/IWhitelistable.sol:IWhitelistable"
        ],
        "libraries": [
          "@openzeppelin/contracts/utils/structs/EnumerableSet.sol:EnumerableSet",
          "contracts/common/libraries/Errors.sol:Errors"
        ],
        "methods": [
          "getWhitelistCount()",
          "getWhitelistMember(uint256)",
          "isWhitelisted(address)",
          "addToWhitelist(address)",
          "removeFromWhitelist(address)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [
            {
              "label": "_owner",
              "offset": 0,
              "slot": "0",
              "type": "t_address",
              "contract": "Ownable",
              "src": "@openzeppelin/contracts/access/Ownable.sol:21"
            },
            {
              "label": "_whitelist",
              "offset": 0,
              "slot": "1",
              "type": "t_struct(AddressSet)19533_storage",
              "contract": "Whitelistable",
              "src": "contracts/common/access/Whitelistable.sol:13"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_array(t_bytes32)dyn_storage": {
              "label": "bytes32[]",
              "numberOfBytes": "32"
            },
            "t_bytes32": {
              "label": "bytes32",
              "numberOfBytes": "32"
            },
            "t_mapping(t_bytes32,t_uint256)": {
              "label": "mapping(bytes32 => uint256)",
              "numberOfBytes": "32"
            },
            "t_struct(AddressSet)19533_storage": {
              "label": "struct EnumerableSet.AddressSet",
              "members": [
                {
                  "label": "_inner",
                  "type": "t_struct(Set)19218_storage",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "64"
            },
            "t_struct(Set)19218_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"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "contracts/common/interfaces/ICertificateNFT.sol:ICertificateNFT": {
        "src": "contracts/common/interfaces/ICertificateNFT.sol:6",
        "inherit": [
          "@openzeppelin/contracts/token/ERC721/IERC721.sol:IERC721",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165"
        ],
        "libraries": [],
        "methods": [
          "safeMint(address,string)",
          "transferOwnership(address)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "contracts/common/interfaces/IEnergyWallet.sol:IEnergyWallet": {
        "src": "contracts/common/interfaces/IEnergyWallet.sol:4",
        "inherit": [],
        "libraries": [],
        "methods": [
          "totalEnergyOf(uint256)",
          "freeEnergyOf(uint256)",
          "allocatedEnergyOf(uint256)",
          "receivedEnergyOf(uint256)",
          "energizedBy(uint256,uint256)",
          "energizersOf(uint256,uint256)",
          "totalEnergizedBy(uint256)",
          "totalEnergizersOf(uint256)",
          "giveEnergy(uint256,uint256,uint256)",
          "removeEnergy(uint256,uint256,uint256)",
          "createEnergyFor(uint256,uint256)",
          "destroyEnergyFor(uint256,uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "contracts/common/interfaces/IMy3SecHub.sol:IMy3SecHub": {
        "src": "contracts/common/interfaces/IMy3SecHub.sol:6",
        "inherit": [],
        "libraries": [],
        "methods": [
          "getDefaultProfile(address)",
          "getProfileAccount(uint256)",
          "getProfile(uint256)",
          "setDefaultProfile(uint256)",
          "createProfile((string))",
          "updateProfile(uint256,(string))",
          "giveEnergyTo(uint256,uint256)",
          "removeEnergyFrom(uint256,uint256)",
          "getOrganizationCount()",
          "getOrganization(uint256)",
          "hasWithdrawn(address,uint256,uint256)",
          "createOrganization(string)",
          "registerOrganization(address)",
          "joinOrganization(address)",
          "leaveOrganization(address)",
          "logTime(address,uint256,uint256)",
          "withdraw(address,uint256)",
          "issueCertificate(uint256,string)",
          "issueCertificate(address,uint256,string)",
          "emitPendingMemberApproved(address,uint256)",
          "emitPendingMemberRejected(address,uint256)",
          "emitProjectCreated(address,uint256)",
          "emitProjectUpdated(address,uint256)",
          "emitProjectMemberAdded(address,uint256,uint256)",
          "emitProjectMemberRemoved(address,uint256,uint256)",
          "emitTaskCreated(address,uint256,uint256)",
          "emitTaskUpdated(address,uint256)",
          "emitTaskMemberAdded(address,uint256,uint256)",
          "emitTaskMemberRemoved(address,uint256,uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "contracts/common/interfaces/IMy3SecProfiles.sol:IMy3SecProfiles": {
        "src": "contracts/common/interfaces/IMy3SecProfiles.sol:6",
        "inherit": [
          "@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.sol:IERC721Upgradeable",
          "@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol:IERC165Upgradeable"
        ],
        "libraries": [],
        "methods": [
          "getDefaultProfileId(address)",
          "setDefaultProfile(address,uint256)",
          "createProfile(address,string)",
          "updateProfile(uint256,string)",
          "tokenURI(uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "contracts/common/interfaces/IMy3SecToken.sol:IMy3SecToken": {
        "src": "contracts/common/interfaces/IMy3SecToken.sol:6",
        "inherit": [
          "@openzeppelin/contracts/token/ERC20/IERC20.sol:IERC20"
        ],
        "libraries": [],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "contracts/common/interfaces/IOrganization.sol:IOrganization": {
        "src": "contracts/common/interfaces/IOrganization.sol:7",
        "inherit": [
          "contracts/common/interfaces/IWhitelistable.sol:IWhitelistable"
        ],
        "libraries": [],
        "methods": [
          "getMetadataURI()",
          "getMemberCount()",
          "getMember(uint256)",
          "isMember(uint256)",
          "getPendingMemberCount()",
          "getPendingMember(uint256)",
          "isPendingMember(uint256)",
          "setMetadataURI(string)",
          "join(uint256)",
          "leave(uint256)",
          "approvePendingMember(uint256)",
          "rejectPendingMember(uint256)",
          "getProjectCount()",
          "getProject(uint256)",
          "getProjectMemberCount(uint256)",
          "getProjectMember(uint256,uint256)",
          "isProjectMember(uint256,uint256)",
          "createProject((string))",
          "updateProject(uint256,(string,uint8))",
          "addProjectMember(uint256,uint256)",
          "removeProjectMember(uint256,uint256)",
          "getTaskCount(uint256)",
          "getTask(uint256,uint256)",
          "getTask(uint256)",
          "getTaskMemberCount(uint256)",
          "getTaskMember(uint256,uint256)",
          "isTaskMember(uint256,uint256)",
          "getTaskLoggedTimeCount(uint256)",
          "getTaskLoggedTime(uint256,uint256)",
          "getTaskLoggedTimeOfProfile(uint256,uint256)",
          "createTask(uint256,(string,uint256[]))",
          "updateTask(uint256,(string,uint8,uint256[]))",
          "addTaskMember(uint256,uint256)",
          "removeTaskMember(uint256,uint256)",
          "updateTaskTime(uint256,uint256,uint256)",
          "transferOwnership(address)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "contracts/common/interfaces/ISkillRegistry.sol:ISkillRegistry": {
        "src": "contracts/common/interfaces/ISkillRegistry.sol:6",
        "inherit": [],
        "libraries": [],
        "methods": [
          "getSkillCount()",
          "getSkill(uint256)",
          "getBaseURI()",
          "setBaseURI(string)",
          "createSkill((string))",
          "updateSkill(uint256,(string))"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "contracts/common/interfaces/ISkillWallet.sol:ISkillWallet": {
        "src": "contracts/common/interfaces/ISkillWallet.sol:4",
        "inherit": [],
        "libraries": [],
        "methods": [
          "getSkillCount(uint256)",
          "getSkill(uint256,uint256)",
          "recordExperience(uint256,uint256,uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "contracts/common/interfaces/ITimeWallet.sol:ITimeWallet": {
        "src": "contracts/common/interfaces/ITimeWallet.sol:4",
        "inherit": [],
        "libraries": [],
        "methods": [
          "spendTimeFor(uint256,uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "contracts/common/interfaces/IWhitelistable.sol:IWhitelistable": {
        "src": "contracts/common/interfaces/IWhitelistable.sol:4",
        "inherit": [],
        "libraries": [],
        "methods": [
          "getWhitelistCount()",
          "getWhitelistMember(uint256)",
          "isWhitelisted(address)",
          "addToWhitelist(address)",
          "removeFromWhitelist(address)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "contracts/common/libraries/Constants.sol:Constants": {
        "src": "contracts/common/libraries/Constants.sol:4",
        "version": {
          "withMetadata": "51ff7b816f2b43c570c57eaf797760a5f023cb6bb0c6c35c25bae7bb9b57a033",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "contracts/common/libraries/DataTypes.sol:DataTypes": {
        "src": "contracts/common/libraries/DataTypes.sol:7",
        "version": {
          "withMetadata": "90f3afae1b1b4ad57f05973f93b86c11e1b5d7f1d2fcff71d5d084a6f247e396",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "contracts/common/libraries/Errors.sol:Errors": {
        "src": "contracts/common/libraries/Errors.sol:4",
        "version": {
          "withMetadata": "226d6c8feff39ee37efde6c4c559b3c6798d2412c5724841e491c4a30fa44350",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "contracts/common/libraries/Events.sol:Events": {
        "src": "contracts/common/libraries/Events.sol:4",
        "version": {
          "withMetadata": "e55879e73d674d7b8f5032fbe966b4c594a5bccb7414025e54d964ea93148de9",
          "withoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db",
          "linkedWithoutMetadata": "a64c6cf9c6ba9368f5132c93a0196b3204a7963dbb4dd05dfddb4ab23126b8db"
        },
        "inherit": [],
        "libraries": [],
        "methods": [],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "contracts/governance/My3SecGovernance.sol:My3SecGovernance": {
        "src": "contracts/governance/My3SecGovernance.sol:13",
        "version": {
          "withMetadata": "68faf728b86ce76ac0eadf0a2c0a0c45177f645a68227527bdeab98e7d7e7d32",
          "withoutMetadata": "719423b6386fd864ab46f511de80b68fc5b744108ff1fbbde7bc16edc2d22fcd",
          "linkedWithoutMetadata": "719423b6386fd864ab46f511de80b68fc5b744108ff1fbbde7bc16edc2d22fcd"
        },
        "inherit": [
          "@openzeppelin/contracts/governance/extensions/GovernorTimelockControl.sol:GovernorTimelockControl",
          "@openzeppelin/contracts/governance/extensions/GovernorVotesQuorumFraction.sol:GovernorVotesQuorumFraction",
          "@openzeppelin/contracts/governance/extensions/GovernorVotes.sol:GovernorVotes",
          "@openzeppelin/contracts/governance/extensions/GovernorCountingSimple.sol:GovernorCountingSimple",
          "@openzeppelin/contracts/governance/extensions/GovernorSettings.sol:GovernorSettings",
          "@openzeppelin/contracts/governance/Governor.sol:Governor",
          "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol:IERC1155Receiver",
          "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol:IERC721Receiver",
          "@openzeppelin/contracts/governance/extensions/IGovernorTimelock.sol:IGovernorTimelock",
          "@openzeppelin/contracts/governance/IGovernor.sol:IGovernor",
          "@openzeppelin/contracts/utils/cryptography/EIP712.sol:EIP712",
          "@openzeppelin/contracts/utils/introspection/ERC165.sol:ERC165",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165",
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [
          "contracts/common/libraries/Constants.sol:Constants"
        ],
        "methods": [
          "(address,address)",
          "votingDelay()",
          "votingPeriod()",
          "quorum(uint256)",
          "state(uint256)",
          "propose(address[],uint256[],bytes[],string)",
          "proposalThreshold()",
          "supportsInterface(bytes4)"
        ],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "My3SecGovernance",
            "src": "contracts/governance/My3SecGovernance.sol:21"
          }
        ],
        "layout": {
          "storage": [
            {
              "label": "_name",
              "offset": 0,
              "slot": "0",
              "type": "t_string_storage",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:45"
            },
            {
              "label": "_proposals",
              "offset": 0,
              "slot": "1",
              "type": "t_mapping(t_uint256,t_struct(ProposalCore)5698_storage)",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:47"
            },
            {
              "label": "_governanceCall",
              "offset": 0,
              "slot": "2",
              "type": "t_struct(Bytes32Deque)17763_storage",
              "contract": "Governor",
              "src": "@openzeppelin/contracts/governance/Governor.sol:53"
            },
            {
              "label": "_votingDelay",
              "offset": 0,
              "slot": "4",
              "type": "t_uint256",
              "contract": "GovernorSettings",
              "src": "@openzeppelin/contracts/governance/extensions/GovernorSettings.sol:14"
            },
            {
              "label": "_votingPeriod",
              "offset": 0,
              "slot": "5",
              "type": "t_uint256",
              "contract": "GovernorSettings",
              "src": "@openzeppelin/contracts/governance/extensions/GovernorSettings.sol:15"
            },
            {
              "label": "_proposalThreshold",
              "offset": 0,
              "slot": "6",
              "type": "t_uint256",
              "contract": "GovernorSettings",
              "src": "@openzeppelin/contracts/governance/extensions/GovernorSettings.sol:16"
            },
            {
              "label": "_proposalVotes",
              "offset": 0,
              "slot": "7",
              "type": "t_mapping(t_uint256,t_struct(ProposalVote)8180_storage)",
              "contract": "GovernorCountingSimple",
              "src": "@openzeppelin/contracts/governance/extensions/GovernorCountingSimple.sol:30"
            },
            {
              "label": "_quorumNumerator",
              "offset": 0,
              "slot": "8",
              "type": "t_uint256",
              "contract": "GovernorVotesQuorumFraction",
              "src": "@openzeppelin/contracts/governance/extensions/GovernorVotesQuorumFraction.sol:19"
            },
            {
              "label": "_quorumNumeratorHistory",
              "offset": 0,
              "slot": "9",
              "type": "t_struct(History)12941_storage",
              "contract": "GovernorVotesQuorumFraction",
              "src": "@openzeppelin/contracts/governance/extensions/GovernorVotesQuorumFraction.sol:20"
            },
            {
              "label": "_timelock",
              "offset": 0,
              "slot": "10",
              "type": "t_contract(TimelockController)8159",
              "contract": "GovernorTimelockControl",
              "src": "@openzeppelin/contracts/governance/extensions/GovernorTimelockControl.sol:27"
            },
            {
              "label": "_timelockIds",
              "offset": 0,
              "slot": "11",
              "type": "t_mapping(t_uint256,t_bytes32)",
              "contract": "GovernorTimelockControl",
              "src": "@openzeppelin/contracts/governance/extensions/GovernorTimelockControl.sol:28"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_array(t_struct(Checkpoint)12946_storage)dyn_storage": {
              "label": "struct Checkpoints.Checkpoint[]",
              "numberOfBytes": "32"
            },
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_bytes32": {
              "label": "bytes32",
              "numberOfBytes": "32"
            },
            "t_contract(TimelockController)8159": {
              "label": "contract TimelockController",
              "numberOfBytes": "20"
            },
            "t_int128": {
              "label": "int128",
              "numberOfBytes": "16"
            },
            "t_mapping(t_address,t_bool)": {
              "label": "mapping(address => bool)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_int128,t_bytes32)": {
              "label": "mapping(int128 => bytes32)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_bytes32)": {
              "label": "mapping(uint256 => bytes32)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_struct(ProposalCore)5698_storage)": {
              "label": "mapping(uint256 => struct Governor.ProposalCore)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_struct(ProposalVote)8180_storage)": {
              "label": "mapping(uint256 => struct GovernorCountingSimple.ProposalVote)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_struct(BlockNumber)14684_storage": {
              "label": "struct Timers.BlockNumber",
              "members": [
                {
                  "label": "_deadline",
                  "type": "t_uint64",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "32"
            },
            "t_struct(Bytes32Deque)17763_storage": {
              "label": "struct DoubleEndedQueue.Bytes32Deque",
              "members": [
                {
                  "label": "_begin",
                  "type": "t_int128",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "_end",
                  "type": "t_int128",
                  "offset": 16,
                  "slot": "0"
                },
                {
                  "label": "_data",
                  "type": "t_mapping(t_int128,t_bytes32)",
                  "offset": 0,
                  "slot": "1"
                }
              ],
              "numberOfBytes": "64"
            },
            "t_struct(Checkpoint)12946_storage": {
              "label": "struct Checkpoints.Checkpoint",
              "members": [
                {
                  "label": "_blockNumber",
                  "type": "t_uint32",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "_value",
                  "type": "t_uint224",
                  "offset": 4,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "32"
            },
            "t_struct(History)12941_storage": {
              "label": "struct Checkpoints.History",
              "members": [
                {
                  "label": "_checkpoints",
                  "type": "t_array(t_struct(Checkpoint)12946_storage)dyn_storage",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "32"
            },
            "t_struct(ProposalCore)5698_storage": {
              "label": "struct Governor.ProposalCore",
              "members": [
                {
                  "label": "voteStart",
                  "type": "t_struct(BlockNumber)14684_storage",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "voteEnd",
                  "type": "t_struct(BlockNumber)14684_storage",
                  "offset": 0,
                  "slot": "1"
                },
                {
                  "label": "executed",
                  "type": "t_bool",
                  "offset": 0,
                  "slot": "2"
                },
                {
                  "label": "canceled",
                  "type": "t_bool",
                  "offset": 1,
                  "slot": "2"
                }
              ],
              "numberOfBytes": "96"
            },
            "t_struct(ProposalVote)8180_storage": {
              "label": "struct GovernorCountingSimple.ProposalVote",
              "members": [
                {
                  "label": "againstVotes",
                  "type": "t_uint256",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "forVotes",
                  "type": "t_uint256",
                  "offset": 0,
                  "slot": "1"
                },
                {
                  "label": "abstainVotes",
                  "type": "t_uint256",
                  "offset": 0,
                  "slot": "2"
                },
                {
                  "label": "hasVoted",
                  "type": "t_mapping(t_address,t_bool)",
                  "offset": 0,
                  "slot": "3"
                }
              ],
              "numberOfBytes": "128"
            },
            "t_uint224": {
              "label": "uint224",
              "numberOfBytes": "28"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint32": {
              "label": "uint32",
              "numberOfBytes": "4"
            },
            "t_uint64": {
              "label": "uint64",
              "numberOfBytes": "8"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "contracts/governance/My3SecToken.sol:My3SecToken": {
        "src": "contracts/governance/My3SecToken.sol:21",
        "version": {
          "withMetadata": "2ab9f267bc8c0ba39dc8b1dbe44215299252f3c3369ae671e42e444bce7f9141",
          "withoutMetadata": "2ab9f267bc8c0ba39dc8b1dbe44215299252f3c3369ae671e42e444bce7f9141",
          "linkedWithoutMetadata": "2ab9f267bc8c0ba39dc8b1dbe44215299252f3c3369ae671e42e444bce7f9141"
        },
        "inherit": [
          "contracts/common/access/HubControllable.sol:HubControllable",
          "@openzeppelin/contracts/token/ERC20/extensions/ERC20Votes.sol:ERC20Votes",
          "@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol:ERC20Permit",
          "@openzeppelin/contracts/utils/cryptography/EIP712.sol:EIP712",
          "@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol:IERC20Permit",
          "@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol:ERC20Burnable",
          "@openzeppelin/contracts/token/ERC20/ERC20.sol:ERC20",
          "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol:IERC20Metadata",
          "@openzeppelin/contracts/token/ERC20/IERC20.sol:IERC20",
          "@openzeppelin/contracts/utils/Context.sol:Context",
          "@openzeppelin/contracts/governance/utils/IVotes.sol:IVotes"
        ],
        "libraries": [],
        "methods": [
          "(address,uint256)",
          "mint(address,uint256)"
        ],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "My3SecToken",
            "src": "contracts/governance/My3SecToken.sol:26"
          }
        ],
        "layout": {
          "storage": [
            {
              "label": "_balances",
              "offset": 0,
              "slot": "0",
              "type": "t_mapping(t_address,t_uint256)",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:36"
            },
            {
              "label": "_allowances",
              "offset": 0,
              "slot": "1",
              "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:38"
            },
            {
              "label": "_totalSupply",
              "offset": 0,
              "slot": "2",
              "type": "t_uint256",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:40"
            },
            {
              "label": "_name",
              "offset": 0,
              "slot": "3",
              "type": "t_string_storage",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:42"
            },
            {
              "label": "_symbol",
              "offset": 0,
              "slot": "4",
              "type": "t_string_storage",
              "contract": "ERC20",
              "src": "@openzeppelin/contracts/token/ERC20/ERC20.sol:43"
            },
            {
              "label": "_nonces",
              "offset": 0,
              "slot": "5",
              "type": "t_mapping(t_address,t_struct(Counter)14330_storage)",
              "contract": "ERC20Permit",
              "src": "@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol:25"
            },
            {
              "label": "_PERMIT_TYPEHASH_DEPRECATED_SLOT",
              "offset": 0,
              "slot": "6",
              "type": "t_bytes32",
              "contract": "ERC20Permit",
              "src": "@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol:37",
              "renamedFrom": "_PERMIT_TYPEHASH"
            },
            {
              "label": "_delegates",
              "offset": 0,
              "slot": "7",
              "type": "t_mapping(t_address,t_address)",
              "contract": "ERC20Votes",
              "src": "@openzeppelin/contracts/token/ERC20/extensions/ERC20Votes.sol:36"
            },
            {
              "label": "_checkpoints",
              "offset": 0,
              "slot": "8",
              "type": "t_mapping(t_address,t_array(t_struct(Checkpoint)10071_storage)dyn_storage)",
              "contract": "ERC20Votes",
              "src": "@openzeppelin/contracts/token/ERC20/extensions/ERC20Votes.sol:37"
            },
            {
              "label": "_totalSupplyCheckpoints",
              "offset": 0,
              "slot": "9",
              "type": "t_array(t_struct(Checkpoint)10071_storage)dyn_storage",
              "contract": "ERC20Votes",
              "src": "@openzeppelin/contracts/token/ERC20/extensions/ERC20Votes.sol:38"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_array(t_struct(Checkpoint)10071_storage)dyn_storage": {
              "label": "struct ERC20Votes.Checkpoint[]",
              "numberOfBytes": "32"
            },
            "t_bytes32": {
              "label": "bytes32",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_address)": {
              "label": "mapping(address => address)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_array(t_struct(Checkpoint)10071_storage)dyn_storage)": {
              "label": "mapping(address => struct ERC20Votes.Checkpoint[])",
              "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_struct(Counter)14330_storage)": {
              "label": "mapping(address => struct Counters.Counter)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_uint256)": {
              "label": "mapping(address => uint256)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_struct(Checkpoint)10071_storage": {
              "label": "struct ERC20Votes.Checkpoint",
              "members": [
                {
                  "label": "fromBlock",
                  "type": "t_uint32",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "votes",
                  "type": "t_uint224",
                  "offset": 4,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "32"
            },
            "t_struct(Counter)14330_storage": {
              "label": "struct Counters.Counter",
              "members": [
                {
                  "label": "_value",
                  "type": "t_uint256",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "32"
            },
            "t_uint224": {
              "label": "uint224",
              "numberOfBytes": "28"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint32": {
              "label": "uint32",
              "numberOfBytes": "4"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "contracts/governance/SkillRegistry.sol:SkillRegistry": {
        "src": "contracts/governance/SkillRegistry.sol:12",
        "version": {
          "withMetadata": "e20e42857ab1065ef1b12a3205340bb00f9fd81fc58d5188ada7501dba31b1be",
          "withoutMetadata": "9e72349f835758a6dd0333013b047ec698dc48d1e0929704916a8c62d0b3204d",
          "linkedWithoutMetadata": "9e72349f835758a6dd0333013b047ec698dc48d1e0929704916a8c62d0b3204d"
        },
        "inherit": [
          "@openzeppelin/contracts/access/Ownable.sol:Ownable",
          "@openzeppelin/contracts/utils/Context.sol:Context",
          "contracts/common/interfaces/ISkillRegistry.sol:ISkillRegistry"
        ],
        "libraries": [
          "@openzeppelin/contracts/utils/Strings.sol:Strings",
          "contracts/common/libraries/Errors.sol:Errors",
          "contracts/common/libraries/DataTypes.sol:DataTypes",
          "contracts/common/libraries/Events.sol:Events"
        ],
        "methods": [
          "(string)",
          "getSkillCount()",
          "getSkill(uint256)",
          "getBaseURI()",
          "setBaseURI(string)",
          "createSkill((string))",
          "updateSkill(uint256,(string))"
        ],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "SkillRegistry",
            "src": "contracts/governance/SkillRegistry.sol:32"
          }
        ],
        "layout": {
          "storage": [
            {
              "label": "_owner",
              "offset": 0,
              "slot": "0",
              "type": "t_address",
              "contract": "Ownable",
              "src": "@openzeppelin/contracts/access/Ownable.sol:21"
            },
            {
              "label": "_skills",
              "offset": 0,
              "slot": "1",
              "type": "t_array(t_string_storage)dyn_storage",
              "contract": "SkillRegistry",
              "src": "contracts/governance/SkillRegistry.sol:15"
            },
            {
              "label": "_baseURI",
              "offset": 0,
              "slot": "2",
              "type": "t_string_storage",
              "contract": "SkillRegistry",
              "src": "contracts/governance/SkillRegistry.sol:16"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_array(t_string_storage)dyn_storage": {
              "label": "string[]",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "contracts/governance/Timelock.sol:Timelock": {
        "src": "contracts/governance/Timelock.sol:8",
        "version": {
          "withMetadata": "2e3cd00f11ddbdad61819f09974a6c565f273e94a59f5b903a3a962b78c3a6c2",
          "withoutMetadata": "2e3cd00f11ddbdad61819f09974a6c565f273e94a59f5b903a3a962b78c3a6c2",
          "linkedWithoutMetadata": "2e3cd00f11ddbdad61819f09974a6c565f273e94a59f5b903a3a962b78c3a6c2"
        },
        "inherit": [
          "@openzeppelin/contracts/governance/TimelockController.sol:TimelockController",
          "@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol:IERC1155Receiver",
          "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol:IERC721Receiver",
          "@openzeppelin/contracts/access/AccessControl.sol:AccessControl",
          "@openzeppelin/contracts/utils/introspection/ERC165.sol:ERC165",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165",
          "@openzeppelin/contracts/access/IAccessControl.sol:IAccessControl",
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [
          "contracts/common/libraries/Constants.sol:Constants"
        ],
        "methods": [
          "(address[],address[])"
        ],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "Timelock",
            "src": "contracts/governance/Timelock.sol:9"
          }
        ],
        "layout": {
          "storage": [
            {
              "label": "_roles",
              "offset": 0,
              "slot": "0",
              "type": "t_mapping(t_bytes32,t_struct(RoleData)5158_storage)",
              "contract": "AccessControl",
              "src": "@openzeppelin/contracts/access/AccessControl.sol:55"
            },
            {
              "label": "_timestamps",
              "offset": 0,
              "slot": "1",
              "type": "t_mapping(t_bytes32,t_uint256)",
              "contract": "TimelockController",
              "src": "@openzeppelin/contracts/governance/TimelockController.sol:33"
            },
            {
              "label": "_minDelay",
              "offset": 0,
              "slot": "2",
              "type": "t_uint256",
              "contract": "TimelockController",
              "src": "@openzeppelin/contracts/governance/TimelockController.sol:34"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_bytes32": {
              "label": "bytes32",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_bool)": {
              "label": "mapping(address => bool)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_bytes32,t_struct(RoleData)5158_storage)": {
              "label": "mapping(bytes32 => struct AccessControl.RoleData)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_bytes32,t_uint256)": {
              "label": "mapping(bytes32 => uint256)",
              "numberOfBytes": "32"
            },
            "t_struct(RoleData)5158_storage": {
              "label": "struct AccessControl.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"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "contracts/organizations/CertificateNFT.sol:CertificateNFT": {
        "src": "contracts/organizations/CertificateNFT.sol:9",
        "version": {
          "withMetadata": "cea883364e60b7f2a07c2abc1fab39fe953d186663724ab22aa9cc1d086e13f5",
          "withoutMetadata": "15f81bcb76b1a7d97e674359034752fe7401662bcf05adc1d88f22d7bf77f984",
          "linkedWithoutMetadata": "15f81bcb76b1a7d97e674359034752fe7401662bcf05adc1d88f22d7bf77f984"
        },
        "inherit": [
          "@openzeppelin/contracts/access/Ownable.sol:Ownable",
          "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol:ERC721URIStorage",
          "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol:ERC721Enumerable",
          "@openzeppelin/contracts/token/ERC721/extensions/IERC721Enumerable.sol:IERC721Enumerable",
          "@openzeppelin/contracts/token/ERC721/ERC721.sol:ERC721",
          "@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol:IERC721Metadata",
          "@openzeppelin/contracts/token/ERC721/IERC721.sol:IERC721",
          "@openzeppelin/contracts/utils/introspection/ERC165.sol:ERC165",
          "@openzeppelin/contracts/utils/introspection/IERC165.sol:IERC165",
          "@openzeppelin/contracts/utils/Context.sol:Context"
        ],
        "libraries": [],
        "methods": [
          "()",
          "safeMint(address,string)",
          "tokenURI(uint256)",
          "supportsInterface(bytes4)"
        ],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "CertificateNFT",
            "src": "contracts/organizations/CertificateNFT.sol:12"
          }
        ],
        "layout": {
          "storage": [
            {
              "label": "_name",
              "offset": 0,
              "slot": "0",
              "type": "t_string_storage",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:24"
            },
            {
              "label": "_symbol",
              "offset": 0,
              "slot": "1",
              "type": "t_string_storage",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:27"
            },
            {
              "label": "_owners",
              "offset": 0,
              "slot": "2",
              "type": "t_mapping(t_uint256,t_address)",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:30"
            },
            {
              "label": "_balances",
              "offset": 0,
              "slot": "3",
              "type": "t_mapping(t_address,t_uint256)",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:33"
            },
            {
              "label": "_tokenApprovals",
              "offset": 0,
              "slot": "4",
              "type": "t_mapping(t_uint256,t_address)",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:36"
            },
            {
              "label": "_operatorApprovals",
              "offset": 0,
              "slot": "5",
              "type": "t_mapping(t_address,t_mapping(t_address,t_bool))",
              "contract": "ERC721",
              "src": "@openzeppelin/contracts/token/ERC721/ERC721.sol:39"
            },
            {
              "label": "_ownedTokens",
              "offset": 0,
              "slot": "6",
              "type": "t_mapping(t_address,t_mapping(t_uint256,t_uint256))",
              "contract": "ERC721Enumerable",
              "src": "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol:16"
            },
            {
              "label": "_ownedTokensIndex",
              "offset": 0,
              "slot": "7",
              "type": "t_mapping(t_uint256,t_uint256)",
              "contract": "ERC721Enumerable",
              "src": "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol:19"
            },
            {
              "label": "_allTokens",
              "offset": 0,
              "slot": "8",
              "type": "t_array(t_uint256)dyn_storage",
              "contract": "ERC721Enumerable",
              "src": "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol:22"
            },
            {
              "label": "_allTokensIndex",
              "offset": 0,
              "slot": "9",
              "type": "t_mapping(t_uint256,t_uint256)",
              "contract": "ERC721Enumerable",
              "src": "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol:25"
            },
            {
              "label": "_tokenURIs",
              "offset": 0,
              "slot": "10",
              "type": "t_mapping(t_uint256,t_string_storage)",
              "contract": "ERC721URIStorage",
              "src": "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol:15"
            },
            {
              "label": "_owner",
              "offset": 0,
              "slot": "11",
              "type": "t_address",
              "contract": "Ownable",
              "src": "@openzeppelin/contracts/access/Ownable.sol:21"
            },
            {
              "label": "_tokenIdCounter",
              "offset": 0,
              "slot": "12",
              "type": "t_uint256",
              "contract": "CertificateNFT",
              "src": "contracts/organizations/CertificateNFT.sol:10"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_array(t_uint256)dyn_storage": {
              "label": "uint256[]",
              "numberOfBytes": "32"
            },
            "t_bool": {
              "label": "bool",
              "numberOfBytes": "1"
            },
            "t_mapping(t_address,t_bool)": {
              "label": "mapping(address => bool)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_mapping(t_address,t_bool))": {
              "label": "mapping(address => mapping(address => bool))",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_mapping(t_uint256,t_uint256))": {
              "label": "mapping(address => mapping(uint256 => uint256))",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_uint256)": {
              "label": "mapping(address => uint256)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_address)": {
              "label": "mapping(uint256 => address)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_string_storage)": {
              "label": "mapping(uint256 => string)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_uint256)": {
              "label": "mapping(uint256 => uint256)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "contracts/organizations/Organization.sol:Organization": {
        "src": "contracts/organizations/Organization.sol:15",
        "version": {
          "withMetadata": "6b29f60348db8f1d37f19d0ba7e93e3182bac914898100c64448c1fe761070df",
          "withoutMetadata": "228dd52c97c71c4532d970fe8c71d196c0e6363c18978eea5a32f3076875c3ca",
          "linkedWithoutMetadata": "228dd52c97c71c4532d970fe8c71d196c0e6363c18978eea5a32f3076875c3ca"
        },
        "inherit": [
          "contracts/common/access/Whitelistable.sol:Whitelistable",
          "@openzeppelin/contracts/access/Ownable.sol:Ownable",
          "@openzeppelin/contracts/utils/Context.sol:Context",
          "contracts/common/access/HubControllable.sol:HubControllable",
          "contracts/common/interfaces/IOrganization.sol:IOrganization",
          "contracts/common/interfaces/IWhitelistable.sol:IWhitelistable"
        ],
        "libraries": [
          "@openzeppelin/contracts/utils/structs/EnumerableMap.sol:EnumerableMap",
          "@openzeppelin/contracts/utils/structs/EnumerableSet.sol:EnumerableSet",
          "contracts/common/libraries/DataTypes.sol:DataTypes",
          "contracts/common/libraries/Errors.sol:Errors"
        ],
        "methods": [
          "(address,string)",
          "getMetadataURI()",
          "getMemberCount()",
          "getMember(uint256)",
          "isMember(uint256)",
          "getPendingMemberCount()",
          "getPendingMember(uint256)",
          "isPendingMember(uint256)",
          "setMetadataURI(string)",
          "join(uint256)",
          "leave(uint256)",
          "approvePendingMember(uint256)",
          "rejectPendingMember(uint256)",
          "getProjectCount()",
          "getProject(uint256)",
          "getProjectMemberCount(uint256)",
          "getProjectMember(uint256,uint256)",
          "isProjectMember(uint256,uint256)",
          "createProject((string))",
          "updateProject(uint256,(string,uint8))",
          "addProjectMember(uint256,uint256)",
          "removeProjectMember(uint256,uint256)",
          "getTaskCount(uint256)",
          "getTask(uint256,uint256)",
          "getTask(uint256)",
          "getTaskMemberCount(uint256)",
          "getTaskMember(uint256,uint256)",
          "isTaskMember(uint256,uint256)",
          "getTaskLoggedTimeCount(uint256)",
          "getTaskLoggedTime(uint256,uint256)",
          "getTaskLoggedTimeOfProfile(uint256,uint256)",
          "createTask(uint256,(string,uint256[]))",
          "updateTask(uint256,(string,uint8,uint256[]))",
          "addTaskMember(uint256,uint256)",
          "removeTaskMember(uint256,uint256)",
          "updateTaskTime(uint256,uint256,uint256)",
          "transferOwnership(address)"
        ],
        "linkReferences": [],
        "errors": [
          {
            "kind": "constructor",
            "contract": "Organization",
            "src": "contracts/organizations/Organization.sol:42"
          }
        ],
        "layout": {
          "storage": [
            {
              "label": "_owner",
              "offset": 0,
              "slot": "0",
              "type": "t_address",
              "contract": "Ownable",
              "src": "@openzeppelin/contracts/access/Ownable.sol:21"
            },
            {
              "label": "_whitelist",
              "offset": 0,
              "slot": "1",
              "type": "t_struct(AddressSet)19533_storage",
              "contract": "Whitelistable",
              "src": "contracts/common/access/Whitelistable.sol:13"
            },
            {
              "label": "_metadataURI",
              "offset": 0,
              "slot": "3",
              "type": "t_string_storage",
              "contract": "Organization",
              "src": "contracts/organizations/Organization.sol:19"
            },
            {
              "label": "_members",
              "offset": 0,
              "slot": "4",
              "type": "t_struct(UintSet)19690_storage",
              "contract": "Organization",
              "src": "contracts/organizations/Organization.sol:21"
            },
            {
              "label": "_pendingMembers",
              "offset": 0,
              "slot": "6",
              "type": "t_struct(UintSet)19690_storage",
              "contract": "Organization",
              "src": "contracts/organizations/Organization.sol:22"
            },
            {
              "label": "_projects",
              "offset": 0,
              "slot": "8",
              "type": "t_array(t_struct(Project)22053_storage)dyn_storage",
              "contract": "Organization",
              "src": "contracts/organizations/Organization.sol:24"
            },
            {
              "label": "_tasks",
              "offset": 0,
              "slot": "9",
              "type": "t_array(t_struct(Task)22100_storage)dyn_storage",
              "contract": "Organization",
              "src": "contracts/organizations/Organization.sol:25"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_array(t_bytes32)dyn_storage": {
              "label": "bytes32[]",
              "numberOfBytes": "32"
            },
            "t_array(t_struct(Project)22053_storage)dyn_storage": {
              "label": "struct DataTypes.Project[]",
              "numberOfBytes": "32"
            },
            "t_array(t_struct(Task)22100_storage)dyn_storage": {
              "label": "struct DataTypes.Task[]",
              "numberOfBytes": "32"
            },
            "t_array(t_uint256)dyn_storage": {
              "label": "uint256[]",
              "numberOfBytes": "32"
            },
            "t_bytes32": {
              "label": "bytes32",
              "numberOfBytes": "32"
            },
            "t_enum(ProjectStatus)22030": {
              "label": "enum DataTypes.ProjectStatus",
              "members": [
                "NOT_STARTED",
                "IN_PROGRESS",
                "COMPLETED",
                "CANCELED"
              ],
              "numberOfBytes": "1"
            },
            "t_enum(TaskStatus)22068": {
              "label": "enum DataTypes.TaskStatus",
              "members": [
                "NOT_STARTED",
                "IN_PROGRESS",
                "COMPLETED",
                "CANCELED"
              ],
              "numberOfBytes": "1"
            },
            "t_mapping(t_bytes32,t_bytes32)": {
              "label": "mapping(bytes32 => bytes32)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_bytes32,t_uint256)": {
              "label": "mapping(bytes32 => uint256)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_struct(AddressSet)19533_storage": {
              "label": "struct EnumerableSet.AddressSet",
              "members": [
                {
                  "label": "_inner",
                  "type": "t_struct(Set)19218_storage",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "64"
            },
            "t_struct(Bytes32Set)19412_storage": {
              "label": "struct EnumerableSet.Bytes32Set",
              "members": [
                {
                  "label": "_inner",
                  "type": "t_struct(Set)19218_storage",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "64"
            },
            "t_struct(Bytes32ToBytes32Map)18101_storage": {
              "label": "struct EnumerableMap.Bytes32ToBytes32Map",
              "members": [
                {
                  "label": "_keys",
                  "type": "t_struct(Bytes32Set)19412_storage",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "_values",
                  "type": "t_mapping(t_bytes32,t_bytes32)",
                  "offset": 0,
                  "slot": "2"
                }
              ],
              "numberOfBytes": "96"
            },
            "t_struct(Project)22053_storage": {
              "label": "struct DataTypes.Project",
              "members": [
                {
                  "label": "id",
                  "type": "t_uint256",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "metadataURI",
                  "type": "t_string_storage",
                  "offset": 0,
                  "slot": "1"
                },
                {
                  "label": "status",
                  "type": "t_enum(ProjectStatus)22030",
                  "offset": 0,
                  "slot": "2"
                },
                {
                  "label": "members",
                  "type": "t_struct(UintSet)19690_storage",
                  "offset": 0,
                  "slot": "3"
                },
                {
                  "label": "tasks",
                  "type": "t_array(t_uint256)dyn_storage",
                  "offset": 0,
                  "slot": "5"
                }
              ],
              "numberOfBytes": "192"
            },
            "t_struct(Set)19218_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_struct(Task)22100_storage": {
              "label": "struct DataTypes.Task",
              "members": [
                {
                  "label": "id",
                  "type": "t_uint256",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "metadataURI",
                  "type": "t_string_storage",
                  "offset": 0,
                  "slot": "1"
                },
                {
                  "label": "status",
                  "type": "t_enum(TaskStatus)22068",
                  "offset": 0,
                  "slot": "2"
                },
                {
                  "label": "skills",
                  "type": "t_array(t_uint256)dyn_storage",
                  "offset": 0,
                  "slot": "3"
                },
                {
                  "label": "members",
                  "type": "t_struct(UintSet)19690_storage",
                  "offset": 0,
                  "slot": "4"
                },
                {
                  "label": "loggedTime",
                  "type": "t_struct(UintToUintMap)18331_storage",
                  "offset": 0,
                  "slot": "6"
                }
              ],
              "numberOfBytes": "288"
            },
            "t_struct(UintSet)19690_storage": {
              "label": "struct EnumerableSet.UintSet",
              "members": [
                {
                  "label": "_inner",
                  "type": "t_struct(Set)19218_storage",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "64"
            },
            "t_struct(UintToUintMap)18331_storage": {
              "label": "struct EnumerableMap.UintToUintMap",
              "members": [
                {
                  "label": "_inner",
                  "type": "t_struct(Bytes32ToBytes32Map)18101_storage",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "96"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "contracts/organizations/OrganizationFactory.sol:OrganizationFactory": {
        "src": "contracts/organizations/OrganizationFactory.sol:8",
        "version": {
          "withMetadata": "dee8452e40108056d84b3566e4f08d4659ecb6117db37cba30acfacdce146cad",
          "withoutMetadata": "a1a612774fe32a1d31b080ddf1228e7d43b1588a531dddf15ab2f3ebb4a4c975",
          "linkedWithoutMetadata": "a1a612774fe32a1d31b080ddf1228e7d43b1588a531dddf15ab2f3ebb4a4c975"
        },
        "inherit": [],
        "libraries": [],
        "methods": [
          "createOrganization(address,string)"
        ],
        "linkReferences": [],
        "errors": [],
        "layout": {
          "storage": [],
          "types": {},
          "layoutVersion": "1.2",
          "flat": false
        },
        "solcVersion": "0.8.17"
      },
      "contracts/profiles/EnergyWallet.sol:EnergyWallet": {
        "src": "contracts/profiles/EnergyWallet.sol:13",
        "version": {
          "withMetadata": "2848737273baa14d1604f27352c6b64320d878bbe7cbb24ffe9666c4d4981d28",
          "withoutMetadata": "88d0fbd710def036ea69009dac61b3ac7ed264cb07e30c6edae8b10fed5fdb23",
          "linkedWithoutMetadata": "88d0fbd710def036ea69009dac61b3ac7ed264cb07e30c6edae8b10fed5fdb23"
        },
        "inherit": [
          "contracts/common/access/HubControllableUpgradeable.sol:HubControllableUpgradeable",
          "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:OwnableUpgradeable",
          "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:ContextUpgradeable",
          "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:Initializable",
          "contracts/common/interfaces/IEnergyWallet.sol:IEnergyWallet"
        ],
        "libraries": [
          "@openzeppelin/contracts-upgradeable/utils/structs/EnumerableMapUpgradeable.sol:EnumerableMapUpgradeable"
        ],
        "methods": [
          "initialize(address)",
          "totalEnergyOf(uint256)",
          "freeEnergyOf(uint256)",
          "allocatedEnergyOf(uint256)",
          "receivedEnergyOf(uint256)",
          "energizedBy(uint256,uint256)",
          "energizersOf(uint256,uint256)",
          "totalEnergizedBy(uint256)",
          "totalEnergizersOf(uint256)",
          "giveEnergy(uint256,uint256,uint256)",
          "removeEnergy(uint256,uint256,uint256)",
          "createEnergyFor(uint256,uint256)",
          "destroyEnergyFor(uint256,uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "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": "_owner",
              "offset": 0,
              "slot": "51",
              "type": "t_address",
              "contract": "OwnableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22"
            },
            {
              "label": "__gap",
              "offset": 0,
              "slot": "52",
              "type": "t_array(t_uint256)49_storage",
              "contract": "OwnableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94"
            },
            {
              "label": "HUB",
              "offset": 0,
              "slot": "101",
              "type": "t_address",
              "contract": "HubControllableUpgradeable",
              "src": "contracts/common/access/HubControllableUpgradeable.sol:10"
            },
            {
              "label": "_totalEnergy",
              "offset": 0,
              "slot": "102",
              "type": "t_mapping(t_uint256,t_uint256)",
              "contract": "EnergyWallet",
              "src": "contracts/profiles/EnergyWallet.sol:16"
            },
            {
              "label": "_allocatedEnergy",
              "offset": 0,
              "slot": "103",
              "type": "t_mapping(t_uint256,t_uint256)",
              "contract": "EnergyWallet",
              "src": "contracts/profiles/EnergyWallet.sol:17"
            },
            {
              "label": "_receivedEnergy",
              "offset": 0,
              "slot": "104",
              "type": "t_mapping(t_uint256,t_uint256)",
              "contract": "EnergyWallet",
              "src": "contracts/profiles/EnergyWallet.sol:18"
            },
            {
              "label": "_energyAllocationMap",
              "offset": 0,
              "slot": "105",
              "type": "t_mapping(t_uint256,t_struct(UintToUintMap)3649_storage)",
              "contract": "EnergyWallet",
              "src": "contracts/profiles/EnergyWallet.sol:19"
            },
            {
              "label": "_reverseEnergyAllocationMap",
              "offset": 0,
              "slot": "106",
              "type": "t_mapping(t_uint256,t_struct(UintToUintMap)3649_storage)",
              "contract": "EnergyWallet",
              "src": "contracts/profiles/EnergyWallet.sol:20"
            }
          ],
          "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_bytes32,t_bytes32)": {
              "label": "mapping(bytes32 => bytes32)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_bytes32,t_uint256)": {
              "label": "mapping(bytes32 => uint256)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_struct(UintToUintMap)3649_storage)": {
              "label": "mapping(uint256 => struct EnumerableMapUpgradeable.UintToUintMap)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_uint256)": {
              "label": "mapping(uint256 => uint256)",
              "numberOfBytes": "32"
            },
            "t_struct(Bytes32Set)4730_storage": {
              "label": "struct EnumerableSetUpgradeable.Bytes32Set",
              "members": [
                {
                  "label": "_inner",
                  "type": "t_struct(Set)4536_storage",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "64"
            },
            "t_struct(Bytes32ToBytes32Map)3419_storage": {
              "label": "struct EnumerableMapUpgradeable.Bytes32ToBytes32Map",
              "members": [
                {
                  "label": "_keys",
                  "type": "t_struct(Bytes32Set)4730_storage",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "_values",
                  "type": "t_mapping(t_bytes32,t_bytes32)",
                  "offset": 0,
                  "slot": "2"
                }
              ],
              "numberOfBytes": "96"
            },
            "t_struct(Set)4536_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_struct(UintToUintMap)3649_storage": {
              "label": "struct EnumerableMapUpgradeable.UintToUintMap",
              "members": [
                {
                  "label": "_inner",
                  "type": "t_struct(Bytes32ToBytes32Map)3419_storage",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "96"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint8": {
              "label": "uint8",
              "numberOfBytes": "1"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "contracts/profiles/My3SecProfiles.sol:My3SecProfiles": {
        "src": "contracts/profiles/My3SecProfiles.sol:12",
        "version": {
          "withMetadata": "26de49413020327e0c1c8b6cea15ee525608ea9125f18cd82ff8a1fc5cd4224a",
          "withoutMetadata": "d43d60a4c7f2dac29d98e9b739b50d2916ae862838f95aed71c5b8ee1ec23492",
          "linkedWithoutMetadata": "d43d60a4c7f2dac29d98e9b739b50d2916ae862838f95aed71c5b8ee1ec23492"
        },
        "inherit": [
          "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721URIStorageUpgradeable.sol:ERC721URIStorageUpgradeable",
          "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721EnumerableUpgradeable.sol:ERC721EnumerableUpgradeable",
          "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721EnumerableUpgradeable.sol:IERC721EnumerableUpgradeable",
          "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:ERC721Upgradeable",
          "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/IERC721MetadataUpgradeable.sol:IERC721MetadataUpgradeable",
          "contracts/common/access/HubControllableUpgradeable.sol:HubControllableUpgradeable",
          "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:OwnableUpgradeable",
          "contracts/common/interfaces/IMy3SecProfiles.sol:IMy3SecProfiles",
          "@openzeppelin/contracts-upgradeable/token/ERC721/IERC721Upgradeable.sol:IERC721Upgradeable",
          "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:ERC165Upgradeable",
          "@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol:IERC165Upgradeable",
          "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:ContextUpgradeable",
          "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:Initializable"
        ],
        "libraries": [
          "contracts/common/libraries/Errors.sol:Errors"
        ],
        "methods": [
          "initialize(address)",
          "getDefaultProfileId(address)",
          "setDefaultProfile(address,uint256)",
          "createProfile(address,string)",
          "updateProfile(uint256,string)",
          "tokenURI(uint256)",
          "supportsInterface(bytes4)"
        ],
        "linkReferences": [],
        "errors": [],
        "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": "_owner",
              "offset": 0,
              "slot": "101",
              "type": "t_address",
              "contract": "OwnableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22"
            },
            {
              "label": "__gap",
              "offset": 0,
              "slot": "102",
              "type": "t_array(t_uint256)49_storage",
              "contract": "OwnableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94"
            },
            {
              "label": "HUB",
              "offset": 0,
              "slot": "151",
              "type": "t_address",
              "contract": "HubControllableUpgradeable",
              "src": "contracts/common/access/HubControllableUpgradeable.sol:10"
            },
            {
              "label": "_name",
              "offset": 0,
              "slot": "152",
              "type": "t_string_storage",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:25"
            },
            {
              "label": "_symbol",
              "offset": 0,
              "slot": "153",
              "type": "t_string_storage",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:28"
            },
            {
              "label": "_owners",
              "offset": 0,
              "slot": "154",
              "type": "t_mapping(t_uint256,t_address)",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:31"
            },
            {
              "label": "_balances",
              "offset": 0,
              "slot": "155",
              "type": "t_mapping(t_address,t_uint256)",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:34"
            },
            {
              "label": "_tokenApprovals",
              "offset": 0,
              "slot": "156",
              "type": "t_mapping(t_uint256,t_address)",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:37"
            },
            {
              "label": "_operatorApprovals",
              "offset": 0,
              "slot": "157",
              "type": "t_mapping(t_address,t_mapping(t_address,t_bool))",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:40"
            },
            {
              "label": "__gap",
              "offset": 0,
              "slot": "158",
              "type": "t_array(t_uint256)44_storage",
              "contract": "ERC721Upgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol:514"
            },
            {
              "label": "_ownedTokens",
              "offset": 0,
              "slot": "202",
              "type": "t_mapping(t_address,t_mapping(t_uint256,t_uint256))",
              "contract": "ERC721EnumerableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721EnumerableUpgradeable.sol:22"
            },
            {
              "label": "_ownedTokensIndex",
              "offset": 0,
              "slot": "203",
              "type": "t_mapping(t_uint256,t_uint256)",
              "contract": "ERC721EnumerableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721EnumerableUpgradeable.sol:25"
            },
            {
              "label": "_allTokens",
              "offset": 0,
              "slot": "204",
              "type": "t_array(t_uint256)dyn_storage",
              "contract": "ERC721EnumerableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721EnumerableUpgradeable.sol:28"
            },
            {
              "label": "_allTokensIndex",
              "offset": 0,
              "slot": "205",
              "type": "t_mapping(t_uint256,t_uint256)",
              "contract": "ERC721EnumerableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721EnumerableUpgradeable.sol:31"
            },
            {
              "label": "__gap",
              "offset": 0,
              "slot": "206",
              "type": "t_array(t_uint256)46_storage",
              "contract": "ERC721EnumerableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721EnumerableUpgradeable.sol:171"
            },
            {
              "label": "_tokenURIs",
              "offset": 0,
              "slot": "252",
              "type": "t_mapping(t_uint256,t_string_storage)",
              "contract": "ERC721URIStorageUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721URIStorageUpgradeable.sol:21"
            },
            {
              "label": "__gap",
              "offset": 0,
              "slot": "253",
              "type": "t_array(t_uint256)49_storage",
              "contract": "ERC721URIStorageUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/token/ERC721/extensions/ERC721URIStorageUpgradeable.sol:74"
            },
            {
              "label": "_tokenIdCounter",
              "offset": 0,
              "slot": "302",
              "type": "t_uint256",
              "contract": "My3SecProfiles",
              "src": "contracts/profiles/My3SecProfiles.sol:19"
            },
            {
              "label": "_defaultProfileByAddress",
              "offset": 0,
              "slot": "303",
              "type": "t_mapping(t_address,t_uint256)",
              "contract": "My3SecProfiles",
              "src": "contracts/profiles/My3SecProfiles.sol:20"
            }
          ],
          "types": {
            "t_address": {
              "label": "address",
              "numberOfBytes": "20"
            },
            "t_array(t_uint256)44_storage": {
              "label": "uint256[44]",
              "numberOfBytes": "1408"
            },
            "t_array(t_uint256)46_storage": {
              "label": "uint256[46]",
              "numberOfBytes": "1472"
            },
            "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_mapping(t_address,t_bool)": {
              "label": "mapping(address => bool)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_mapping(t_address,t_bool))": {
              "label": "mapping(address => mapping(address => bool))",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_mapping(t_uint256,t_uint256))": {
              "label": "mapping(address => mapping(uint256 => uint256))",
              "numberOfBytes": "32"
            },
            "t_mapping(t_address,t_uint256)": {
              "label": "mapping(address => uint256)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_address)": {
              "label": "mapping(uint256 => address)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_string_storage)": {
              "label": "mapping(uint256 => string)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_uint256)": {
              "label": "mapping(uint256 => uint256)",
              "numberOfBytes": "32"
            },
            "t_string_storage": {
              "label": "string",
              "numberOfBytes": "32"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint8": {
              "label": "uint8",
              "numberOfBytes": "1"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "contracts/profiles/SkillWallet.sol:SkillWallet": {
        "src": "contracts/profiles/SkillWallet.sol:9",
        "version": {
          "withMetadata": "2654de8291e3c3372c58d6aade7ed1403122e41d297d2f20c1cf9597fd1065ed",
          "withoutMetadata": "076502ddf7c029b545a4470ded94beb1d3ab88128ec542a68b07efc86095d7c0",
          "linkedWithoutMetadata": "076502ddf7c029b545a4470ded94beb1d3ab88128ec542a68b07efc86095d7c0"
        },
        "inherit": [
          "contracts/common/access/HubControllableUpgradeable.sol:HubControllableUpgradeable",
          "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:OwnableUpgradeable",
          "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:ContextUpgradeable",
          "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:Initializable",
          "contracts/common/interfaces/ISkillWallet.sol:ISkillWallet"
        ],
        "libraries": [
          "@openzeppelin/contracts-upgradeable/utils/structs/EnumerableMapUpgradeable.sol:EnumerableMapUpgradeable"
        ],
        "methods": [
          "initialize(address)",
          "getSkillCount(uint256)",
          "getSkill(uint256,uint256)",
          "recordExperience(uint256,uint256,uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "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": "_owner",
              "offset": 0,
              "slot": "51",
              "type": "t_address",
              "contract": "OwnableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22"
            },
            {
              "label": "__gap",
              "offset": 0,
              "slot": "52",
              "type": "t_array(t_uint256)49_storage",
              "contract": "OwnableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94"
            },
            {
              "label": "HUB",
              "offset": 0,
              "slot": "101",
              "type": "t_address",
              "contract": "HubControllableUpgradeable",
              "src": "contracts/common/access/HubControllableUpgradeable.sol:10"
            },
            {
              "label": "_skillMap",
              "offset": 0,
              "slot": "102",
              "type": "t_mapping(t_uint256,t_struct(UintToUintMap)3649_storage)",
              "contract": "SkillWallet",
              "src": "contracts/profiles/SkillWallet.sol:13"
            }
          ],
          "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_bytes32,t_bytes32)": {
              "label": "mapping(bytes32 => bytes32)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_bytes32,t_uint256)": {
              "label": "mapping(bytes32 => uint256)",
              "numberOfBytes": "32"
            },
            "t_mapping(t_uint256,t_struct(UintToUintMap)3649_storage)": {
              "label": "mapping(uint256 => struct EnumerableMapUpgradeable.UintToUintMap)",
              "numberOfBytes": "32"
            },
            "t_struct(Bytes32Set)4730_storage": {
              "label": "struct EnumerableSetUpgradeable.Bytes32Set",
              "members": [
                {
                  "label": "_inner",
                  "type": "t_struct(Set)4536_storage",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "64"
            },
            "t_struct(Bytes32ToBytes32Map)3419_storage": {
              "label": "struct EnumerableMapUpgradeable.Bytes32ToBytes32Map",
              "members": [
                {
                  "label": "_keys",
                  "type": "t_struct(Bytes32Set)4730_storage",
                  "offset": 0,
                  "slot": "0"
                },
                {
                  "label": "_values",
                  "type": "t_mapping(t_bytes32,t_bytes32)",
                  "offset": 0,
                  "slot": "2"
                }
              ],
              "numberOfBytes": "96"
            },
            "t_struct(Set)4536_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_struct(UintToUintMap)3649_storage": {
              "label": "struct EnumerableMapUpgradeable.UintToUintMap",
              "members": [
                {
                  "label": "_inner",
                  "type": "t_struct(Bytes32ToBytes32Map)3419_storage",
                  "offset": 0,
                  "slot": "0"
                }
              ],
              "numberOfBytes": "96"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint8": {
              "label": "uint8",
              "numberOfBytes": "1"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      },
      "contracts/profiles/TimeWallet.sol:TimeWallet": {
        "src": "contracts/profiles/TimeWallet.sol:9",
        "version": {
          "withMetadata": "13476c01d34c3c38167ed9a9f46f78cdd41bc5d6abf062fca06ee815391deaea",
          "withoutMetadata": "09b032447f72e351168d432a4a83338feb9703873c4b243a4939b7b41ce3e89c",
          "linkedWithoutMetadata": "09b032447f72e351168d432a4a83338feb9703873c4b243a4939b7b41ce3e89c"
        },
        "inherit": [
          "contracts/common/access/HubControllableUpgradeable.sol:HubControllableUpgradeable",
          "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:OwnableUpgradeable",
          "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:ContextUpgradeable",
          "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:Initializable",
          "contracts/common/interfaces/ITimeWallet.sol:ITimeWallet"
        ],
        "libraries": [
          "contracts/common/libraries/Constants.sol:Constants",
          "contracts/common/libraries/Errors.sol:Errors"
        ],
        "methods": [
          "initialize(address)",
          "spendTimeFor(uint256,uint256)"
        ],
        "linkReferences": [],
        "errors": [],
        "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": "_owner",
              "offset": 0,
              "slot": "51",
              "type": "t_address",
              "contract": "OwnableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:22"
            },
            {
              "label": "__gap",
              "offset": 0,
              "slot": "52",
              "type": "t_array(t_uint256)49_storage",
              "contract": "OwnableUpgradeable",
              "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:94"
            },
            {
              "label": "HUB",
              "offset": 0,
              "slot": "101",
              "type": "t_address",
              "contract": "HubControllableUpgradeable",
              "src": "contracts/common/access/HubControllableUpgradeable.sol:10"
            },
            {
              "label": "_lastTimeSlot",
              "offset": 0,
              "slot": "102",
              "type": "t_mapping(t_uint256,t_uint256)",
              "contract": "TimeWallet",
              "src": "contracts/profiles/TimeWallet.sol:10"
            },
            {
              "label": "_totalTimeSinceLastTimeSlot",
              "offset": 0,
              "slot": "103",
              "type": "t_mapping(t_uint256,t_uint256)",
              "contract": "TimeWallet",
              "src": "contracts/profiles/TimeWallet.sol:11"
            }
          ],
          "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_mapping(t_uint256,t_uint256)": {
              "label": "mapping(uint256 => uint256)",
              "numberOfBytes": "32"
            },
            "t_uint256": {
              "label": "uint256",
              "numberOfBytes": "32"
            },
            "t_uint8": {
              "label": "uint8",
              "numberOfBytes": "1"
            }
          },
          "layoutVersion": "1.2",
          "flat": true
        },
        "solcVersion": "0.8.17"
      }
    }
  ]
}