@ensuro/core 2.0.0-beta1 → 2.0.0-beta10

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 (79) hide show
  1. package/README.md +23 -14
  2. package/build/contracts/AccessManager.sol/AccessManager.json +559 -0
  3. package/build/contracts/ERC4626AssetManager.sol/ERC4626AssetManager.json +219 -0
  4. package/build/contracts/EToken.sol/EToken.json +134 -52
  5. package/build/contracts/LPManualWhitelist.sol/LPManualWhitelist.json +4 -4
  6. package/build/contracts/LiquidityThresholdAssetManager.sol/LiquidityThresholdAssetManager.json +203 -0
  7. package/build/contracts/Policy.sol/Policy.json +2 -2
  8. package/build/contracts/PolicyPool.sol/PolicyPool.json +437 -61
  9. package/build/contracts/PolicyPoolComponent.sol/PolicyPoolComponent.json +2 -2
  10. package/build/contracts/PremiumsAccount.sol/PremiumsAccount.json +123 -16
  11. package/build/contracts/Reserve.sol/Reserve.json +66 -8
  12. package/build/contracts/RiskModule.sol/RiskModule.json +2 -2
  13. package/build/contracts/SignedQuoteRiskModule.sol/SignedQuoteRiskModule.json +960 -0
  14. package/build/contracts/TimeScaled.sol/TimeScaled.json +3 -17
  15. package/build/contracts/TrustfulRiskModule.sol/TrustfulRiskModule.json +5 -5
  16. package/build/contracts/{WadRayMath.sol → dependencies/WadRayMath.sol}/WadRayMath.json +3 -3
  17. package/build/contracts/interfaces/{IPolicyPoolConfig.sol/IPolicyPoolConfig.json → IAccessManager.sol/IAccessManager.json} +77 -59
  18. package/build/contracts/interfaces/IAssetManager.sol/IAssetManager.json +109 -0
  19. package/build/contracts/interfaces/IEToken.sol/IEToken.json +13 -0
  20. package/build/contracts/interfaces/IPolicyPool.sol/IPolicyPool.json +40 -16
  21. package/build/contracts/interfaces/IPremiumsAccount.sol/IPremiumsAccount.json +13 -0
  22. package/build/contracts/mocks/FixedRateVault.sol/FixedRateVault.json +736 -0
  23. package/build/contracts/mocks/ForwardProxy.sol/ForwardProxy.json +2 -2
  24. package/build/contracts/mocks/PolicyHolderMock.sol/PolicyHolderMock.json +28 -2
  25. package/build/contracts/mocks/PolicyPoolComponentMock.sol/PolicyPoolComponentMock.json +2 -2
  26. package/build/contracts/mocks/PolicyPoolMock.sol/PolicyPoolMock.json +118 -19
  27. package/build/contracts/mocks/PolicyPoolMock.sol/PolicyPoolMockForward.json +6 -6
  28. package/build/contracts/mocks/RiskModuleMock.sol/RiskModuleMock.json +764 -0
  29. package/build/contracts/mocks/TestCurrency.sol/TestCurrency.json +2 -2
  30. package/build/contracts/mocks/TestNFT.sol/TestNFT.json +2 -2
  31. package/contracts/AccessManager.sol +103 -0
  32. package/contracts/ERC4626AssetManager.sol +52 -0
  33. package/contracts/EToken.sol +123 -87
  34. package/contracts/LPManualWhitelist.sol +1 -1
  35. package/contracts/LiquidityThresholdAssetManager.sol +160 -0
  36. package/contracts/Policy.sol +1 -1
  37. package/contracts/PolicyPool.sol +333 -115
  38. package/contracts/PolicyPoolComponent.sol +36 -41
  39. package/contracts/PremiumsAccount.sol +285 -79
  40. package/contracts/Reserve.sol +183 -4
  41. package/contracts/RiskModule.sol +26 -19
  42. package/contracts/SignedQuoteRiskModule.sol +241 -0
  43. package/contracts/TimeScaled.sol +19 -15
  44. package/contracts/TrustfulRiskModule.sol +62 -2
  45. package/contracts/dependencies/WadRayMath.sol +126 -0
  46. package/contracts/interfaces/IAccessManager.sol +148 -0
  47. package/contracts/interfaces/IAssetManager.sol +84 -0
  48. package/contracts/interfaces/IEToken.sol +25 -2
  49. package/contracts/interfaces/ILPWhitelist.sol +17 -0
  50. package/contracts/interfaces/IPolicyPool.sol +20 -13
  51. package/contracts/interfaces/IPolicyPoolComponent.sol +3 -0
  52. package/contracts/interfaces/IPremiumsAccount.sol +5 -0
  53. package/contracts/interfaces/IRiskModule.sol +67 -4
  54. package/contracts/mocks/FixedRateVault.sol +85 -0
  55. package/contracts/mocks/PolicyHolderMock.sol +21 -0
  56. package/contracts/mocks/PolicyPoolMock.sol +41 -15
  57. package/contracts/mocks/RiskModuleMock.sol +75 -0
  58. package/js/test-utils.js +227 -149
  59. package/package.json +1 -1
  60. package/build/contracts/FlightDelayRiskModule.sol/FlightDelayRiskModule.json +0 -890
  61. package/build/contracts/PolicyNFT.sol/PolicyNFT.json +0 -583
  62. package/build/contracts/PolicyPoolConfig.sol/PolicyPoolConfig.json +0 -691
  63. package/build/contracts/dependencies/ChainlinkClientUpgradeable.sol/ChainlinkClientUpgradeable.json +0 -63
  64. package/build/contracts/interfaces/IPolicyNFT.sol/IPolicyNFT.json +0 -321
  65. package/build/contracts/mocks/LinkTokenMock.sol/LinkTokenMock.json +0 -370
  66. package/build/contracts/mocks/TestCurrencyUUPS.sol/TestCurrencyUUPS.json +0 -353
  67. package/build/contracts/upgraded/IPolicyNFTv1.sol/IPolicyNFTv1.json +0 -322
  68. package/build/contracts/upgraded/PolicyNFTv1.sol/PolicyNFTv1.json +0 -584
  69. package/build/contracts/upgraded/PolicyNFTv1.sol/PolicyNFTv1_Upgrade.json +0 -615
  70. package/contracts/FlightDelayRiskModule.sol +0 -217
  71. package/contracts/PolicyNFT.sol +0 -96
  72. package/contracts/PolicyPoolConfig.sol +0 -204
  73. package/contracts/WadRayMath.sol +0 -135
  74. package/contracts/dependencies/ChainlinkClientUpgradeable.sol +0 -371
  75. package/contracts/interfaces/IPolicyNFT.sol +0 -15
  76. package/contracts/interfaces/IPolicyPoolConfig.sol +0 -96
  77. package/contracts/mocks/LinkTokenMock.sol +0 -30
  78. package/contracts/upgraded/IPolicyNFTv1.sol +0 -15
  79. package/contracts/upgraded/PolicyNFTv1.sol +0 -126
