@ensuro/core 2.6.2 → 2.8.0-beta1

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 +11 -5
  2. package/contracts/AccessManager.sol +3 -13
  3. package/contracts/EToken.sol +29 -95
  4. package/contracts/LPManualWhitelist.sol +11 -26
  5. package/contracts/LiquidityThresholdAssetManager.sol +10 -21
  6. package/contracts/Policy.sol +6 -17
  7. package/contracts/PolicyPool.sol +39 -91
  8. package/contracts/PolicyPoolComponent.sol +9 -32
  9. package/contracts/PremiumsAccount.sol +16 -47
  10. package/contracts/Reserve.sol +10 -16
  11. package/contracts/RiskModule.sol +22 -80
  12. package/contracts/SignedBucketRiskModule.sol +18 -80
  13. package/contracts/SignedQuoteRiskModule.sol +13 -44
  14. package/contracts/TieredSignedQuoteRiskModule.sol +7 -13
  15. package/contracts/TimeScaled.sol +8 -39
  16. package/contracts/TrustfulRiskModule.sol +13 -48
  17. package/contracts/interfaces/IAccessManager.sol +2 -11
  18. package/contracts/interfaces/IEToken.sol +1 -5
  19. package/contracts/interfaces/ILPWhitelist.sol +2 -10
  20. package/contracts/interfaces/IPolicyHolder.sol +2 -11
  21. package/contracts/interfaces/IPremiumsAccount.sol +1 -5
  22. package/contracts/migration/LPManualWhitelistV20.sol +3 -15
  23. package/contracts/migration/LPManualWhitelistV20Upgraded.sol +1 -5
  24. package/contracts/mocks/FixedRateVault.sol +1 -6
  25. package/contracts/mocks/PolicyHolderMock.sol +73 -29
  26. package/contracts/mocks/PolicyPoolComponentMock.sol +1 -3
  27. package/contracts/mocks/PolicyPoolMock.sol +8 -28
  28. package/contracts/mocks/RiskModuleMock.sol +3 -16
  29. package/contracts/mocks/TestNFT.sol +1 -1
  30. package/js/constants.js +8 -2
  31. package/js/deploy.js +65 -62
  32. package/js/enums.js +26 -8
  33. package/js/test-utils.js +105 -23
  34. package/js/utils.js +78 -28
  35. package/package.json +1 -1
  36. package/scripts/utils.sh +23 -12
  37. package/build/contracts/AccessManager.sol/AccessManager.json +0 -618
  38. package/build/contracts/ERC4626AssetManager.sol/ERC4626AssetManager.json +0 -238
  39. package/build/contracts/EToken.sol/EToken.json +0 -1277
  40. package/build/contracts/LPManualWhitelist.sol/LPManualWhitelist.json +0 -647
  41. package/build/contracts/LiquidityThresholdAssetManager.sol/LiquidityThresholdAssetManager.json +0 -222
  42. package/build/contracts/Policy.sol/Policy.json +0 -10
  43. package/build/contracts/PolicyPool.sol/PolicyPool.json +0 -1416
  44. package/build/contracts/PolicyPoolComponent.sol/PolicyPoolComponent.json +0 -332
  45. package/build/contracts/PremiumsAccount.sol/PremiumsAccount.json +0 -970
  46. package/build/contracts/Reserve.sol/Reserve.json +0 -403
  47. package/build/contracts/RiskModule.sol/RiskModule.json +0 -559
  48. package/build/contracts/SignedBucketRiskModule.sol/SignedBucketRiskModule.json +0 -1262
  49. package/build/contracts/SignedQuoteRiskModule.sol/SignedQuoteRiskModule.json +0 -1110
  50. package/build/contracts/TieredSignedQuoteRiskModule.sol/TieredSignedQuoteRiskModule.json +0 -1316
  51. package/build/contracts/TimeScaled.sol/TimeScaled.json +0 -10
  52. package/build/contracts/TrustfulRiskModule.sol/TrustfulRiskModule.json +0 -984
  53. package/build/contracts/dependencies/ERC1967Proxy.sol/ERC1967Proxy.json +0 -64
  54. package/build/contracts/dependencies/IERC20Metadata.sol/IERC20Metadata.json +0 -233
  55. package/build/contracts/dependencies/WadRayMath.sol/WadRayMath.json +0 -10
  56. package/build/contracts/interfaces/IAccessManager.sol/IAccessManager.json +0 -343
  57. package/build/contracts/interfaces/IAssetManager.sol/IAssetManager.json +0 -128
  58. package/build/contracts/interfaces/IEToken.sol/IEToken.json +0 -460
  59. package/build/contracts/interfaces/ILPWhitelist.sol/ILPWhitelist.json +0 -103
  60. package/build/contracts/interfaces/IPolicyHolder.sol/IPolicyHolder.json +0 -108
  61. package/build/contracts/interfaces/IPolicyPool.sol/IPolicyPool.json +0 -501
  62. package/build/contracts/interfaces/IPolicyPoolComponent.sol/IPolicyPoolComponent.json +0 -43
  63. package/build/contracts/interfaces/IPremiumsAccount.sol/IPremiumsAccount.json +0 -315
  64. package/build/contracts/interfaces/IRiskModule.sol/IRiskModule.json +0 -165
  65. package/build/contracts/migration/LPManualWhitelistV20.sol/LPManualWhitelistV20.json +0 -481
  66. package/build/contracts/migration/LPManualWhitelistV20Upgraded.sol/LPManualWhitelistV20Upgraded.json +0 -492
  67. package/build/contracts/mocks/FixedRateVault.sol/FixedRateVault.json +0 -736
  68. package/build/contracts/mocks/ForwardProxy.sol/ForwardProxy.json +0 -43
  69. package/build/contracts/mocks/IMintableERC20.sol/IMintableERC20.json +0 -47
  70. package/build/contracts/mocks/InterfaceIdCalculator.sol/InterfaceIdCalculator.json +0 -180
  71. package/build/contracts/mocks/PolicyHolderMock.sol/PolicyHolderMock.json +0 -228
  72. package/build/contracts/mocks/PolicyPoolComponentMock.sol/PolicyPoolComponentMock.json +0 -54
  73. package/build/contracts/mocks/PolicyPoolMock.sol/PolicyPoolMock.json +0 -721
  74. package/build/contracts/mocks/PolicyPoolMock.sol/PolicyPoolMockForward.json +0 -92
  75. package/build/contracts/mocks/RiskModuleMock.sol/RiskModuleMock.json +0 -783
  76. package/build/contracts/mocks/TestCurrency.sol/TestCurrency.json +0 -343
  77. package/build/contracts/mocks/TestNFT.sol/TestNFT.json +0 -388
  78. package/contracts/dependencies/ERC1967Proxy.sol +0 -19
  79. package/contracts/dependencies/IERC20Metadata.sol +0 -19
