@bananapus/721-hook-v6 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. package/.gas-snapshot +152 -0
  2. package/LICENSE +21 -0
  3. package/README.md +253 -0
  4. package/SKILLS.md +140 -0
  5. package/docs/book.css +13 -0
  6. package/docs/book.toml +12 -0
  7. package/docs/solidity.min.js +74 -0
  8. package/docs/src/README.md +253 -0
  9. package/docs/src/SUMMARY.md +38 -0
  10. package/docs/src/src/JB721TiersHook.sol/contract.JB721TiersHook.md +645 -0
  11. package/docs/src/src/JB721TiersHookDeployer.sol/contract.JB721TiersHookDeployer.md +99 -0
  12. package/docs/src/src/JB721TiersHookProjectDeployer.sol/contract.JB721TiersHookProjectDeployer.md +288 -0
  13. package/docs/src/src/JB721TiersHookStore.sol/contract.JB721TiersHookStore.md +1096 -0
  14. package/docs/src/src/README.md +11 -0
  15. package/docs/src/src/abstract/ERC721.sol/abstract.ERC721.md +430 -0
  16. package/docs/src/src/abstract/JB721Hook.sol/abstract.JB721Hook.md +309 -0
  17. package/docs/src/src/abstract/README.md +5 -0
  18. package/docs/src/src/interfaces/IJB721Hook.sol/interface.IJB721Hook.md +29 -0
  19. package/docs/src/src/interfaces/IJB721TiersHook.sol/interface.IJB721TiersHook.md +203 -0
  20. package/docs/src/src/interfaces/IJB721TiersHookDeployer.sol/interface.IJB721TiersHookDeployer.md +25 -0
  21. package/docs/src/src/interfaces/IJB721TiersHookProjectDeployer.sol/interface.IJB721TiersHookProjectDeployer.md +64 -0
  22. package/docs/src/src/interfaces/IJB721TiersHookStore.sol/interface.IJB721TiersHookStore.md +265 -0
  23. package/docs/src/src/interfaces/IJB721TokenUriResolver.sol/interface.IJB721TokenUriResolver.md +12 -0
  24. package/docs/src/src/interfaces/README.md +9 -0
  25. package/docs/src/src/libraries/JB721Constants.sol/library.JB721Constants.md +14 -0
  26. package/docs/src/src/libraries/JB721TiersRulesetMetadataResolver.sol/library.JB721TiersRulesetMetadataResolver.md +68 -0
  27. package/docs/src/src/libraries/JBBitmap.sol/library.JBBitmap.md +82 -0
  28. package/docs/src/src/libraries/JBIpfsDecoder.sol/library.JBIpfsDecoder.md +61 -0
  29. package/docs/src/src/libraries/README.md +7 -0
  30. package/docs/src/src/structs/JB721InitTiersConfig.sol/struct.JB721InitTiersConfig.md +27 -0
  31. package/docs/src/src/structs/JB721Tier.sol/struct.JB721Tier.md +59 -0
  32. package/docs/src/src/structs/JB721TierConfig.sol/struct.JB721TierConfig.md +60 -0
  33. package/docs/src/src/structs/JB721TiersHookFlags.sol/struct.JB721TiersHookFlags.md +26 -0
  34. package/docs/src/src/structs/JB721TiersMintReservesConfig.sol/struct.JB721TiersMintReservesConfig.md +16 -0
  35. package/docs/src/src/structs/JB721TiersRulesetMetadata.sol/struct.JB721TiersRulesetMetadata.md +20 -0
  36. package/docs/src/src/structs/JB721TiersSetDiscountPercentConfig.sol/struct.JB721TiersSetDiscountPercentConfig.md +16 -0
  37. package/docs/src/src/structs/JBBitmapWord.sol/struct.JBBitmapWord.md +19 -0
  38. package/docs/src/src/structs/JBDeploy721TiersHookConfig.sol/struct.JBDeploy721TiersHookConfig.md +34 -0
  39. package/docs/src/src/structs/JBLaunchProjectConfig.sol/struct.JBLaunchProjectConfig.md +23 -0
  40. package/docs/src/src/structs/JBLaunchRulesetsConfig.sol/struct.JBLaunchRulesetsConfig.md +22 -0
  41. package/docs/src/src/structs/JBPayDataHookRulesetConfig.sol/struct.JBPayDataHookRulesetConfig.md +51 -0
  42. package/docs/src/src/structs/JBPayDataHookRulesetMetadata.sol/struct.JBPayDataHookRulesetMetadata.md +66 -0
  43. package/docs/src/src/structs/JBQueueRulesetsConfig.sol/struct.JBQueueRulesetsConfig.md +21 -0
  44. package/docs/src/src/structs/JBStored721Tier.sol/struct.JBStored721Tier.md +42 -0
  45. package/docs/src/src/structs/README.md +18 -0
  46. package/foundry.lock +11 -0
  47. package/foundry.toml +22 -0
  48. package/package.json +31 -0
  49. package/remappings.txt +1 -0
  50. package/script/Deploy.s.sol +140 -0
  51. package/script/helpers/Hook721DeploymentLib.sol +81 -0
  52. package/slither-ci.config.json +10 -0
  53. package/sphinx.lock +476 -0
  54. package/src/JB721TiersHook.sol +765 -0
  55. package/src/JB721TiersHookDeployer.sol +114 -0
  56. package/src/JB721TiersHookProjectDeployer.sol +413 -0
  57. package/src/JB721TiersHookStore.sol +1195 -0
  58. package/src/abstract/ERC721.sol +484 -0
  59. package/src/abstract/JB721Hook.sol +279 -0
  60. package/src/interfaces/IJB721Hook.sol +21 -0
  61. package/src/interfaces/IJB721TiersHook.sol +135 -0
  62. package/src/interfaces/IJB721TiersHookDeployer.sol +22 -0
  63. package/src/interfaces/IJB721TiersHookProjectDeployer.sol +76 -0
  64. package/src/interfaces/IJB721TiersHookStore.sol +220 -0
  65. package/src/interfaces/IJB721TokenUriResolver.sol +10 -0
  66. package/src/libraries/JB721Constants.sol +7 -0
  67. package/src/libraries/JB721TiersRulesetMetadataResolver.sol +44 -0
  68. package/src/libraries/JBBitmap.sol +57 -0
  69. package/src/libraries/JBIpfsDecoder.sol +95 -0
  70. package/src/structs/JB721InitTiersConfig.sol +20 -0
  71. package/src/structs/JB721Tier.sol +39 -0
  72. package/src/structs/JB721TierConfig.sol +40 -0
  73. package/src/structs/JB721TiersHookFlags.sol +17 -0
  74. package/src/structs/JB721TiersMintReservesConfig.sol +9 -0
  75. package/src/structs/JB721TiersRulesetMetadata.sol +12 -0
  76. package/src/structs/JB721TiersSetDiscountPercentConfig.sol +9 -0
  77. package/src/structs/JBBitmapWord.sol +11 -0
  78. package/src/structs/JBDeploy721TiersHookConfig.sol +25 -0
  79. package/src/structs/JBLaunchProjectConfig.sol +18 -0
  80. package/src/structs/JBLaunchRulesetsConfig.sol +17 -0
  81. package/src/structs/JBPayDataHookRulesetConfig.sol +44 -0
  82. package/src/structs/JBPayDataHookRulesetMetadata.sol +46 -0
  83. package/src/structs/JBQueueRulesetsConfig.sol +13 -0
  84. package/src/structs/JBStored721Tier.sol +24 -0
  85. package/test/721HookAttacks.t.sol +396 -0
  86. package/test/E2E/Pay_Mint_Redeem_E2E.t.sol +944 -0
  87. package/test/invariants/TierLifecycleInvariant.t.sol +187 -0
  88. package/test/invariants/TieredHookStoreInvariant.t.sol +81 -0
  89. package/test/invariants/handlers/TierLifecycleHandler.sol +262 -0
  90. package/test/invariants/handlers/TierStoreHandler.sol +155 -0
  91. package/test/unit/JB721TiersRulesetMetadataResolver.t.sol +141 -0
  92. package/test/unit/JBBitmap.t.sol +169 -0
  93. package/test/unit/JBIpfsDecoder.t.sol +131 -0
  94. package/test/unit/M6_TierSupplyCheck.t.sol +220 -0
  95. package/test/unit/adjustTier_Unit.t.sol +1740 -0
  96. package/test/unit/deployer_Unit.t.sol +103 -0
  97. package/test/unit/getters_constructor_Unit.t.sol +548 -0
  98. package/test/unit/mintFor_mintReservesFor_Unit.t.sol +443 -0
  99. package/test/unit/pay_Unit.t.sol +1537 -0
  100. package/test/unit/redeem_Unit.t.sol +459 -0
