{
  "contracts": {
    "FuseStaking": {
      "address": "0x1BF4D813886e2E4BC8bE4223134BB16fB270D98f",
      "constructorCode": "608060405234801561001057600080fd5b50610d35806100206000396000f3fe",
      "bodyBytecodeHash": "6b9060507436729bbb8b1e9288c68365d727262fd8050ef9744fdb0f0f9bbfcd",
      "localBytecodeHash": "dd13205a7c97b48096f3aeb0acde75f9661a21e63582685b7de51095dbb021fd",
      "deployedBytecodeHash": "dd13205a7c97b48096f3aeb0acde75f9661a21e63582685b7de51095dbb021fd",
      "types": {
        "t_bool": {
          "id": "t_bool",
          "kind": "elementary",
          "label": "bool"
        },
        "t_uint256": {
          "id": "t_uint256",
          "kind": "elementary",
          "label": "uint256"
        },
        "t_array:50<t_uint256>": {
          "id": "t_array:50<t_uint256>",
          "valueType": "t_uint256",
          "length": "50",
          "kind": "array",
          "label": "uint256[50]"
        },
        "t_address": {
          "id": "t_address",
          "kind": "elementary",
          "label": "address"
        },
        "t_array:49<t_uint256>": {
          "id": "t_array:49<t_uint256>",
          "valueType": "t_uint256",
          "length": "49",
          "kind": "array",
          "label": "uint256[49]"
        },
        "t_mapping<t_uint256>": {
          "id": "t_mapping<t_uint256>",
          "valueType": "t_uint256",
          "label": "mapping(key => uint256)",
          "kind": "mapping"
        },
        "t_array:dyn<t_address>": {
          "id": "t_array:dyn<t_address>",
          "valueType": "t_address",
          "length": "dyn",
          "kind": "array",
          "label": "address[]"
        }
      },
      "storage": [
        {
          "contract": "Initializable",
          "path": "@openzeppelin/contracts-upgradeable/proxy/Initializable.sol",
          "label": "_initialized",
          "astId": 447,
          "type": "t_bool",
          "src": "1172:25:4"
        },
        {
          "contract": "Initializable",
          "path": "@openzeppelin/contracts-upgradeable/proxy/Initializable.sol",
          "label": "_initializing",
          "astId": 450,
          "type": "t_bool",
          "src": "1300:26:4"
        },
        {
          "contract": "ContextUpgradeable",
          "path": "@openzeppelin/contracts-upgradeable/GSN/ContextUpgradeable.sol",
          "label": "__gap",
          "astId": 43,
          "type": "t_array:50<t_uint256>",
          "src": "1173:25:0"
        },
        {
          "contract": "OwnableUpgradeable",
          "path": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol",
          "label": "_owner",
          "astId": 55,
          "type": "t_address",
          "src": "718:22:1"
        },
        {
          "contract": "OwnableUpgradeable",
          "path": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol",
          "label": "__gap",
          "astId": 173,
          "type": "t_array:49<t_uint256>",
          "src": "2495:25:1"
        },
        {
          "contract": "FuseStaking",
          "path": "contracts/staking/FuseStaking.sol",
          "label": "stakers",
          "astId": 3117,
          "type": "t_mapping<t_uint256>",
          "src": "1033:35:12"
        },
        {
          "contract": "FuseStaking",
          "path": "contracts/staking/FuseStaking.sol",
          "label": "validatorsStaked",
          "astId": 3121,
          "type": "t_mapping<t_uint256>",
          "src": "1071:44:12"
        },
        {
          "contract": "FuseStaking",
          "path": "contracts/staking/FuseStaking.sol",
          "label": "validators",
          "astId": 3124,
          "type": "t_array:dyn<t_address>",
          "src": "1118:20:12"
        },
        {
          "contract": "FuseStaking",
          "path": "contracts/staking/FuseStaking.sol",
          "label": "consensus",
          "astId": 3126,
          "type": "t_address",
          "src": "1142:27:12"
        },
        {
          "contract": "FuseStaking",
          "path": "contracts/staking/FuseStaking.sol",
          "label": "consensus2",
          "astId": 3128,
          "type": "t_address",
          "src": "1173:28:12"
        }
      ],
      "warnings": {
        "hasConstructor": false,
        "hasSelfDestruct": false,
        "hasDelegateCall": false,
        "hasInitialValuesInDeclarations": false,
        "uninitializedBaseContracts": [],
        "storageUncheckedVars": [],
        "storageDiff": []
      }
    },
    "FuseStakingV2": {
      "address": "0x3E2b51D6c4f4a2fe609b855Cee45BF82580ebC37",
      "constructorCode": "608060405234801561001057600080fd5b50611e9e806100206000396000f3fe",
      "bodyBytecodeHash": "8cb0a482d593a138611d901d56ba53af321437d1dbef48c48659293795c78e90",
      "localBytecodeHash": "e25d9a5c86c7b3524b3475d0fd6090a33c69894795a21bacdddcd64976ec8299",
      "deployedBytecodeHash": "e25d9a5c86c7b3524b3475d0fd6090a33c69894795a21bacdddcd64976ec8299",
      "types": {
        "t_bool": {
          "id": "t_bool",
          "kind": "elementary",
          "label": "bool"
        },
        "t_uint256": {
          "id": "t_uint256",
          "kind": "elementary",
          "label": "uint256"
        },
        "t_array:50<t_uint256>": {
          "id": "t_array:50<t_uint256>",
          "valueType": "t_uint256",
          "length": "50",
          "kind": "array",
          "label": "uint256[50]"
        },
        "t_address": {
          "id": "t_address",
          "kind": "elementary",
          "label": "address"
        },
        "t_array:49<t_uint256>": {
          "id": "t_array:49<t_uint256>",
          "valueType": "t_uint256",
          "length": "49",
          "kind": "array",
          "label": "uint256[49]"
        },
        "t_mapping<t_uint256>": {
          "id": "t_mapping<t_uint256>",
          "valueType": "t_uint256",
          "label": "mapping(key => uint256)",
          "kind": "mapping"
        },
        "t_array:dyn<t_address>": {
          "id": "t_array:dyn<t_address>",
          "valueType": "t_address",
          "length": "dyn",
          "kind": "array",
          "label": "address[]"
        }
      },
      "storage": [
        {
          "contract": "Initializable",
          "path": "@openzeppelin/contracts-upgradeable/proxy/Initializable.sol",
          "label": "_initialized",
          "astId": 447,
          "type": "t_bool",
          "src": "1172:25:4"
        },
        {
          "contract": "Initializable",
          "path": "@openzeppelin/contracts-upgradeable/proxy/Initializable.sol",
          "label": "_initializing",
          "astId": 450,
          "type": "t_bool",
          "src": "1300:26:4"
        },
        {
          "contract": "ContextUpgradeable",
          "path": "@openzeppelin/contracts-upgradeable/GSN/ContextUpgradeable.sol",
          "label": "__gap",
          "astId": 43,
          "type": "t_array:50<t_uint256>",
          "src": "1173:25:0"
        },
        {
          "contract": "OwnableUpgradeable",
          "path": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol",
          "label": "_owner",
          "astId": 55,
          "type": "t_address",
          "src": "718:22:1"
        },
        {
          "contract": "OwnableUpgradeable",
          "path": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol",
          "label": "__gap",
          "astId": 173,
          "type": "t_array:49<t_uint256>",
          "src": "2495:25:1"
        },
        {
          "contract": "FuseStakingV2",
          "path": "contracts/staking/FuseStakingV2.sol",
          "label": "stakers",
          "astId": 3550,
          "type": "t_mapping<t_uint256>",
          "src": "1109:42:13"
        },
        {
          "contract": "FuseStakingV2",
          "path": "contracts/staking/FuseStakingV2.sol",
          "label": "validators",
          "astId": 3553,
          "type": "t_array:dyn<t_address>",
          "src": "1154:27:13"
        },
        {
          "contract": "FuseStakingV2",
          "path": "contracts/staking/FuseStakingV2.sol",
          "label": "consensus",
          "astId": 3555,
          "type": "t_address",
          "src": "1185:27:13"
        }
      ],
      "warnings": {
        "hasConstructor": false,
        "hasSelfDestruct": false,
        "hasDelegateCall": false,
        "hasInitialValuesInDeclarations": false,
        "uninitializedBaseContracts": [],
        "storageUncheckedVars": [],
        "storageDiff": []
      }
    }
  },
  "solidityLibs": {},
  "proxies": {
    "@gooddollar/upgradables/FuseStaking": [
      {
        "address": "0xf3F0DA74c5e67B299288B8C22eC3E42f9651A7Ce",
        "version": "1.0.0",
        "implementation": "0xbB17947a9a6cBD95e888b82fF32E6Ba36a3907d3",
        "admin": "0xDd3b7aa17a59960f1E4D19F37be18c106a0e1B04",
        "kind": "Upgradeable"
      }
    ],
    "@gooddollar/upgradables/FuseStakingV2": [
      {
        "address": "0x62E453901E269CBB5e55AcA2A10b71eFA2B38bFB",
        "version": "1.0.0",
        "implementation": "0xF58E641d74149E50Ab8B79579b1d3eF9451F7B82",
        "admin": "0xDd3b7aa17a59960f1E4D19F37be18c106a0e1B04",
        "kind": "Upgradeable"
      }
    ],
    "@gooddollar/upgradables/Rescue": [
      {
        "address": "0x26ae9b35239EfFF73921abfB3ff43e6b007094aD",
        "kind": "NonProxy",
        "bytecodeHash": "a68d6f384b91dafd18f8af6bbac446a84f56cd0952460145a17700394c915fd2"
      },
      {
        "address": "0xd088223244916Af380a72B97F4B4dD8A8ebAa162",
        "kind": "NonProxy",
        "bytecodeHash": "34857d514c956e5129ff54db9de53239b999bb8f65f19e0208d01b9392af5d36"
      }
    ]
  },
  "manifestVersion": "2.2",
  "version": "1.0.0",
  "proxyAdmin": {
    "address": "0xDd3b7aa17a59960f1E4D19F37be18c106a0e1B04"
  }
}