@@ -1,618 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "AccessManager",
4
- "sourceName": "contracts/AccessManager.sol",
5
- "abi": [
6
- {
7
- "inputs": [],
8
- "stateMutability": "nonpayable",
9
- "type": "constructor"
10
- },
11
- {
12
- "anonymous": false,
13
- "inputs": [
14
- {
15
- "indexed": false,
16
- "internalType": "address",
17
- "name": "previousAdmin",
18
- "type": "address"
19
- },
20
- {
21
- "indexed": false,
22
- "internalType": "address",
23
- "name": "newAdmin",
24
- "type": "address"
25
- }
26
- ],
27
- "name": "AdminChanged",
28
- "type": "event"
29
- },
30
- {
31
- "anonymous": false,
32
- "inputs": [
33
- {
34
- "indexed": true,
35
- "internalType": "address",
36
- "name": "beacon",
37
- "type": "address"
38
- }
39
- ],
40
- "name": "BeaconUpgraded",
41
- "type": "event"
42
- },
43
- {
44
- "anonymous": false,
45
- "inputs": [
46
- {
47
- "indexed": false,
48
- "internalType": "uint8",
49
- "name": "version",
50
- "type": "uint8"
51
- }
52
- ],
53
- "name": "Initialized",
54
- "type": "event"
55
- },
56
- {
57
- "anonymous": false,
58
- "inputs": [
59
- {
60
- "indexed": true,
61
- "internalType": "bytes32",
62
- "name": "role",
63
- "type": "bytes32"
64
- },
65
- {
66
- "indexed": true,
67
- "internalType": "bytes32",
68
- "name": "previousAdminRole",
69
- "type": "bytes32"
70
- },
71
- {
72
- "indexed": true,
73
- "internalType": "bytes32",
74
- "name": "newAdminRole",
75
- "type": "bytes32"
76
- }
77
- ],
78
- "name": "RoleAdminChanged",
79
- "type": "event"
80
- },
81
- {
82
- "anonymous": false,
83
- "inputs": [
84
- {
85
- "indexed": true,
86
- "internalType": "bytes32",
87
- "name": "role",
88
- "type": "bytes32"
89
- },
90
- {
91
- "indexed": true,
92
- "internalType": "address",
93
- "name": "account",
94
- "type": "address"
95
- },
96
- {
97
- "indexed": true,
98
- "internalType": "address",
99
- "name": "sender",
100
- "type": "address"
101
- }
102
- ],
103
- "name": "RoleGranted",
104
- "type": "event"
105
- },
106
- {
107
- "anonymous": false,
108
- "inputs": [
109
- {
110
- "indexed": true,
111
- "internalType": "bytes32",
112
- "name": "role",
113
- "type": "bytes32"
114
- },
115
- {
116
- "indexed": true,
117
- "internalType": "address",
118
- "name": "account",
119
- "type": "address"
120
- },
121
- {
122
- "indexed": true,
123
- "internalType": "address",
124
- "name": "sender",
125
- "type": "address"
126
- }
127
- ],
128
- "name": "RoleRevoked",
129
- "type": "event"
130
- },
131
- {
132
- "anonymous": false,
133
- "inputs": [
134
- {
135
- "indexed": true,
136
- "internalType": "address",
137
- "name": "implementation",
138
- "type": "address"
139
- }
140
- ],
141
- "name": "Upgraded",
142
- "type": "event"
143
- },
144
- {
145
- "inputs": [],
146
- "name": "ANY_COMPONENT",
147
- "outputs": [
148
- {
149
- "internalType": "address",
150
- "name": "",
151
- "type": "address"
152
- }
153
- ],
154
- "stateMutability": "view",
155
- "type": "function"
156
- },
157
- {
158
- "inputs": [],
159
- "name": "DEFAULT_ADMIN_ROLE",
160
- "outputs": [
161
- {
162
- "internalType": "bytes32",
163
- "name": "",
164
- "type": "bytes32"
165
- }
166
- ],
167
- "stateMutability": "view",
168
- "type": "function"
169
- },
170
- {
171
- "inputs": [],
172
- "name": "GUARDIAN_ROLE",
173
- "outputs": [
174
- {
175
- "internalType": "bytes32",
176
- "name": "",
177
- "type": "bytes32"
178
- }
179
- ],
180
- "stateMutability": "view",
181
- "type": "function"
182
- },
183
- {
184
- "inputs": [],
185
- "name": "LEVEL1_ROLE",
186
- "outputs": [
187
- {
188
- "internalType": "bytes32",
189
- "name": "",
190
- "type": "bytes32"
191
- }
192
- ],
193
- "stateMutability": "view",
194
- "type": "function"
195
- },
196
- {
197
- "inputs": [],
198
- "name": "LEVEL2_ROLE",
199
- "outputs": [
200
- {
201
- "internalType": "bytes32",
202
- "name": "",
203
- "type": "bytes32"
204
- }
205
- ],
206
- "stateMutability": "view",
207
- "type": "function"
208
- },
209
- {
210
- "inputs": [],
211
- "name": "LEVEL3_ROLE",
212
- "outputs": [
213
- {
214
- "internalType": "bytes32",
215
- "name": "",
216
- "type": "bytes32"
217
- }
218
- ],
219
- "stateMutability": "view",
220
- "type": "function"
221
- },
222
- {
223
- "inputs": [
224
- {
225
- "internalType": "address",
226
- "name": "component",
227
- "type": "address"
228
- },
229
- {
230
- "internalType": "bytes32",
231
- "name": "role",
232
- "type": "bytes32"
233
- },
234
- {
235
- "internalType": "address",
236
- "name": "account",
237
- "type": "address"
238
- },
239
- {
240
- "internalType": "bool",
241
- "name": "alsoGlobal",
242
- "type": "bool"
243
- }
244
- ],
245
- "name": "checkComponentRole",
246
- "outputs": [],
247
- "stateMutability": "view",
248
- "type": "function"
249
- },
250
- {
251
- "inputs": [
252
- {
253
- "internalType": "address",
254
- "name": "component",
255
- "type": "address"
256
- },
257
- {
258
- "internalType": "bytes32",
259
- "name": "role1",
260
- "type": "bytes32"
261
- },
262
- {
263
- "internalType": "bytes32",
264
- "name": "role2",
265
- "type": "bytes32"
266
- },
267
- {
268
- "internalType": "address",
269
- "name": "account",
270
- "type": "address"
271
- },
272
- {
273
- "internalType": "bool",
274
- "name": "alsoGlobal",
275
- "type": "bool"
276
- }
277
- ],
278
- "name": "checkComponentRole2",
279
- "outputs": [],
280
- "stateMutability": "view",
281
- "type": "function"
282
- },
283
- {
284
- "inputs": [
285
- {
286
- "internalType": "bytes32",
287
- "name": "role",
288
- "type": "bytes32"
289
- },
290
- {
291
- "internalType": "address",
292
- "name": "account",
293
- "type": "address"
294
- }
295
- ],
296
- "name": "checkRole",
297
- "outputs": [],
298
- "stateMutability": "view",
299
- "type": "function"
300
- },
301
- {
302
- "inputs": [
303
- {
304
- "internalType": "bytes32",
305
- "name": "role1",
306
- "type": "bytes32"
307
- },
308
- {
309
- "internalType": "bytes32",
310
- "name": "role2",
311
- "type": "bytes32"
312
- },
313
- {
314
- "internalType": "address",
315
- "name": "account",
316
- "type": "address"
317
- }
318
- ],
319
- "name": "checkRole2",
320
- "outputs": [],
321
- "stateMutability": "view",
322
- "type": "function"
323
- },
324
- {
325
- "inputs": [
326
- {
327
- "internalType": "address",
328
- "name": "component",
329
- "type": "address"
330
- },
331
- {
332
- "internalType": "bytes32",
333
- "name": "role",
334
- "type": "bytes32"
335
- }
336
- ],
337
- "name": "getComponentRole",
338
- "outputs": [
339
- {
340
- "internalType": "bytes32",
341
- "name": "",
342
- "type": "bytes32"
343
- }
344
- ],
345
- "stateMutability": "pure",
346
- "type": "function"
347
- },
348
- {
349
- "inputs": [
350
- {
351
- "internalType": "bytes32",
352
- "name": "role",
353
- "type": "bytes32"
354
- }
355
- ],
356
- "name": "getRoleAdmin",
357
- "outputs": [
358
- {
359
- "internalType": "bytes32",
360
- "name": "",
361
- "type": "bytes32"
362
- }
363
- ],
364
- "stateMutability": "view",
365
- "type": "function"
366
- },
367
- {
368
- "inputs": [
369
- {
370
- "internalType": "address",
371
- "name": "component",
372
- "type": "address"
373
- },
374
- {
375
- "internalType": "bytes32",
376
- "name": "role",
377
- "type": "bytes32"
378
- },
379
- {
380
- "internalType": "address",
381
- "name": "account",
382
- "type": "address"
383
- }
384
- ],
385
- "name": "grantComponentRole",
386
- "outputs": [],
387
- "stateMutability": "nonpayable",
388
- "type": "function"
389
- },
390
- {
391
- "inputs": [
392
- {
393
- "internalType": "bytes32",
394
- "name": "role",
395
- "type": "bytes32"
396
- },
397
- {
398
- "internalType": "address",
399
- "name": "account",
400
- "type": "address"
401
- }
402
- ],
403
- "name": "grantRole",
404
- "outputs": [],
405
- "stateMutability": "nonpayable",
406
- "type": "function"
407
- },
408
- {
409
- "inputs": [
410
- {
411
- "internalType": "address",
412
- "name": "component",
413
- "type": "address"
414
- },
415
- {
416
- "internalType": "bytes32",
417
- "name": "role",
418
- "type": "bytes32"
419
- },
420
- {
421
- "internalType": "address",
422
- "name": "account",
423
- "type": "address"
424
- },
425
- {
426
- "internalType": "bool",
427
- "name": "alsoGlobal",
428
- "type": "bool"
429
- }
430
- ],
431
- "name": "hasComponentRole",
432
- "outputs": [
433
- {
434
- "internalType": "bool",
435
- "name": "",
436
- "type": "bool"
437
- }
438
- ],
439
- "stateMutability": "view",
440
- "type": "function"
441
- },
442
- {
443
- "inputs": [
444
- {
445
- "internalType": "bytes32",
446
- "name": "role",
447
- "type": "bytes32"
448
- },
449
- {
450
- "internalType": "address",
451
- "name": "account",
452
- "type": "address"
453
- }
454
- ],
455
- "name": "hasRole",
456
- "outputs": [
457
- {
458
- "internalType": "bool",
459
- "name": "",
460
- "type": "bool"
461
- }
462
- ],
463
- "stateMutability": "view",
464
- "type": "function"
465
- },
466
- {
467
- "inputs": [],
468
- "name": "initialize",
469
- "outputs": [],
470
- "stateMutability": "nonpayable",
471
- "type": "function"
472
- },
473
- {
474
- "inputs": [],
475
- "name": "proxiableUUID",
476
- "outputs": [
477
- {
478
- "internalType": "bytes32",
479
- "name": "",
480
- "type": "bytes32"
481
- }
482
- ],
483
- "stateMutability": "view",
484
- "type": "function"
485
- },
486
- {
487
- "inputs": [
488
- {
489
- "internalType": "bytes32",
490
- "name": "role",
491
- "type": "bytes32"
492
- },
493
- {
494
- "internalType": "address",
495
- "name": "account",
496
- "type": "address"
497
- }
498
- ],
499
- "name": "renounceRole",
500
- "outputs": [],
501
- "stateMutability": "nonpayable",
502
- "type": "function"
503
- },
504
- {
505
- "inputs": [
506
- {
507
- "internalType": "bytes32",
508
- "name": "role",
509
- "type": "bytes32"
510
- },
511
- {
512
- "internalType": "address",
513
- "name": "account",
514
- "type": "address"
515
- }
516
- ],
517
- "name": "revokeRole",
518
- "outputs": [],
519
- "stateMutability": "nonpayable",
520
- "type": "function"
521
- },
522
- {
523
- "inputs": [
524
- {
525
- "internalType": "address",
526
- "name": "component",
527
- "type": "address"
528
- },
529
- {
530
- "internalType": "bytes32",
531
- "name": "role",
532
- "type": "bytes32"
533
- },
534
- {
535
- "internalType": "bytes32",
536
- "name": "adminRole",
537
- "type": "bytes32"
538
- }
539
- ],
540
- "name": "setComponentRoleAdmin",
541
- "outputs": [],
542
- "stateMutability": "nonpayable",
543
- "type": "function"
544
- },
545
- {
546
- "inputs": [
547
- {
548
- "internalType": "bytes32",
549
- "name": "role",
550
- "type": "bytes32"
551
- },
552
- {
553
- "internalType": "bytes32",
554
- "name": "adminRole",
555
- "type": "bytes32"
556
- }
557
- ],
558
- "name": "setRoleAdmin",
559
- "outputs": [],
560
- "stateMutability": "nonpayable",
561
- "type": "function"
562
- },
563
- {
564
- "inputs": [
565
- {
566
- "internalType": "bytes4",
567
- "name": "interfaceId",
568
- "type": "bytes4"
569
- }
570
- ],
571
- "name": "supportsInterface",
572
- "outputs": [
573
- {
574
- "internalType": "bool",
575
- "name": "",
576
- "type": "bool"
577
- }
578
- ],
579
- "stateMutability": "view",
580
- "type": "function"
581
- },
582
- {
583
- "inputs": [
584
- {
585
- "internalType": "address",
586
- "name": "newImplementation",
587
- "type": "address"
588
- }
589
- ],
590
- "name": "upgradeTo",
591
- "outputs": [],
592
- "stateMutability": "nonpayable",
593
- "type": "function"
594
- },
595
- {
596
- "inputs": [
597
- {
598
- "internalType": "address",
599
- "name": "newImplementation",
600
- "type": "address"
601
- },
602
- {
603
- "internalType": "bytes",
604
- "name": "data",
605
- "type": "bytes"
606
- }
607
- ],
608
- "name": "upgradeToAndCall",
609
- "outputs": [],
610
- "stateMutability": "payable",
611
- "type": "function"
612
- }
613
- ],
614
- "bytecode": "0x60a06040523060805234801561001457600080fd5b5061001d610022565b6100e1565b600054610100900460ff161561008e5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff908116146100df576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b608051611a9361011860003960008181610671015281816106b101528181610769015281816107a901526108380152611a936000f3fe6080604052600436106101665760003560e01c806352d1902d116100d1578063ad358f071161008a578063d0b1825611610064578063d0b182561461046e578063d547741f1461048e578063f67b2bad146104ae578063f6a421fc146104e257600080fd5b8063ad358f07146103ee578063b3efcbd21461042e578063c5b8f5cf1461044e57600080fd5b806352d1902d1461033b5780635b494dd5146103505780635ff57d20146103845780638129fc1c146103a457806391d14854146103b9578063a217fddf146103d957600080fd5b80632f2ff15d116101235780632f2ff15d1461027457806336568abe146102945780633659cfe6146102b4578063374c96c8146102d45780634a47a3e0146102f45780634f1ef2861461032857600080fd5b806301ffc9a71461016b57806312d9a6ad146101a05780631e4e0091146101c2578063248a9ca3146101e257806324ea54f4146102205780632b1cff1f14610254575b600080fd5b34801561017757600080fd5b5061018b610186366004611406565b610502565b60405190151581526020015b60405180910390f35b3480156101ac57600080fd5b506101c06101bb36600461144c565b61052e565b005b3480156101ce57600080fd5b506101c06101dd366004611478565b61053c565b3480156101ee57600080fd5b506102126101fd36600461149a565b60009081526065602052604090206001015490565b604051908152602001610197565b34801561022c57600080fd5b506102127f55435dd261a4b9b3364963f7738a7a662ad9c84396d64be3365284bb7f0a504181565b34801561026057600080fd5b506101c061026f3660046114c3565b610566565b34801561028057600080fd5b506101c061028f36600461144c565b6105c3565b3480156102a057600080fd5b506101c06102af36600461144c565b6105e8565b3480156102c057600080fd5b506101c06102cf36600461151a565b610667565b3480156102e057600080fd5b506102126102ef366004611535565b610746565b34801561030057600080fd5b506102127fa82e22387fca439f316d78ca566f383218ab8ae1b3e830178c9c82cbd16749c081565b6101c0610336366004611575565b61075f565b34801561034757600080fd5b5061021261082b565b34801561035c57600080fd5b506102127f5ec196419322369c6bac572d883f4d990ae5ec82f7d93cdf89b85dbb05b63c2781565b34801561039057600080fd5b506101c061039f366004611637565b6108de565b3480156103b057600080fd5b506101c061090a565b3480156103c557600080fd5b5061018b6103d436600461144c565b610a2a565b3480156103e557600080fd5b50610212600081565b3480156103fa57600080fd5b5061041673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b6040516001600160a01b039091168152602001610197565b34801561043a57600080fd5b5061018b610449366004611637565b610a55565b34801561045a57600080fd5b506101c0610469366004611684565b610a8d565b34801561047a57600080fd5b506101c06104893660046116b9565b610aa5565b34801561049a57600080fd5b506101c06104a936600461144c565b610b53565b3480156104ba57600080fd5b506102127fbf372ca3ebecfe59ac256f17697941bbe63302aced610e8b0e3646f743c7beb281565b3480156104ee57600080fd5b506101c06104fd3660046116ec565b610b78565b600061050d82610c20565b8061052857506001600160e01b0319821663272b8c4760e01b145b92915050565b6105388282610c55565b5050565b60008281526065602052604090206001015461055781610cae565b6105618383610cb8565b505050565b80801561057857506105788483610a2a565b6105bc5761058f6105898686610746565b83610a2a565b6105bc578080156105a557506105a58383610a2a565b6105bc576105bc6105b68685610746565b83610c55565b5050505050565b6000828152606560205260409020600101546105de81610cae565b6105618383610d03565b6001600160a01b038116331461065d5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6105388282610d89565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036106af5760405162461bcd60e51b81526004016106549061171f565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166106f8600080516020611a17833981519152546001600160a01b031690565b6001600160a01b03161461071e5760405162461bcd60e51b81526004016106549061176b565b61072781610df0565b6040805160008082526020820190925261074391839190610e4a565b50565b60609190911b6bffffffffffffffffffffffff19161890565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036107a75760405162461bcd60e51b81526004016106549061171f565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166107f0600080516020611a17833981519152546001600160a01b031690565b6001600160a01b0316146108165760405162461bcd60e51b81526004016106549061176b565b61081f82610df0565b61053882826001610e4a565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146108cb5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c00000000000000006064820152608401610654565b50600080516020611a1783398151915290565b8015806108f257506108f08383610a2a565b155b15610904576109046105b68585610746565b50505050565b600054610100900460ff161580801561092a5750600054600160ff909116105b806109445750303b158015610944575060005460ff166001145b6109a75760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610654565b6000805460ff1916600117905580156109ca576000805461ff0019166101001790555b6109d2610fb5565b6109da610fb5565b6109e2610fde565b8015610743576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000818015610a695750610a698484610a2a565b80610a825750610a82610a7c8686610746565b84610a2a565b90505b949350505050565b610a978382610a2a565b610561576105618282610c55565b82826001600160a01b038216610acd5760405162461bcd60e51b8152600401610654906117b7565b610ae3610add6101fd8484610746565b33610a2a565b80610b2457506000610af86101fd8484610746565b148015610b245750610b24610add6101fd73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee84610746565b610b405760405162461bcd60e51b815260040161065490611803565b6105bc610b4d8686610746565b84610cb8565b600082815260656020526040902060010154610b6e81610cae565b6105618383610d89565b82826001600160a01b038216610ba05760405162461bcd60e51b8152600401610654906117b7565b610bb0610add6101fd8484610746565b80610bf157506000610bc56101fd8484610746565b148015610bf15750610bf1610add6101fd73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee84610746565b610c0d5760405162461bcd60e51b815260040161065490611803565b6105bc610c1a8686610746565b84610d03565b60006001600160e01b03198216637965db0b60e01b148061052857506301ffc9a760e01b6001600160e01b0319831614610528565b610c5f8282610a2a565b61053857610c6c81611010565b610c77836020611022565b604051602001610c88929190611879565b60408051601f198184030181529082905262461bcd60e51b8252610654916004016118ee565b6107438133610c55565b600082815260656020526040808220600101805490849055905190918391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b610d0d8282610a2a565b6105385760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610d453390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610d938282610a2a565b156105385760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b7f55435dd261a4b9b3364963f7738a7a662ad9c84396d64be3365284bb7f0a50417fbf372ca3ebecfe59ac256f17697941bbe63302aced610e8b0e3646f743c7beb2610e3c8233610a2a565b610561576105618133610c55565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615610e7d57610561836111c5565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610ed7575060408051601f3d908101601f19168201909252610ed491810190611921565b60015b610f3a5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610654565b600080516020611a178339815191528114610fa95760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610654565b50610561838383611261565b600054610100900460ff16610fdc5760405162461bcd60e51b81526004016106549061193a565b565b600054610100900460ff166110055760405162461bcd60e51b81526004016106549061193a565b610fdc600033611286565b60606105286001600160a01b03831660145b6060600061103183600261199b565b61103c9060026119ba565b67ffffffffffffffff8111156110545761105461155f565b6040519080825280601f01601f19166020018201604052801561107e576020820181803683370190505b509050600360fc1b81600081518110611099576110996119cd565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106110c8576110c86119cd565b60200101906001600160f81b031916908160001a90535060006110ec84600261199b565b6110f79060016119ba565b90505b600181111561116f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061112b5761112b6119cd565b1a60f81b828281518110611141576111416119cd565b60200101906001600160f81b031916908160001a90535060049490941c93611168816119e3565b90506110fa565b5083156111be5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610654565b9392505050565b6001600160a01b0381163b6112325760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610654565b600080516020611a1783398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b61126a83611290565b6000825111806112775750805b156105615761090483836112d0565b6105388282610d03565b611299816111c5565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606111be8383604051806060016040528060278152602001611a37602791396060600080856001600160a01b03168560405161130d91906119fa565b600060405180830381855af49150503d8060008114611348576040519150601f19603f3d011682016040523d82523d6000602084013e61134d565b606091505b509150915061135e86838387611368565b9695505050505050565b606083156113d75782516000036113d0576001600160a01b0385163b6113d05760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610654565b5081610a85565b610a8583838151156113ec5781518083602001fd5b8060405162461bcd60e51b815260040161065491906118ee565b60006020828403121561141857600080fd5b81356001600160e01b0319811681146111be57600080fd5b80356001600160a01b038116811461144757600080fd5b919050565b6000806040838503121561145f57600080fd5b8235915061146f60208401611430565b90509250929050565b6000806040838503121561148b57600080fd5b50508035926020909101359150565b6000602082840312156114ac57600080fd5b5035919050565b8035801515811461144757600080fd5b600080600080600060a086880312156114db57600080fd5b6114e486611430565b9450602086013593506040860135925061150060608701611430565b915061150e608087016114b3565b90509295509295909350565b60006020828403121561152c57600080fd5b6111be82611430565b6000806040838503121561154857600080fd5b61155183611430565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561158857600080fd5b61159183611430565b9150602083013567ffffffffffffffff808211156115ae57600080fd5b818501915085601f8301126115c257600080fd5b8135818111156115d4576115d461155f565b604051601f8201601f19908116603f011681019083821181831017156115fc576115fc61155f565b8160405282815288602084870101111561161557600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000806000806080858703121561164d57600080fd5b61165685611430565b93506020850135925061166b60408601611430565b9150611679606086016114b3565b905092959194509250565b60008060006060848603121561169957600080fd5b83359250602084013591506116b060408501611430565b90509250925092565b6000806000606084860312156116ce57600080fd5b6116d784611430565b95602085013595506040909401359392505050565b60008060006060848603121561170157600080fd5b61170a84611430565b9250602084013591506116b060408501611430565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602c908201527f4163636573734d616e616765723a20696e76616c69642061646472657373206660408201526b1bdc8818dbdb5c1bdb995b9d60a21b606082015260800190565b60208082526032908201527f4163636573734d616e616765723a206d73672e73656e646572206e656564732060408201527131b7b6b837b732b73a2937b632a0b236b4b760711b606082015260800190565b60005b83811015611870578181015183820152602001611858565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516118b1816017850160208801611855565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516118e2816028840160208801611855565b01602801949350505050565b602081526000825180602084015261190d816040850160208701611855565b601f01601f19169190910160400192915050565b60006020828403121561193357600080fd5b5051919050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b60008160001904831182151516156119b5576119b5611985565b500290565b8082018082111561052857610528611985565b634e487b7160e01b600052603260045260246000fd5b6000816119f2576119f2611985565b506000190190565b60008251611a0c818460208701611855565b919091019291505056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212204fe2fa2c5bf44f749c9767f892224ac7fd19e1f746f70357a4c3db19e2bc941664736f6c63430008100033",
615
- "deployedBytecode": "0x6080604052600436106101665760003560e01c806352d1902d116100d1578063ad358f071161008a578063d0b1825611610064578063d0b182561461046e578063d547741f1461048e578063f67b2bad146104ae578063f6a421fc146104e257600080fd5b8063ad358f07146103ee578063b3efcbd21461042e578063c5b8f5cf1461044e57600080fd5b806352d1902d1461033b5780635b494dd5146103505780635ff57d20146103845780638129fc1c146103a457806391d14854146103b9578063a217fddf146103d957600080fd5b80632f2ff15d116101235780632f2ff15d1461027457806336568abe146102945780633659cfe6146102b4578063374c96c8146102d45780634a47a3e0146102f45780634f1ef2861461032857600080fd5b806301ffc9a71461016b57806312d9a6ad146101a05780631e4e0091146101c2578063248a9ca3146101e257806324ea54f4146102205780632b1cff1f14610254575b600080fd5b34801561017757600080fd5b5061018b610186366004611406565b610502565b60405190151581526020015b60405180910390f35b3480156101ac57600080fd5b506101c06101bb36600461144c565b61052e565b005b3480156101ce57600080fd5b506101c06101dd366004611478565b61053c565b3480156101ee57600080fd5b506102126101fd36600461149a565b60009081526065602052604090206001015490565b604051908152602001610197565b34801561022c57600080fd5b506102127f55435dd261a4b9b3364963f7738a7a662ad9c84396d64be3365284bb7f0a504181565b34801561026057600080fd5b506101c061026f3660046114c3565b610566565b34801561028057600080fd5b506101c061028f36600461144c565b6105c3565b3480156102a057600080fd5b506101c06102af36600461144c565b6105e8565b3480156102c057600080fd5b506101c06102cf36600461151a565b610667565b3480156102e057600080fd5b506102126102ef366004611535565b610746565b34801561030057600080fd5b506102127fa82e22387fca439f316d78ca566f383218ab8ae1b3e830178c9c82cbd16749c081565b6101c0610336366004611575565b61075f565b34801561034757600080fd5b5061021261082b565b34801561035c57600080fd5b506102127f5ec196419322369c6bac572d883f4d990ae5ec82f7d93cdf89b85dbb05b63c2781565b34801561039057600080fd5b506101c061039f366004611637565b6108de565b3480156103b057600080fd5b506101c061090a565b3480156103c557600080fd5b5061018b6103d436600461144c565b610a2a565b3480156103e557600080fd5b50610212600081565b3480156103fa57600080fd5b5061041673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b6040516001600160a01b039091168152602001610197565b34801561043a57600080fd5b5061018b610449366004611637565b610a55565b34801561045a57600080fd5b506101c0610469366004611684565b610a8d565b34801561047a57600080fd5b506101c06104893660046116b9565b610aa5565b34801561049a57600080fd5b506101c06104a936600461144c565b610b53565b3480156104ba57600080fd5b506102127fbf372ca3ebecfe59ac256f17697941bbe63302aced610e8b0e3646f743c7beb281565b3480156104ee57600080fd5b506101c06104fd3660046116ec565b610b78565b600061050d82610c20565b8061052857506001600160e01b0319821663272b8c4760e01b145b92915050565b6105388282610c55565b5050565b60008281526065602052604090206001015461055781610cae565b6105618383610cb8565b505050565b80801561057857506105788483610a2a565b6105bc5761058f6105898686610746565b83610a2a565b6105bc578080156105a557506105a58383610a2a565b6105bc576105bc6105b68685610746565b83610c55565b5050505050565b6000828152606560205260409020600101546105de81610cae565b6105618383610d03565b6001600160a01b038116331461065d5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6105388282610d89565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036106af5760405162461bcd60e51b81526004016106549061171f565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166106f8600080516020611a17833981519152546001600160a01b031690565b6001600160a01b03161461071e5760405162461bcd60e51b81526004016106549061176b565b61072781610df0565b6040805160008082526020820190925261074391839190610e4a565b50565b60609190911b6bffffffffffffffffffffffff19161890565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036107a75760405162461bcd60e51b81526004016106549061171f565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166107f0600080516020611a17833981519152546001600160a01b031690565b6001600160a01b0316146108165760405162461bcd60e51b81526004016106549061176b565b61081f82610df0565b61053882826001610e4a565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146108cb5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c00000000000000006064820152608401610654565b50600080516020611a1783398151915290565b8015806108f257506108f08383610a2a565b155b15610904576109046105b68585610746565b50505050565b600054610100900460ff161580801561092a5750600054600160ff909116105b806109445750303b158015610944575060005460ff166001145b6109a75760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610654565b6000805460ff1916600117905580156109ca576000805461ff0019166101001790555b6109d2610fb5565b6109da610fb5565b6109e2610fde565b8015610743576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6000818015610a695750610a698484610a2a565b80610a825750610a82610a7c8686610746565b84610a2a565b90505b949350505050565b610a978382610a2a565b610561576105618282610c55565b82826001600160a01b038216610acd5760405162461bcd60e51b8152600401610654906117b7565b610ae3610add6101fd8484610746565b33610a2a565b80610b2457506000610af86101fd8484610746565b148015610b245750610b24610add6101fd73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee84610746565b610b405760405162461bcd60e51b815260040161065490611803565b6105bc610b4d8686610746565b84610cb8565b600082815260656020526040902060010154610b6e81610cae565b6105618383610d89565b82826001600160a01b038216610ba05760405162461bcd60e51b8152600401610654906117b7565b610bb0610add6101fd8484610746565b80610bf157506000610bc56101fd8484610746565b148015610bf15750610bf1610add6101fd73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee84610746565b610c0d5760405162461bcd60e51b815260040161065490611803565b6105bc610c1a8686610746565b84610d03565b60006001600160e01b03198216637965db0b60e01b148061052857506301ffc9a760e01b6001600160e01b0319831614610528565b610c5f8282610a2a565b61053857610c6c81611010565b610c77836020611022565b604051602001610c88929190611879565b60408051601f198184030181529082905262461bcd60e51b8252610654916004016118ee565b6107438133610c55565b600082815260656020526040808220600101805490849055905190918391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b610d0d8282610a2a565b6105385760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610d453390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610d938282610a2a565b156105385760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b7f55435dd261a4b9b3364963f7738a7a662ad9c84396d64be3365284bb7f0a50417fbf372ca3ebecfe59ac256f17697941bbe63302aced610e8b0e3646f743c7beb2610e3c8233610a2a565b610561576105618133610c55565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615610e7d57610561836111c5565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610ed7575060408051601f3d908101601f19168201909252610ed491810190611921565b60015b610f3a5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610654565b600080516020611a178339815191528114610fa95760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610654565b50610561838383611261565b600054610100900460ff16610fdc5760405162461bcd60e51b81526004016106549061193a565b565b600054610100900460ff166110055760405162461bcd60e51b81526004016106549061193a565b610fdc600033611286565b60606105286001600160a01b03831660145b6060600061103183600261199b565b61103c9060026119ba565b67ffffffffffffffff8111156110545761105461155f565b6040519080825280601f01601f19166020018201604052801561107e576020820181803683370190505b509050600360fc1b81600081518110611099576110996119cd565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106110c8576110c86119cd565b60200101906001600160f81b031916908160001a90535060006110ec84600261199b565b6110f79060016119ba565b90505b600181111561116f576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061112b5761112b6119cd565b1a60f81b828281518110611141576111416119cd565b60200101906001600160f81b031916908160001a90535060049490941c93611168816119e3565b90506110fa565b5083156111be5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610654565b9392505050565b6001600160a01b0381163b6112325760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610654565b600080516020611a1783398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b61126a83611290565b6000825111806112775750805b156105615761090483836112d0565b6105388282610d03565b611299816111c5565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606111be8383604051806060016040528060278152602001611a37602791396060600080856001600160a01b03168560405161130d91906119fa565b600060405180830381855af49150503d8060008114611348576040519150601f19603f3d011682016040523d82523d6000602084013e61134d565b606091505b509150915061135e86838387611368565b9695505050505050565b606083156113d75782516000036113d0576001600160a01b0385163b6113d05760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610654565b5081610a85565b610a8583838151156113ec5781518083602001fd5b8060405162461bcd60e51b815260040161065491906118ee565b60006020828403121561141857600080fd5b81356001600160e01b0319811681146111be57600080fd5b80356001600160a01b038116811461144757600080fd5b919050565b6000806040838503121561145f57600080fd5b8235915061146f60208401611430565b90509250929050565b6000806040838503121561148b57600080fd5b50508035926020909101359150565b6000602082840312156114ac57600080fd5b5035919050565b8035801515811461144757600080fd5b600080600080600060a086880312156114db57600080fd5b6114e486611430565b9450602086013593506040860135925061150060608701611430565b915061150e608087016114b3565b90509295509295909350565b60006020828403121561152c57600080fd5b6111be82611430565b6000806040838503121561154857600080fd5b61155183611430565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561158857600080fd5b61159183611430565b9150602083013567ffffffffffffffff808211156115ae57600080fd5b818501915085601f8301126115c257600080fd5b8135818111156115d4576115d461155f565b604051601f8201601f19908116603f011681019083821181831017156115fc576115fc61155f565b8160405282815288602084870101111561161557600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000806000806080858703121561164d57600080fd5b61165685611430565b93506020850135925061166b60408601611430565b9150611679606086016114b3565b905092959194509250565b60008060006060848603121561169957600080fd5b83359250602084013591506116b060408501611430565b90509250925092565b6000806000606084860312156116ce57600080fd5b6116d784611430565b95602085013595506040909401359392505050565b60008060006060848603121561170157600080fd5b61170a84611430565b9250602084013591506116b060408501611430565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602c908201527f4163636573734d616e616765723a20696e76616c69642061646472657373206660408201526b1bdc8818dbdb5c1bdb995b9d60a21b606082015260800190565b60208082526032908201527f4163636573734d616e616765723a206d73672e73656e646572206e656564732060408201527131b7b6b837b732b73a2937b632a0b236b4b760711b606082015260800190565b60005b83811015611870578181015183820152602001611858565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516118b1816017850160208801611855565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516118e2816028840160208801611855565b01602801949350505050565b602081526000825180602084015261190d816040850160208701611855565b601f01601f19169190910160400192915050565b60006020828403121561193357600080fd5b5051919050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b60008160001904831182151516156119b5576119b5611985565b500290565b8082018082111561052857610528611985565b634e487b7160e01b600052603260045260246000fd5b6000816119f2576119f2611985565b506000190190565b60008251611a0c818460208701611855565b919091019291505056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212204fe2fa2c5bf44f749c9767f892224ac7fd19e1f746f70357a4c3db19e2bc941664736f6c63430008100033",
616
- "linkReferences": {},
617
- "deployedLinkReferences": {}
618
- }