package/sphinx.lock ADDED
@@ -0,0 +1,476 @@
1
+ {
2
+ "warning": "THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.",
3
+ "format": "sphinx-lock-1.0.0",
4
+ "orgId": "ea165b21-7cdc-4d7b-be59-ecdd4c26bee4",
5
+ "projects": {
6
+ "nana-omnichain-deployers": {
7
+ "projectId": "4c8b18a7-99c8-431a-b575-e6817503fbd2",
8
+ "projectName": "nana-omnichain-deployers",
9
+ "defaultSafe": {
10
+ "safeName": "nana-core-small",
11
+ "owners": [
12
+ "0x1bb1e3F6818FeB7c1F1674e6E7D6c30BA2725643",
13
+ "0x34aA3F359A9D614239015126635CE7732c18fDF3",
14
+ "0x5a3f5ac3D6f1a0061D3bB91f38606F7103eCdBe8",
15
+ "0x5EE9F1cdD9588A3c800441CBd7A38Ffeff40cBc2",
16
+ "0x63A2368F4B509438ca90186cb1C15156713D5834",
17
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
18
+ "0x721b19e30EF791FF2A67FF4b375E591aAf84136B",
19
+ "0x73aEd5a32E898644Acb841C3Ac40663202CfD485",
20
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
21
+ "0x8d3CC5b1a5268Ff0C119c5c03252EB8c1bFEBbB2",
22
+ "0x99368d83F73b803Caf924956C5EE6E0b8f86Fb3B",
23
+ "0xc109636a2b47f8b290cc134dd446Fcd7d7e0cC94",
24
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
25
+ "0xD78285eef93E13D1F96062265b68099C480121b8",
26
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651",
27
+ "0xe7879a2D05dBA966Fcca34EE9C3F99eEe7eDEFd1",
28
+ "0xf33CFe55655B0190eAF5aC2749F954c64E06d887"
29
+ ],
30
+ "threshold": "5",
31
+ "saltNonce": "0"
32
+ }
33
+ },
34
+ "nana-address-registry-v5": {
35
+ "projectId": "cc6ec42f-5bb5-451a-a66a-928fd3231d2f",
36
+ "projectName": "nana-address-registry-v5",
37
+ "defaultSafe": {
38
+ "safeName": "nana-core-v5",
39
+ "owners": [
40
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
41
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
42
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
43
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651"
44
+ ],
45
+ "threshold": "2",
46
+ "saltNonce": "0"
47
+ }
48
+ },
49
+ "nana-buyback-hook-v5": {
50
+ "projectId": "cf0b6f77-d870-4ccf-bbdc-6b22dceb11b6",
51
+ "projectName": "nana-buyback-hook-v5",
52
+ "defaultSafe": {
53
+ "safeName": "nana-core-v5",
54
+ "owners": [
55
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
56
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
57
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
58
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651"
59
+ ],
60
+ "threshold": "2",
61
+ "saltNonce": "0"
62
+ }
63
+ },
64
+ "nana-swap-terminal": {
65
+ "projectId": "a804c33d-fd0c-4dea-930b-ab72fec9f557",
66
+ "projectName": "nana-swap-terminal",
67
+ "defaultSafe": {
68
+ "safeName": "nana-core-small",
69
+ "owners": [
70
+ "0x1bb1e3F6818FeB7c1F1674e6E7D6c30BA2725643",
71
+ "0x34aA3F359A9D614239015126635CE7732c18fDF3",
72
+ "0x5a3f5ac3D6f1a0061D3bB91f38606F7103eCdBe8",
73
+ "0x5EE9F1cdD9588A3c800441CBd7A38Ffeff40cBc2",
74
+ "0x63A2368F4B509438ca90186cb1C15156713D5834",
75
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
76
+ "0x721b19e30EF791FF2A67FF4b375E591aAf84136B",
77
+ "0x73aEd5a32E898644Acb841C3Ac40663202CfD485",
78
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
79
+ "0x8d3CC5b1a5268Ff0C119c5c03252EB8c1bFEBbB2",
80
+ "0x99368d83F73b803Caf924956C5EE6E0b8f86Fb3B",
81
+ "0xc109636a2b47f8b290cc134dd446Fcd7d7e0cC94",
82
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
83
+ "0xD78285eef93E13D1F96062265b68099C480121b8",
84
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651",
85
+ "0xe7879a2D05dBA966Fcca34EE9C3F99eEe7eDEFd1",
86
+ "0xf33CFe55655B0190eAF5aC2749F954c64E06d887"
87
+ ],
88
+ "threshold": "5",
89
+ "saltNonce": "0"
90
+ }
91
+ },
92
+ "nana-core": {
93
+ "projectId": "290d6007-345d-4bcc-af08-5e5a26ca2dc5",
94
+ "projectName": "nana-core",
95
+ "defaultSafe": {
96
+ "safeName": "nana-core",
97
+ "owners": [
98
+ "0x1bb1e3F6818FeB7c1F1674e6E7D6c30BA2725643",
99
+ "0x34aA3F359A9D614239015126635CE7732c18fDF3",
100
+ "0x5a3f5ac3D6f1a0061D3bB91f38606F7103eCdBe8",
101
+ "0x5EE9F1cdD9588A3c800441CBd7A38Ffeff40cBc2",
102
+ "0x63A2368F4B509438ca90186cb1C15156713D5834",
103
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
104
+ "0x721b19e30EF791FF2A67FF4b375E591aAf84136B",
105
+ "0x73aEd5a32E898644Acb841C3Ac40663202CfD485",
106
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
107
+ "0x8d3CC5b1a5268Ff0C119c5c03252EB8c1bFEBbB2",
108
+ "0x99368d83F73b803Caf924956C5EE6E0b8f86Fb3B",
109
+ "0xc109636a2b47f8b290cc134dd446Fcd7d7e0cC94",
110
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
111
+ "0xD78285eef93E13D1F96062265b68099C480121b8",
112
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651",
113
+ "0xe7879a2D05dBA966Fcca34EE9C3F99eEe7eDEFd1",
114
+ "0xf33CFe55655B0190eAF5aC2749F954c64E06d887"
115
+ ],
116
+ "threshold": "9",
117
+ "saltNonce": "0"
118
+ }
119
+ },
120
+ "nana-buyback-hook": {
121
+ "projectId": "f348713c-83c9-4a85-9b34-acce562d5593",
122
+ "projectName": "nana-buyback-hook",
123
+ "defaultSafe": {
124
+ "safeName": "nana-core-small",
125
+ "owners": [
126
+ "0x1bb1e3F6818FeB7c1F1674e6E7D6c30BA2725643",
127
+ "0x34aA3F359A9D614239015126635CE7732c18fDF3",
128
+ "0x5a3f5ac3D6f1a0061D3bB91f38606F7103eCdBe8",
129
+ "0x5EE9F1cdD9588A3c800441CBd7A38Ffeff40cBc2",
130
+ "0x63A2368F4B509438ca90186cb1C15156713D5834",
131
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
132
+ "0x721b19e30EF791FF2A67FF4b375E591aAf84136B",
133
+ "0x73aEd5a32E898644Acb841C3Ac40663202CfD485",
134
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
135
+ "0x8d3CC5b1a5268Ff0C119c5c03252EB8c1bFEBbB2",
136
+ "0x99368d83F73b803Caf924956C5EE6E0b8f86Fb3B",
137
+ "0xc109636a2b47f8b290cc134dd446Fcd7d7e0cC94",
138
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
139
+ "0xD78285eef93E13D1F96062265b68099C480121b8",
140
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651",
141
+ "0xe7879a2D05dBA966Fcca34EE9C3F99eEe7eDEFd1",
142
+ "0xf33CFe55655B0190eAF5aC2749F954c64E06d887"
143
+ ],
144
+ "threshold": "5",
145
+ "saltNonce": "0"
146
+ }
147
+ },
148
+ "croptop-core": {
149
+ "projectId": "0c213583-47a4-4212-a7cb-b2c0cfdcdac4",
150
+ "projectName": "croptop-core",
151
+ "defaultSafe": {
152
+ "safeName": "croptop",
153
+ "owners": [
154
+ "0x14293560A2dde4fFA136A647b7a2f927b0774AB6",
155
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
156
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
157
+ "0x8d3CC5b1a5268Ff0C119c5c03252EB8c1bFEBbB2",
158
+ "0xCa81360a91504500674E926b1b301165b2CA9807"
159
+ ],
160
+ "threshold": "2",
161
+ "saltNonce": "0"
162
+ }
163
+ },
164
+ "banny-core": {
165
+ "projectId": "26678812-e6ca-443d-a5e0-7b62fcdd455f",
166
+ "projectName": "banny-core",
167
+ "defaultSafe": {
168
+ "safeName": "banny-core",
169
+ "owners": [
170
+ "0x14293560A2dde4fFA136A647b7a2f927b0774AB6",
171
+ "0x63A2368F4B509438ca90186cb1C15156713D5834",
172
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
173
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
174
+ "0xe7879a2D05dBA966Fcca34EE9C3F99eEe7eDEFd1"
175
+ ],
176
+ "threshold": "2",
177
+ "saltNonce": "0"
178
+ }
179
+ },
180
+ "nana-fee-project": {
181
+ "projectId": "8420d3da-9977-4908-be04-d600a090744d",
182
+ "projectName": "nana-fee-project",
183
+ "defaultSafe": {
184
+ "safeName": "nana-core",
185
+ "owners": [
186
+ "0x1bb1e3F6818FeB7c1F1674e6E7D6c30BA2725643",
187
+ "0x34aA3F359A9D614239015126635CE7732c18fDF3",
188
+ "0x5a3f5ac3D6f1a0061D3bB91f38606F7103eCdBe8",
189
+ "0x5EE9F1cdD9588A3c800441CBd7A38Ffeff40cBc2",
190
+ "0x63A2368F4B509438ca90186cb1C15156713D5834",
191
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
192
+ "0x721b19e30EF791FF2A67FF4b375E591aAf84136B",
193
+ "0x73aEd5a32E898644Acb841C3Ac40663202CfD485",
194
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
195
+ "0x8d3CC5b1a5268Ff0C119c5c03252EB8c1bFEBbB2",
196
+ "0x99368d83F73b803Caf924956C5EE6E0b8f86Fb3B",
197
+ "0xc109636a2b47f8b290cc134dd446Fcd7d7e0cC94",
198
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
199
+ "0xD78285eef93E13D1F96062265b68099C480121b8",
200
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651",
201
+ "0xe7879a2D05dBA966Fcca34EE9C3F99eEe7eDEFd1",
202
+ "0xf33CFe55655B0190eAF5aC2749F954c64E06d887"
203
+ ],
204
+ "threshold": "9",
205
+ "saltNonce": "0"
206
+ }
207
+ },
208
+ "nana-suckers-v5": {
209
+ "projectId": "55b45d45-a209-4197-83e1-aa096e19ddbc",
210
+ "projectName": "nana-suckers-v5",
211
+ "defaultSafe": {
212
+ "safeName": "nana-core-v5",
213
+ "owners": [
214
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
215
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
216
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
217
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651"
218
+ ],
219
+ "threshold": "2",
220
+ "saltNonce": "0"
221
+ }
222
+ },
223
+ "revnet-core-v5": {
224
+ "projectId": "cf581f7f-8bab-4773-b1bf-6389b6891056",
225
+ "projectName": "revnet-core-v5",
226
+ "defaultSafe": {
227
+ "safeName": "revnet",
228
+ "owners": [
229
+ "0x14293560A2dde4fFA136A647b7a2f927b0774AB6",
230
+ "0x1bb1e3F6818FeB7c1F1674e6E7D6c30BA2725643",
231
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
232
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
233
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
234
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651",
235
+ "0xf33CFe55655B0190eAF5aC2749F954c64E06d887"
236
+ ],
237
+ "threshold": "3",
238
+ "saltNonce": "0"
239
+ }
240
+ },
241
+ "revnet-core": {
242
+ "projectId": "ff72a6d2-9324-49ef-a415-57e253550e9e",
243
+ "projectName": "revnet-core",
244
+ "defaultSafe": {
245
+ "safeName": "revnet",
246
+ "owners": [
247
+ "0x14293560A2dde4fFA136A647b7a2f927b0774AB6",
248
+ "0x1bb1e3F6818FeB7c1F1674e6E7D6c30BA2725643",
249
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
250
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
251
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
252
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651",
253
+ "0xf33CFe55655B0190eAF5aC2749F954c64E06d887"
254
+ ],
255
+ "threshold": "3",
256
+ "saltNonce": "0"
257
+ }
258
+ },
259
+ "nana-project-handles-v5": {
260
+ "projectId": "8795935f-e0ba-4b84-9ec2-44315fbdf4d8",
261
+ "projectName": "nana-project-handles-v5",
262
+ "defaultSafe": {
263
+ "safeName": "nana-core-v5",
264
+ "owners": [
265
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
266
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
267
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
268
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651"
269
+ ],
270
+ "threshold": "2",
271
+ "saltNonce": "0"
272
+ }
273
+ },
274
+ "nana-721-hook": {
275
+ "projectId": "67cfcad1-d38b-4b4d-b137-a24797c31991",
276
+ "projectName": "nana-721-hook",
277
+ "defaultSafe": {
278
+ "safeName": "nana-core",
279
+ "owners": [
280
+ "0x1bb1e3F6818FeB7c1F1674e6E7D6c30BA2725643",
281
+ "0x34aA3F359A9D614239015126635CE7732c18fDF3",
282
+ "0x5a3f5ac3D6f1a0061D3bB91f38606F7103eCdBe8",
283
+ "0x5EE9F1cdD9588A3c800441CBd7A38Ffeff40cBc2",
284
+ "0x63A2368F4B509438ca90186cb1C15156713D5834",
285
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
286
+ "0x721b19e30EF791FF2A67FF4b375E591aAf84136B",
287
+ "0x73aEd5a32E898644Acb841C3Ac40663202CfD485",
288
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
289
+ "0x8d3CC5b1a5268Ff0C119c5c03252EB8c1bFEBbB2",
290
+ "0x99368d83F73b803Caf924956C5EE6E0b8f86Fb3B",
291
+ "0xc109636a2b47f8b290cc134dd446Fcd7d7e0cC94",
292
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
293
+ "0xD78285eef93E13D1F96062265b68099C480121b8",
294
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651",
295
+ "0xe7879a2D05dBA966Fcca34EE9C3F99eEe7eDEFd1",
296
+ "0xf33CFe55655B0190eAF5aC2749F954c64E06d887"
297
+ ],
298
+ "threshold": "9",
299
+ "saltNonce": "0"
300
+ }
301
+ },
302
+ "nana-swap-terminal-v5": {
303
+ "projectId": "b476ccb3-4857-4d11-87cf-9b5cb3ac27c2",
304
+ "projectName": "nana-swap-terminal-v5",
305
+ "defaultSafe": {
306
+ "safeName": "nana-core-v5",
307
+ "owners": [
308
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
309
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
310
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
311
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651"
312
+ ],
313
+ "threshold": "2",
314
+ "saltNonce": "0"
315
+ }
316
+ },
317
+ "banny-core-v5": {
318
+ "projectId": "47a1f9c8-f418-4907-8402-bfc456ada246",
319
+ "projectName": "banny-core-v5",
320
+ "defaultSafe": {
321
+ "safeName": "banny-core",
322
+ "owners": [
323
+ "0x14293560A2dde4fFA136A647b7a2f927b0774AB6",
324
+ "0x63A2368F4B509438ca90186cb1C15156713D5834",
325
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
326
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
327
+ "0xe7879a2D05dBA966Fcca34EE9C3F99eEe7eDEFd1"
328
+ ],
329
+ "threshold": "2",
330
+ "saltNonce": "0"
331
+ }
332
+ },
333
+ "nana-address-registry": {
334
+ "projectId": "b1c7e214-2927-4042-a3c9-d5751940ce28",
335
+ "projectName": "nana-address-registry",
336
+ "defaultSafe": {
337
+ "safeName": "nana-core",
338
+ "owners": [
339
+ "0x1bb1e3F6818FeB7c1F1674e6E7D6c30BA2725643",
340
+ "0x34aA3F359A9D614239015126635CE7732c18fDF3",
341
+ "0x5a3f5ac3D6f1a0061D3bB91f38606F7103eCdBe8",
342
+ "0x5EE9F1cdD9588A3c800441CBd7A38Ffeff40cBc2",
343
+ "0x63A2368F4B509438ca90186cb1C15156713D5834",
344
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
345
+ "0x721b19e30EF791FF2A67FF4b375E591aAf84136B",
346
+ "0x73aEd5a32E898644Acb841C3Ac40663202CfD485",
347
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
348
+ "0x8d3CC5b1a5268Ff0C119c5c03252EB8c1bFEBbB2",
349
+ "0x99368d83F73b803Caf924956C5EE6E0b8f86Fb3B",
350
+ "0xc109636a2b47f8b290cc134dd446Fcd7d7e0cC94",
351
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
352
+ "0xD78285eef93E13D1F96062265b68099C480121b8",
353
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651",
354
+ "0xe7879a2D05dBA966Fcca34EE9C3F99eEe7eDEFd1",
355
+ "0xf33CFe55655B0190eAF5aC2749F954c64E06d887"
356
+ ],
357
+ "threshold": "9",
358
+ "saltNonce": "0"
359
+ }
360
+ },
361
+ "nana-core-v5": {
362
+ "projectId": "43d1f453-3129-4383-a056-d1da4f3b1ee8",
363
+ "projectName": "nana-core-v5",
364
+ "defaultSafe": {
365
+ "safeName": "nana-core-v5",
366
+ "owners": [
367
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
368
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
369
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
370
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651"
371
+ ],
372
+ "threshold": "2",
373
+ "saltNonce": "0"
374
+ }
375
+ },
376
+ "nana-721-hook-v5": {
377
+ "projectId": "b29a3b81-3722-40ad-b831-66472be6d6a8",
378
+ "projectName": "nana-721-hook-v5",
379
+ "defaultSafe": {
380
+ "safeName": "nana-core-v5",
381
+ "owners": [
382
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
383
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
384
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
385
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651"
386
+ ],
387
+ "threshold": "2",
388
+ "saltNonce": "0"
389
+ }
390
+ },
391
+ "nana-periphery": {
392
+ "projectId": "0de1ae41-0a43-4bc3-8eec-208718afaa51",
393
+ "projectName": "nana-periphery",
394
+ "defaultSafe": {
395
+ "safeName": "nana-core",
396
+ "owners": [
397
+ "0x1bb1e3F6818FeB7c1F1674e6E7D6c30BA2725643",
398
+ "0x34aA3F359A9D614239015126635CE7732c18fDF3",
399
+ "0x5a3f5ac3D6f1a0061D3bB91f38606F7103eCdBe8",
400
+ "0x5EE9F1cdD9588A3c800441CBd7A38Ffeff40cBc2",
401
+ "0x63A2368F4B509438ca90186cb1C15156713D5834",
402
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
403
+ "0x721b19e30EF791FF2A67FF4b375E591aAf84136B",
404
+ "0x73aEd5a32E898644Acb841C3Ac40663202CfD485",
405
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
406
+ "0x8d3CC5b1a5268Ff0C119c5c03252EB8c1bFEBbB2",
407
+ "0x99368d83F73b803Caf924956C5EE6E0b8f86Fb3B",
408
+ "0xc109636a2b47f8b290cc134dd446Fcd7d7e0cC94",
409
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
410
+ "0xD78285eef93E13D1F96062265b68099C480121b8",
411
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651",
412
+ "0xe7879a2D05dBA966Fcca34EE9C3F99eEe7eDEFd1",
413
+ "0xf33CFe55655B0190eAF5aC2749F954c64E06d887"
414
+ ],
415
+ "threshold": "9",
416
+ "saltNonce": "0"
417
+ }
418
+ },
419
+ "nana-project-handles": {
420
+ "projectId": "67c86da0-a089-4b0f-a04d-4dffda844ff9",
421
+ "projectName": "nana-project-handles",
422
+ "defaultSafe": {
423
+ "safeName": "nana-core-small",
424
+ "owners": [
425
+ "0x1bb1e3F6818FeB7c1F1674e6E7D6c30BA2725643",
426
+ "0x34aA3F359A9D614239015126635CE7732c18fDF3",
427
+ "0x5a3f5ac3D6f1a0061D3bB91f38606F7103eCdBe8",
428
+ "0x5EE9F1cdD9588A3c800441CBd7A38Ffeff40cBc2",
429
+ "0x63A2368F4B509438ca90186cb1C15156713D5834",
430
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
431
+ "0x721b19e30EF791FF2A67FF4b375E591aAf84136B",
432
+ "0x73aEd5a32E898644Acb841C3Ac40663202CfD485",
433
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
434
+ "0x8d3CC5b1a5268Ff0C119c5c03252EB8c1bFEBbB2",
435
+ "0x99368d83F73b803Caf924956C5EE6E0b8f86Fb3B",
436
+ "0xc109636a2b47f8b290cc134dd446Fcd7d7e0cC94",
437
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
438
+ "0xD78285eef93E13D1F96062265b68099C480121b8",
439
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651",
440
+ "0xe7879a2D05dBA966Fcca34EE9C3F99eEe7eDEFd1",
441
+ "0xf33CFe55655B0190eAF5aC2749F954c64E06d887"
442
+ ],
443
+ "threshold": "5",
444
+ "saltNonce": "0"
445
+ }
446
+ },
447
+ "nana-suckers": {
448
+ "projectId": "1b040a9e-0764-4173-880e-b5ebf312bc44",
449
+ "projectName": "nana-suckers",
450
+ "defaultSafe": {
451
+ "safeName": "nana-core",
452
+ "owners": [
453
+ "0x1bb1e3F6818FeB7c1F1674e6E7D6c30BA2725643",
454
+ "0x34aA3F359A9D614239015126635CE7732c18fDF3",
455
+ "0x5a3f5ac3D6f1a0061D3bB91f38606F7103eCdBe8",
456
+ "0x5EE9F1cdD9588A3c800441CBd7A38Ffeff40cBc2",
457
+ "0x63A2368F4B509438ca90186cb1C15156713D5834",
458
+ "0x6849310926127F819d48894DeA667f3ECD18a07c",
459
+ "0x721b19e30EF791FF2A67FF4b375E591aAf84136B",
460
+ "0x73aEd5a32E898644Acb841C3Ac40663202CfD485",
461
+ "0x823b92d6a4b2AED4b15675c7917c9f922ea8ADAD",
462
+ "0x8d3CC5b1a5268Ff0C119c5c03252EB8c1bFEBbB2",
463
+ "0x99368d83F73b803Caf924956C5EE6E0b8f86Fb3B",
464
+ "0xc109636a2b47f8b290cc134dd446Fcd7d7e0cC94",
465
+ "0xCa81360a91504500674E926b1b301165b2CA9807",
466
+ "0xD78285eef93E13D1F96062265b68099C480121b8",
467
+ "0xDc6Dd6Bc601448541A4862a91De1B86291839651",
468
+ "0xe7879a2D05dBA966Fcca34EE9C3F99eEe7eDEFd1",
469
+ "0xf33CFe55655B0190eAF5aC2749F954c64E06d887"
470
+ ],
471
+ "threshold": "9",
472
+ "saltNonce": "0"
473
+ }
474
+ }
475
+ }
476
+ }