@@ -1,353 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "TestCurrencyUUPS",
4
- "sourceName": "contracts/mocks/TestCurrencyUUPS.sol",
5
- "abi": [
6
- {
7
- "anonymous": false,
8
- "inputs": [
9
- {
10
- "indexed": true,
11
- "internalType": "address",
12
- "name": "owner",
13
- "type": "address"
14
- },
15
- {
16
- "indexed": true,
17
- "internalType": "address",
18
- "name": "spender",
19
- "type": "address"
20
- },
21
- {
22
- "indexed": false,
23
- "internalType": "uint256",
24
- "name": "value",
25
- "type": "uint256"
26
- }
27
- ],
28
- "name": "Approval",
29
- "type": "event"
30
- },
31
- {
32
- "anonymous": false,
33
- "inputs": [
34
- {
35
- "indexed": false,
36
- "internalType": "uint8",
37
- "name": "version",
38
- "type": "uint8"
39
- }
40
- ],
41
- "name": "Initialized",
42
- "type": "event"
43
- },
44
- {
45
- "anonymous": false,
46
- "inputs": [
47
- {
48
- "indexed": true,
49
- "internalType": "address",
50
- "name": "from",
51
- "type": "address"
52
- },
53
- {
54
- "indexed": true,
55
- "internalType": "address",
56
- "name": "to",
57
- "type": "address"
58
- },
59
- {
60
- "indexed": false,
61
- "internalType": "uint256",
62
- "name": "value",
63
- "type": "uint256"
64
- }
65
- ],
66
- "name": "Transfer",
67
- "type": "event"
68
- },
69
- {
70
- "inputs": [
71
- {
72
- "internalType": "address",
73
- "name": "owner",
74
- "type": "address"
75
- },
76
- {
77
- "internalType": "address",
78
- "name": "spender",
79
- "type": "address"
80
- }
81
- ],
82
- "name": "allowance",
83
- "outputs": [
84
- {
85
- "internalType": "uint256",
86
- "name": "",
87
- "type": "uint256"
88
- }
89
- ],
90
- "stateMutability": "view",
91
- "type": "function"
92
- },
93
- {
94
- "inputs": [
95
- {
96
- "internalType": "address",
97
- "name": "spender",
98
- "type": "address"
99
- },
100
- {
101
- "internalType": "uint256",
102
- "name": "amount",
103
- "type": "uint256"
104
- }
105
- ],
106
- "name": "approve",
107
- "outputs": [
108
- {
109
- "internalType": "bool",
110
- "name": "",
111
- "type": "bool"
112
- }
113
- ],
114
- "stateMutability": "nonpayable",
115
- "type": "function"
116
- },
117
- {
118
- "inputs": [
119
- {
120
- "internalType": "address",
121
- "name": "account",
122
- "type": "address"
123
- }
124
- ],
125
- "name": "balanceOf",
126
- "outputs": [
127
- {
128
- "internalType": "uint256",
129
- "name": "",
130
- "type": "uint256"
131
- }
132
- ],
133
- "stateMutability": "view",
134
- "type": "function"
135
- },
136
- {
137
- "inputs": [
138
- {
139
- "internalType": "address",
140
- "name": "recipient",
141
- "type": "address"
142
- },
143
- {
144
- "internalType": "uint256",
145
- "name": "amount",
146
- "type": "uint256"
147
- }
148
- ],
149
- "name": "burn",
150
- "outputs": [],
151
- "stateMutability": "nonpayable",
152
- "type": "function"
153
- },
154
- {
155
- "inputs": [],
156
- "name": "decimals",
157
- "outputs": [
158
- {
159
- "internalType": "uint8",
160
- "name": "",
161
- "type": "uint8"
162
- }
163
- ],
164
- "stateMutability": "view",
165
- "type": "function"
166
- },
167
- {
168
- "inputs": [
169
- {
170
- "internalType": "address",
171
- "name": "spender",
172
- "type": "address"
173
- },
174
- {
175
- "internalType": "uint256",
176
- "name": "subtractedValue",
177
- "type": "uint256"
178
- }
179
- ],
180
- "name": "decreaseAllowance",
181
- "outputs": [
182
- {
183
- "internalType": "bool",
184
- "name": "",
185
- "type": "bool"
186
- }
187
- ],
188
- "stateMutability": "nonpayable",
189
- "type": "function"
190
- },
191
- {
192
- "inputs": [
193
- {
194
- "internalType": "address",
195
- "name": "spender",
196
- "type": "address"
197
- },
198
- {
199
- "internalType": "uint256",
200
- "name": "addedValue",
201
- "type": "uint256"
202
- }
203
- ],
204
- "name": "increaseAllowance",
205
- "outputs": [
206
- {
207
- "internalType": "bool",
208
- "name": "",
209
- "type": "bool"
210
- }
211
- ],
212
- "stateMutability": "nonpayable",
213
- "type": "function"
214
- },
215
- {
216
- "inputs": [
217
- {
218
- "internalType": "string",
219
- "name": "name_",
220
- "type": "string"
221
- },
222
- {
223
- "internalType": "string",
224
- "name": "symbol_",
225
- "type": "string"
226
- },
227
- {
228
- "internalType": "uint256",
229
- "name": "initialSupply",
230
- "type": "uint256"
231
- }
232
- ],
233
- "name": "initialize",
234
- "outputs": [],
235
- "stateMutability": "nonpayable",
236
- "type": "function"
237
- },
238
- {
239
- "inputs": [
240
- {
241
- "internalType": "address",
242
- "name": "recipient",
243
- "type": "address"
244
- },
245
- {
246
- "internalType": "uint256",
247
- "name": "amount",
248
- "type": "uint256"
249
- }
250
- ],
251
- "name": "mint",
252
- "outputs": [],
253
- "stateMutability": "nonpayable",
254
- "type": "function"
255
- },
256
- {
257
- "inputs": [],
258
- "name": "name",
259
- "outputs": [
260
- {
261
- "internalType": "string",
262
- "name": "",
263
- "type": "string"
264
- }
265
- ],
266
- "stateMutability": "view",
267
- "type": "function"
268
- },
269
- {
270
- "inputs": [],
271
- "name": "symbol",
272
- "outputs": [
273
- {
274
- "internalType": "string",
275
- "name": "",
276
- "type": "string"
277
- }
278
- ],
279
- "stateMutability": "view",
280
- "type": "function"
281
- },
282
- {
283
- "inputs": [],
284
- "name": "totalSupply",
285
- "outputs": [
286
- {
287
- "internalType": "uint256",
288
- "name": "",
289
- "type": "uint256"
290
- }
291
- ],
292
- "stateMutability": "view",
293
- "type": "function"
294
- },
295
- {
296
- "inputs": [
297
- {
298
- "internalType": "address",
299
- "name": "to",
300
- "type": "address"
301
- },
302
- {
303
- "internalType": "uint256",
304
- "name": "amount",
305
- "type": "uint256"
306
- }
307
- ],
308
- "name": "transfer",
309
- "outputs": [
310
- {
311
- "internalType": "bool",
312
- "name": "",
313
- "type": "bool"
314
- }
315
- ],
316
- "stateMutability": "nonpayable",
317
- "type": "function"
318
- },
319
- {
320
- "inputs": [
321
- {
322
- "internalType": "address",
323
- "name": "from",
324
- "type": "address"
325
- },
326
- {
327
- "internalType": "address",
328
- "name": "to",
329
- "type": "address"
330
- },
331
- {
332
- "internalType": "uint256",
333
- "name": "amount",
334
- "type": "uint256"
335
- }
336
- ],
337
- "name": "transferFrom",
338
- "outputs": [
339
- {
340
- "internalType": "bool",
341
- "name": "",
342
- "type": "bool"
343
- }
344
- ],
345
- "stateMutability": "nonpayable",
346
- "type": "function"
347
- }
348
- ],
349
- "bytecode": "0x608060405234801561001057600080fd5b50610f07806100206000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c806370a082311161008c578063a457c2d711610066578063a457c2d7146101d0578063a9059cbb146101e3578063b119490e146101f6578063dd62ed3e1461020957600080fd5b806370a082311461018c57806395d89b41146101b55780639dc29fac146101bd57600080fd5b806323b872dd116100c857806323b872dd14610142578063313ce56714610155578063395093511461016457806340c10f191461017757600080fd5b806306fdde03146100ef578063095ea7b31461010d57806318160ddd14610130575b600080fd5b6100f761021c565b6040516101049190610d9b565b60405180910390f35b61012061011b366004610d04565b6102ae565b6040519015158152602001610104565b6035545b604051908152602001610104565b610120610150366004610cc8565b6102c6565b60405160128152602001610104565b610120610172366004610d04565b6102ea565b61018a610185366004610d04565b61030c565b005b61013461019a366004610c73565b6001600160a01b031660009081526033602052604090205490565b6100f761031a565b61018a6101cb366004610d04565b610329565b6101206101de366004610d04565b610333565b6101206101f1366004610d04565b6103b3565b61018a610204366004610d2e565b6103c1565b610134610217366004610c95565b6104ff565b60606036805461022b90610e6a565b80601f016020809104026020016040519081016040528092919081815260200182805461025790610e6a565b80156102a45780601f10610279576101008083540402835291602001916102a4565b820191906000526020600020905b81548152906001019060200180831161028757829003601f168201915b5050505050905090565b6000336102bc81858561052a565b5060019392505050565b6000336102d485828561064f565b6102df8585856106c3565b506001949350505050565b6000336102bc8185856102fd83836104ff565b6103079190610e3b565b61052a565b6103168282610891565b5050565b60606037805461022b90610e6a565b6103168282610970565b6000338161034182866104ff565b9050838110156103a65760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b6102df828686840361052a565b6000336102bc8185856106c3565b600054610100900460ff16158080156103e15750600054600160ff909116105b806103fb5750303b1580156103fb575060005460ff166001145b61045e5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161039d565b6000805460ff191660011790558015610481576000805461ff0019166101001790555b606580546001600160a01b0319163317905561049d8484610abb565b6065546104b3906001600160a01b031683610891565b80156104f9576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b6001600160a01b03831661058c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161039d565b6001600160a01b0382166105ed5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161039d565b6001600160a01b0383811660008181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b600061065b84846104ff565b905060001981146104f957818110156106b65760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161039d565b6104f9848484840361052a565b6001600160a01b0383166107275760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161039d565b6001600160a01b0382166107895760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161039d565b6001600160a01b038316600090815260336020526040902054818110156108015760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161039d565b6001600160a01b03808516600090815260336020526040808220858503905591851681529081208054849290610838908490610e3b565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161088491815260200190565b60405180910390a36104f9565b6001600160a01b0382166108e75760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161039d565b80603560008282546108f99190610e3b565b90915550506001600160a01b03821660009081526033602052604081208054839290610926908490610e3b565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6001600160a01b0382166109d05760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b606482015260840161039d565b6001600160a01b03821660009081526033602052604090205481811015610a445760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b606482015260840161039d565b6001600160a01b0383166000908152603360205260408120838303905560358054849290610a73908490610e53565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001610642565b505050565b600054610100900460ff16610ae25760405162461bcd60e51b815260040161039d90610df0565b6103168282600054610100900460ff16610b0e5760405162461bcd60e51b815260040161039d90610df0565b8151610b21906036906020850190610b31565b508051610ab69060379060208401905b828054610b3d90610e6a565b90600052602060002090601f016020900481019282610b5f5760008555610ba5565b82601f10610b7857805160ff1916838001178555610ba5565b82800160010185558215610ba5579182015b82811115610ba5578251825591602001919060010190610b8a565b50610bb1929150610bb5565b5090565b5b80821115610bb15760008155600101610bb6565b80356001600160a01b0381168114610be157600080fd5b919050565b600082601f830112610bf757600080fd5b813567ffffffffffffffff80821115610c1257610c12610ebb565b604051601f8301601f19908116603f01168101908282118183101715610c3a57610c3a610ebb565b81604052838152866020858801011115610c5357600080fd5b836020870160208301376000602085830101528094505050505092915050565b600060208284031215610c8557600080fd5b610c8e82610bca565b9392505050565b60008060408385031215610ca857600080fd5b610cb183610bca565b9150610cbf60208401610bca565b90509250929050565b600080600060608486031215610cdd57600080fd5b610ce684610bca565b9250610cf460208501610bca565b9150604084013590509250925092565b60008060408385031215610d1757600080fd5b610d2083610bca565b946020939093013593505050565b600080600060608486031215610d4357600080fd5b833567ffffffffffffffff80821115610d5b57600080fd5b610d6787838801610be6565b94506020860135915080821115610d7d57600080fd5b50610d8a86828701610be6565b925050604084013590509250925092565b600060208083528351808285015260005b81811015610dc857858101830151858201604001528201610dac565b81811115610dda576000604083870101525b50601f01601f1916929092016040019392505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60008219821115610e4e57610e4e610ea5565b500190565b600082821015610e6557610e65610ea5565b500390565b600181811c90821680610e7e57607f821691505b60208210811415610e9f57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fdfea2646970667358221220f9d92f304f4360d354738de64a65b7f7eea2d21ee78815b84eeccee5f889c1f064736f6c63430008060033",
350
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c806370a082311161008c578063a457c2d711610066578063a457c2d7146101d0578063a9059cbb146101e3578063b119490e146101f6578063dd62ed3e1461020957600080fd5b806370a082311461018c57806395d89b41146101b55780639dc29fac146101bd57600080fd5b806323b872dd116100c857806323b872dd14610142578063313ce56714610155578063395093511461016457806340c10f191461017757600080fd5b806306fdde03146100ef578063095ea7b31461010d57806318160ddd14610130575b600080fd5b6100f761021c565b6040516101049190610d9b565b60405180910390f35b61012061011b366004610d04565b6102ae565b6040519015158152602001610104565b6035545b604051908152602001610104565b610120610150366004610cc8565b6102c6565b60405160128152602001610104565b610120610172366004610d04565b6102ea565b61018a610185366004610d04565b61030c565b005b61013461019a366004610c73565b6001600160a01b031660009081526033602052604090205490565b6100f761031a565b61018a6101cb366004610d04565b610329565b6101206101de366004610d04565b610333565b6101206101f1366004610d04565b6103b3565b61018a610204366004610d2e565b6103c1565b610134610217366004610c95565b6104ff565b60606036805461022b90610e6a565b80601f016020809104026020016040519081016040528092919081815260200182805461025790610e6a565b80156102a45780601f10610279576101008083540402835291602001916102a4565b820191906000526020600020905b81548152906001019060200180831161028757829003601f168201915b5050505050905090565b6000336102bc81858561052a565b5060019392505050565b6000336102d485828561064f565b6102df8585856106c3565b506001949350505050565b6000336102bc8185856102fd83836104ff565b6103079190610e3b565b61052a565b6103168282610891565b5050565b60606037805461022b90610e6a565b6103168282610970565b6000338161034182866104ff565b9050838110156103a65760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b6102df828686840361052a565b6000336102bc8185856106c3565b600054610100900460ff16158080156103e15750600054600160ff909116105b806103fb5750303b1580156103fb575060005460ff166001145b61045e5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161039d565b6000805460ff191660011790558015610481576000805461ff0019166101001790555b606580546001600160a01b0319163317905561049d8484610abb565b6065546104b3906001600160a01b031683610891565b80156104f9576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b6001600160a01b03831661058c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161039d565b6001600160a01b0382166105ed5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161039d565b6001600160a01b0383811660008181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b600061065b84846104ff565b905060001981146104f957818110156106b65760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161039d565b6104f9848484840361052a565b6001600160a01b0383166107275760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161039d565b6001600160a01b0382166107895760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161039d565b6001600160a01b038316600090815260336020526040902054818110156108015760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161039d565b6001600160a01b03808516600090815260336020526040808220858503905591851681529081208054849290610838908490610e3b565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161088491815260200190565b60405180910390a36104f9565b6001600160a01b0382166108e75760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161039d565b80603560008282546108f99190610e3b565b90915550506001600160a01b03821660009081526033602052604081208054839290610926908490610e3b565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6001600160a01b0382166109d05760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b606482015260840161039d565b6001600160a01b03821660009081526033602052604090205481811015610a445760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b606482015260840161039d565b6001600160a01b0383166000908152603360205260408120838303905560358054849290610a73908490610e53565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001610642565b505050565b600054610100900460ff16610ae25760405162461bcd60e51b815260040161039d90610df0565b6103168282600054610100900460ff16610b0e5760405162461bcd60e51b815260040161039d90610df0565b8151610b21906036906020850190610b31565b508051610ab69060379060208401905b828054610b3d90610e6a565b90600052602060002090601f016020900481019282610b5f5760008555610ba5565b82601f10610b7857805160ff1916838001178555610ba5565b82800160010185558215610ba5579182015b82811115610ba5578251825591602001919060010190610b8a565b50610bb1929150610bb5565b5090565b5b80821115610bb15760008155600101610bb6565b80356001600160a01b0381168114610be157600080fd5b919050565b600082601f830112610bf757600080fd5b813567ffffffffffffffff80821115610c1257610c12610ebb565b604051601f8301601f19908116603f01168101908282118183101715610c3a57610c3a610ebb565b81604052838152866020858801011115610c5357600080fd5b836020870160208301376000602085830101528094505050505092915050565b600060208284031215610c8557600080fd5b610c8e82610bca565b9392505050565b60008060408385031215610ca857600080fd5b610cb183610bca565b9150610cbf60208401610bca565b90509250929050565b600080600060608486031215610cdd57600080fd5b610ce684610bca565b9250610cf460208501610bca565b9150604084013590509250925092565b60008060408385031215610d1757600080fd5b610d2083610bca565b946020939093013593505050565b600080600060608486031215610d4357600080fd5b833567ffffffffffffffff80821115610d5b57600080fd5b610d6787838801610be6565b94506020860135915080821115610d7d57600080fd5b50610d8a86828701610be6565b925050604084013590509250925092565b600060208083528351808285015260005b81811015610dc857858101830151858201604001528201610dac565b81811115610dda576000604083870101525b50601f01601f1916929092016040019392505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60008219821115610e4e57610e4e610ea5565b500190565b600082821015610e6557610e65610ea5565b500390565b600181811c90821680610e7e57607f821691505b60208210811415610e9f57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fdfea2646970667358221220f9d92f304f4360d354738de64a65b7f7eea2d21ee78815b84eeccee5f889c1f064736f6c63430008060033",
351
- "linkReferences": {},
352
- "deployedLinkReferences": {}
353
- }
@@ -1,322 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "IPolicyNFTv1",
4
- "sourceName": "contracts/upgraded/IPolicyNFTv1.sol",
5
- "abi": [
6
- {
7
- "anonymous": false,
8
- "inputs": [
9
- {
10
- "indexed": true,
11
- "internalType": "address",
12
- "name": "owner",
13
- "type": "address"
14
- },
15
- {
16
- "indexed": true,
17
- "internalType": "address",
18
- "name": "approved",
19
- "type": "address"
20
- },
21
- {
22
- "indexed": true,
23
- "internalType": "uint256",
24
- "name": "tokenId",
25
- "type": "uint256"
26
- }
27
- ],
28
- "name": "Approval",
29
- "type": "event"
30
- },
31
- {
32
- "anonymous": false,
33
- "inputs": [
34
- {
35
- "indexed": true,
36
- "internalType": "address",
37
- "name": "owner",
38
- "type": "address"
39
- },
40
- {
41
- "indexed": true,
42
- "internalType": "address",
43
- "name": "operator",
44
- "type": "address"
45
- },
46
- {
47
- "indexed": false,
48
- "internalType": "bool",
49
- "name": "approved",
50
- "type": "bool"
51
- }
52
- ],
53
- "name": "ApprovalForAll",
54
- "type": "event"
55
- },
56
- {
57
- "anonymous": false,
58
- "inputs": [
59
- {
60
- "indexed": true,
61
- "internalType": "address",
62
- "name": "from",
63
- "type": "address"
64
- },
65
- {
66
- "indexed": true,
67
- "internalType": "address",
68
- "name": "to",
69
- "type": "address"
70
- },
71
- {
72
- "indexed": true,
73
- "internalType": "uint256",
74
- "name": "tokenId",
75
- "type": "uint256"
76
- }
77
- ],
78
- "name": "Transfer",
79
- "type": "event"
80
- },
81
- {
82
- "inputs": [
83
- {
84
- "internalType": "address",
85
- "name": "to",
86
- "type": "address"
87
- },
88
- {
89
- "internalType": "uint256",
90
- "name": "tokenId",
91
- "type": "uint256"
92
- }
93
- ],
94
- "name": "approve",
95
- "outputs": [],
96
- "stateMutability": "nonpayable",
97
- "type": "function"
98
- },
99
- {
100
- "inputs": [
101
- {
102
- "internalType": "address",
103
- "name": "owner",
104
- "type": "address"
105
- }
106
- ],
107
- "name": "balanceOf",
108
- "outputs": [
109
- {
110
- "internalType": "uint256",
111
- "name": "balance",
112
- "type": "uint256"
113
- }
114
- ],
115
- "stateMutability": "view",
116
- "type": "function"
117
- },
118
- {
119
- "inputs": [],
120
- "name": "connect",
121
- "outputs": [],
122
- "stateMutability": "nonpayable",
123
- "type": "function"
124
- },
125
- {
126
- "inputs": [
127
- {
128
- "internalType": "uint256",
129
- "name": "tokenId",
130
- "type": "uint256"
131
- }
132
- ],
133
- "name": "getApproved",
134
- "outputs": [
135
- {
136
- "internalType": "address",
137
- "name": "operator",
138
- "type": "address"
139
- }
140
- ],
141
- "stateMutability": "view",
142
- "type": "function"
143
- },
144
- {
145
- "inputs": [
146
- {
147
- "internalType": "address",
148
- "name": "owner",
149
- "type": "address"
150
- },
151
- {
152
- "internalType": "address",
153
- "name": "operator",
154
- "type": "address"
155
- }
156
- ],
157
- "name": "isApprovedForAll",
158
- "outputs": [
159
- {
160
- "internalType": "bool",
161
- "name": "",
162
- "type": "bool"
163
- }
164
- ],
165
- "stateMutability": "view",
166
- "type": "function"
167
- },
168
- {
169
- "inputs": [
170
- {
171
- "internalType": "uint256",
172
- "name": "tokenId",
173
- "type": "uint256"
174
- }
175
- ],
176
- "name": "ownerOf",
177
- "outputs": [
178
- {
179
- "internalType": "address",
180
- "name": "owner",
181
- "type": "address"
182
- }
183
- ],
184
- "stateMutability": "view",
185
- "type": "function"
186
- },
187
- {
188
- "inputs": [
189
- {
190
- "internalType": "address",
191
- "name": "to",
192
- "type": "address"
193
- }
194
- ],
195
- "name": "safeMint",
196
- "outputs": [
197
- {
198
- "internalType": "uint256",
199
- "name": "",
200
- "type": "uint256"
201
- }
202
- ],
203
- "stateMutability": "nonpayable",
204
- "type": "function"
205
- },
206
- {
207
- "inputs": [
208
- {
209
- "internalType": "address",
210
- "name": "from",
211
- "type": "address"
212
- },
213
- {
214
- "internalType": "address",
215
- "name": "to",
216
- "type": "address"
217
- },
218
- {
219
- "internalType": "uint256",
220
- "name": "tokenId",
221
- "type": "uint256"
222
- }
223
- ],
224
- "name": "safeTransferFrom",
225
- "outputs": [],
226
- "stateMutability": "nonpayable",
227
- "type": "function"
228
- },
229
- {
230
- "inputs": [
231
- {
232
- "internalType": "address",
233
- "name": "from",
234
- "type": "address"
235
- },
236
- {
237
- "internalType": "address",
238
- "name": "to",
239
- "type": "address"
240
- },
241
- {
242
- "internalType": "uint256",
243
- "name": "tokenId",
244
- "type": "uint256"
245
- },
246
- {
247
- "internalType": "bytes",
248
- "name": "data",
249
- "type": "bytes"
250
- }
251
- ],
252
- "name": "safeTransferFrom",
253
- "outputs": [],
254
- "stateMutability": "nonpayable",
255
- "type": "function"
256
- },
257
- {
258
- "inputs": [
259
- {
260
- "internalType": "address",
261
- "name": "operator",
262
- "type": "address"
263
- },
264
- {
265
- "internalType": "bool",
266
- "name": "_approved",
267
- "type": "bool"
268
- }
269
- ],
270
- "name": "setApprovalForAll",
271
- "outputs": [],
272
- "stateMutability": "nonpayable",
273
- "type": "function"
274
- },
275
- {
276
- "inputs": [
277
- {
278
- "internalType": "bytes4",
279
- "name": "interfaceId",
280
- "type": "bytes4"
281
- }
282
- ],
283
- "name": "supportsInterface",
284
- "outputs": [
285
- {
286
- "internalType": "bool",
287
- "name": "",
288
- "type": "bool"
289
- }
290
- ],
291
- "stateMutability": "view",
292
- "type": "function"
293
- },
294
- {
295
- "inputs": [
296
- {
297
- "internalType": "address",
298
- "name": "from",
299
- "type": "address"
300
- },
301
- {
302
- "internalType": "address",
303
- "name": "to",
304
- "type": "address"
305
- },
306
- {
307
- "internalType": "uint256",
308
- "name": "tokenId",
309
- "type": "uint256"
310
- }
311
- ],
312
- "name": "transferFrom",
313
- "outputs": [],
314
- "stateMutability": "nonpayable",
315
- "type": "function"
316
- }
317
- ],
318
- "bytecode": "0x",
319
- "deployedBytecode": "0x",
320
- "linkReferences": {},
321
- "deployedLinkReferences": {}
322
- }