@sudobility/heavymath_contracts 0.1.26 → 0.1.27

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 (49) hide show
  1. package/artifacts/contracts/DealerNFT.sol/DealerNFT.d.ts +71 -2
  2. package/artifacts/contracts/DealerNFT.sol/DealerNFT.dbg.json +1 -1
  3. package/artifacts/contracts/DealerNFT.sol/DealerNFT.json +71 -2
  4. package/artifacts/contracts/MockUSDC.sol/MockUSDC.dbg.json +1 -1
  5. package/artifacts/contracts/OracleResolver.sol/OracleResolver.dbg.json +1 -1
  6. package/artifacts/contracts/PredictionMarket.sol/PredictionMarket.d.ts +71 -57
  7. package/artifacts/contracts/PredictionMarket.sol/PredictionMarket.dbg.json +1 -1
  8. package/artifacts/contracts/PredictionMarket.sol/PredictionMarket.json +71 -57
  9. package/dist/evm/src/evm/index.d.ts +2 -1
  10. package/dist/evm/src/evm/index.d.ts.map +1 -1
  11. package/dist/evm/src/evm/index.js +5 -2
  12. package/dist/evm/src/evm/index.js.map +1 -1
  13. package/dist/evm/src/evm/prediction-market-abi.d.ts +61 -18
  14. package/dist/evm/src/evm/prediction-market-abi.d.ts.map +1 -1
  15. package/dist/evm/src/evm/prediction-market-abi.js +76 -22
  16. package/dist/evm/src/evm/prediction-market-abi.js.map +1 -1
  17. package/dist/evm/typechain-types/contracts/DealerNFT.d.ts +46 -2
  18. package/dist/evm/typechain-types/contracts/DealerNFT.d.ts.map +1 -1
  19. package/dist/evm/typechain-types/contracts/PredictionMarket.d.ts +54 -37
  20. package/dist/evm/typechain-types/contracts/PredictionMarket.d.ts.map +1 -1
  21. package/dist/evm/typechain-types/factories/contracts/DealerNFT__factory.d.ts +54 -1
  22. package/dist/evm/typechain-types/factories/contracts/DealerNFT__factory.d.ts.map +1 -1
  23. package/dist/evm/typechain-types/factories/contracts/DealerNFT__factory.js +70 -1
  24. package/dist/evm/typechain-types/factories/contracts/DealerNFT__factory.js.map +1 -1
  25. package/dist/evm/typechain-types/factories/contracts/PredictionMarket__factory.d.ts +57 -46
  26. package/dist/evm/typechain-types/factories/contracts/PredictionMarket__factory.d.ts.map +1 -1
  27. package/dist/evm/typechain-types/factories/contracts/PredictionMarket__factory.js +69 -55
  28. package/dist/evm/typechain-types/factories/contracts/PredictionMarket__factory.js.map +1 -1
  29. package/dist/react-native/evm/index.d.ts +2 -1
  30. package/dist/react-native/evm/index.d.ts.map +1 -1
  31. package/dist/react-native/evm/index.js +5 -2
  32. package/dist/react-native/evm/index.js.map +1 -1
  33. package/dist/react-native/evm/prediction-market-abi.d.ts +61 -18
  34. package/dist/react-native/evm/prediction-market-abi.d.ts.map +1 -1
  35. package/dist/react-native/evm/prediction-market-abi.js +76 -22
  36. package/dist/react-native/evm/prediction-market-abi.js.map +1 -1
  37. package/dist/unified/evm/index.d.ts +2 -1
  38. package/dist/unified/evm/index.d.ts.map +1 -1
  39. package/dist/unified/evm/index.js +5 -2
  40. package/dist/unified/evm/index.js.map +1 -1
  41. package/dist/unified/evm/prediction-market-abi.d.ts +61 -18
  42. package/dist/unified/evm/prediction-market-abi.d.ts.map +1 -1
  43. package/dist/unified/evm/prediction-market-abi.js +76 -22
  44. package/dist/unified/evm/prediction-market-abi.js.map +1 -1
  45. package/package.json +1 -1
  46. package/typechain-types/contracts/DealerNFT.ts +89 -0
  47. package/typechain-types/contracts/PredictionMarket.ts +118 -82
  48. package/typechain-types/factories/contracts/DealerNFT__factory.ts +70 -1
  49. package/typechain-types/factories/contracts/PredictionMarket__factory.ts +69 -55
@@ -27,11 +27,8 @@ export interface PredictionMarketInterface extends Interface {
27
27
  getFunction(
28
28
  nameOrSignature:
29
29
  | "GRACE_PERIOD"
30
- | "MAX_DEALER_FEE_BPS"
31
- | "MIN_DEALER_FEE_BPS"
32
30
  | "MIN_DURATION"
33
31
  | "RESOLUTION_GRACE_PERIOD"
34
- | "SYSTEM_FEE_PERCENT"
35
32
  | "UPGRADE_INTERFACE_VERSION"
36
33
  | "abandonMarket"
37
34
  | "calculateEquilibrium"
@@ -42,6 +39,7 @@ export interface PredictionMarketInterface extends Interface {
42
39
  | "createMarket"
43
40
  | "dealerFees"
44
41
  | "dealerNFT"
42
+ | "dealerSharePercent"
45
43
  | "getRefundAmount"
46
44
  | "initialize"
47
45
  | "isWinner"
@@ -61,7 +59,8 @@ export interface PredictionMarketInterface extends Interface {
61
59
  | "resolveMarketWithEquilibrium"
62
60
  | "resolveMarketWithOracle"
63
61
  | "resolveMarketWithOracleAndEquilibrium"
64
- | "setDealerFee"
62
+ | "setDealerSharePercent"
63
+ | "setWinnerFeeBps"
65
64
  | "stakeToken"
66
65
  | "systemFees"
67
66
  | "totalSystemFees"
@@ -69,6 +68,7 @@ export interface PredictionMarketInterface extends Interface {
69
68
  | "unpause"
70
69
  | "updatePrediction"
71
70
  | "upgradeToAndCall"
71
+ | "winnerFeeBps"
72
72
  | "withdrawDealerFees"
73
73
  | "withdrawPrediction"
74
74
  | "withdrawSystemFees"
@@ -76,8 +76,8 @@ export interface PredictionMarketInterface extends Interface {
76
76
 
77
77
  getEvent(
78
78
  nameOrSignatureOrTopic:
79
- | "DealerFeeSet"
80
79
  | "DealerFeesWithdrawn"
80
+ | "DealerSharePercentUpdated"
81
81
  | "Initialized"
82
82
  | "MarketAbandoned"
83
83
  | "MarketCancelled"
@@ -91,6 +91,7 @@ export interface PredictionMarketInterface extends Interface {
91
91
  | "SystemFeesWithdrawn"
92
92
  | "Unpaused"
93
93
  | "Upgraded"
94
+ | "WinnerFeeBpsUpdated"
94
95
  | "WinningsClaimed"
95
96
  ): EventFragment;
96
97
 
@@ -98,14 +99,6 @@ export interface PredictionMarketInterface extends Interface {
98
99
  functionFragment: "GRACE_PERIOD",
99
100
  values?: undefined
100
101
  ): string;
101
- encodeFunctionData(
102
- functionFragment: "MAX_DEALER_FEE_BPS",
103
- values?: undefined
104
- ): string;
105
- encodeFunctionData(
106
- functionFragment: "MIN_DEALER_FEE_BPS",
107
- values?: undefined
108
- ): string;
109
102
  encodeFunctionData(
110
103
  functionFragment: "MIN_DURATION",
111
104
  values?: undefined
@@ -114,10 +107,6 @@ export interface PredictionMarketInterface extends Interface {
114
107
  functionFragment: "RESOLUTION_GRACE_PERIOD",
115
108
  values?: undefined
116
109
  ): string;
117
- encodeFunctionData(
118
- functionFragment: "SYSTEM_FEE_PERCENT",
119
- values?: undefined
120
- ): string;
121
110
  encodeFunctionData(
122
111
  functionFragment: "UPGRADE_INTERFACE_VERSION",
123
112
  values?: undefined
@@ -162,6 +151,10 @@ export interface PredictionMarketInterface extends Interface {
162
151
  values: [BigNumberish]
163
152
  ): string;
164
153
  encodeFunctionData(functionFragment: "dealerNFT", values?: undefined): string;
154
+ encodeFunctionData(
155
+ functionFragment: "dealerSharePercent",
156
+ values?: undefined
157
+ ): string;
165
158
  encodeFunctionData(
166
159
  functionFragment: "getRefundAmount",
167
160
  values: [BigNumberish, AddressLike]
@@ -230,8 +223,12 @@ export interface PredictionMarketInterface extends Interface {
230
223
  values: [BigNumberish, BigNumberish]
231
224
  ): string;
232
225
  encodeFunctionData(
233
- functionFragment: "setDealerFee",
234
- values: [BigNumberish, BigNumberish]
226
+ functionFragment: "setDealerSharePercent",
227
+ values: [BigNumberish]
228
+ ): string;
229
+ encodeFunctionData(
230
+ functionFragment: "setWinnerFeeBps",
231
+ values: [BigNumberish]
235
232
  ): string;
236
233
  encodeFunctionData(
237
234
  functionFragment: "stakeToken",
@@ -258,6 +255,10 @@ export interface PredictionMarketInterface extends Interface {
258
255
  functionFragment: "upgradeToAndCall",
259
256
  values: [AddressLike, BytesLike]
260
257
  ): string;
258
+ encodeFunctionData(
259
+ functionFragment: "winnerFeeBps",
260
+ values?: undefined
261
+ ): string;
261
262
  encodeFunctionData(
262
263
  functionFragment: "withdrawDealerFees",
263
264
  values: [BigNumberish]
@@ -275,14 +276,6 @@ export interface PredictionMarketInterface extends Interface {
275
276
  functionFragment: "GRACE_PERIOD",
276
277
  data: BytesLike
277
278
  ): Result;
278
- decodeFunctionResult(
279
- functionFragment: "MAX_DEALER_FEE_BPS",
280
- data: BytesLike
281
- ): Result;
282
- decodeFunctionResult(
283
- functionFragment: "MIN_DEALER_FEE_BPS",
284
- data: BytesLike
285
- ): Result;
286
279
  decodeFunctionResult(
287
280
  functionFragment: "MIN_DURATION",
288
281
  data: BytesLike
@@ -291,10 +284,6 @@ export interface PredictionMarketInterface extends Interface {
291
284
  functionFragment: "RESOLUTION_GRACE_PERIOD",
292
285
  data: BytesLike
293
286
  ): Result;
294
- decodeFunctionResult(
295
- functionFragment: "SYSTEM_FEE_PERCENT",
296
- data: BytesLike
297
- ): Result;
298
287
  decodeFunctionResult(
299
288
  functionFragment: "UPGRADE_INTERFACE_VERSION",
300
289
  data: BytesLike
@@ -329,6 +318,10 @@ export interface PredictionMarketInterface extends Interface {
329
318
  ): Result;
330
319
  decodeFunctionResult(functionFragment: "dealerFees", data: BytesLike): Result;
331
320
  decodeFunctionResult(functionFragment: "dealerNFT", data: BytesLike): Result;
321
+ decodeFunctionResult(
322
+ functionFragment: "dealerSharePercent",
323
+ data: BytesLike
324
+ ): Result;
332
325
  decodeFunctionResult(
333
326
  functionFragment: "getRefundAmount",
334
327
  data: BytesLike
@@ -388,7 +381,11 @@ export interface PredictionMarketInterface extends Interface {
388
381
  data: BytesLike
389
382
  ): Result;
390
383
  decodeFunctionResult(
391
- functionFragment: "setDealerFee",
384
+ functionFragment: "setDealerSharePercent",
385
+ data: BytesLike
386
+ ): Result;
387
+ decodeFunctionResult(
388
+ functionFragment: "setWinnerFeeBps",
392
389
  data: BytesLike
393
390
  ): Result;
394
391
  decodeFunctionResult(functionFragment: "stakeToken", data: BytesLike): Result;
@@ -410,6 +407,10 @@ export interface PredictionMarketInterface extends Interface {
410
407
  functionFragment: "upgradeToAndCall",
411
408
  data: BytesLike
412
409
  ): Result;
410
+ decodeFunctionResult(
411
+ functionFragment: "winnerFeeBps",
412
+ data: BytesLike
413
+ ): Result;
413
414
  decodeFunctionResult(
414
415
  functionFragment: "withdrawDealerFees",
415
416
  data: BytesLike
@@ -424,19 +425,6 @@ export interface PredictionMarketInterface extends Interface {
424
425
  ): Result;
425
426
  }
426
427
 
427
- export namespace DealerFeeSetEvent {
428
- export type InputTuple = [marketId: BigNumberish, feeBps: BigNumberish];
429
- export type OutputTuple = [marketId: bigint, feeBps: bigint];
430
- export interface OutputObject {
431
- marketId: bigint;
432
- feeBps: bigint;
433
- }
434
- export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
435
- export type Filter = TypedDeferredTopicFilter<Event>;
436
- export type Log = TypedEventLog<Event>;
437
- export type LogDescription = TypedLogDescription<Event>;
438
- }
439
-
440
428
  export namespace DealerFeesWithdrawnEvent {
441
429
  export type InputTuple = [
442
430
  marketId: BigNumberish,
@@ -455,6 +443,19 @@ export namespace DealerFeesWithdrawnEvent {
455
443
  export type LogDescription = TypedLogDescription<Event>;
456
444
  }
457
445
 
446
+ export namespace DealerSharePercentUpdatedEvent {
447
+ export type InputTuple = [oldPercent: BigNumberish, newPercent: BigNumberish];
448
+ export type OutputTuple = [oldPercent: bigint, newPercent: bigint];
449
+ export interface OutputObject {
450
+ oldPercent: bigint;
451
+ newPercent: bigint;
452
+ }
453
+ export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
454
+ export type Filter = TypedDeferredTopicFilter<Event>;
455
+ export type Log = TypedEventLog<Event>;
456
+ export type LogDescription = TypedLogDescription<Event>;
457
+ }
458
+
458
459
  export namespace InitializedEvent {
459
460
  export type InputTuple = [version: BigNumberish];
460
461
  export type OutputTuple = [version: bigint];
@@ -681,6 +682,19 @@ export namespace UpgradedEvent {
681
682
  export type LogDescription = TypedLogDescription<Event>;
682
683
  }
683
684
 
685
+ export namespace WinnerFeeBpsUpdatedEvent {
686
+ export type InputTuple = [oldBps: BigNumberish, newBps: BigNumberish];
687
+ export type OutputTuple = [oldBps: bigint, newBps: bigint];
688
+ export interface OutputObject {
689
+ oldBps: bigint;
690
+ newBps: bigint;
691
+ }
692
+ export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
693
+ export type Filter = TypedDeferredTopicFilter<Event>;
694
+ export type Log = TypedEventLog<Event>;
695
+ export type LogDescription = TypedLogDescription<Event>;
696
+ }
697
+
684
698
  export namespace WinningsClaimedEvent {
685
699
  export type InputTuple = [
686
700
  marketId: BigNumberish,
@@ -748,16 +762,10 @@ export interface PredictionMarket extends BaseContract {
748
762
 
749
763
  GRACE_PERIOD: TypedContractMethod<[], [bigint], "view">;
750
764
 
751
- MAX_DEALER_FEE_BPS: TypedContractMethod<[], [bigint], "view">;
752
-
753
- MIN_DEALER_FEE_BPS: TypedContractMethod<[], [bigint], "view">;
754
-
755
765
  MIN_DURATION: TypedContractMethod<[], [bigint], "view">;
756
766
 
757
767
  RESOLUTION_GRACE_PERIOD: TypedContractMethod<[], [bigint], "view">;
758
768
 
759
- SYSTEM_FEE_PERCENT: TypedContractMethod<[], [bigint], "view">;
760
-
761
769
  UPGRADE_INTERFACE_VERSION: TypedContractMethod<[], [string], "view">;
762
770
 
763
771
  abandonMarket: TypedContractMethod<
@@ -813,6 +821,8 @@ export interface PredictionMarket extends BaseContract {
813
821
 
814
822
  dealerNFT: TypedContractMethod<[], [string], "view">;
815
823
 
824
+ dealerSharePercent: TypedContractMethod<[], [bigint], "view">;
825
+
816
826
  getRefundAmount: TypedContractMethod<
817
827
  [marketId: BigNumberish, predictor: AddressLike],
818
828
  [bigint],
@@ -938,8 +948,14 @@ export interface PredictionMarket extends BaseContract {
938
948
  "nonpayable"
939
949
  >;
940
950
 
941
- setDealerFee: TypedContractMethod<
942
- [marketId: BigNumberish, feeBps: BigNumberish],
951
+ setDealerSharePercent: TypedContractMethod<
952
+ [_dealerSharePercent: BigNumberish],
953
+ [void],
954
+ "nonpayable"
955
+ >;
956
+
957
+ setWinnerFeeBps: TypedContractMethod<
958
+ [_winnerFeeBps: BigNumberish],
943
959
  [void],
944
960
  "nonpayable"
945
961
  >;
@@ -974,6 +990,8 @@ export interface PredictionMarket extends BaseContract {
974
990
  "payable"
975
991
  >;
976
992
 
993
+ winnerFeeBps: TypedContractMethod<[], [bigint], "view">;
994
+
977
995
  withdrawDealerFees: TypedContractMethod<
978
996
  [marketId: BigNumberish],
979
997
  [void],
@@ -995,21 +1013,12 @@ export interface PredictionMarket extends BaseContract {
995
1013
  getFunction(
996
1014
  nameOrSignature: "GRACE_PERIOD"
997
1015
  ): TypedContractMethod<[], [bigint], "view">;
998
- getFunction(
999
- nameOrSignature: "MAX_DEALER_FEE_BPS"
1000
- ): TypedContractMethod<[], [bigint], "view">;
1001
- getFunction(
1002
- nameOrSignature: "MIN_DEALER_FEE_BPS"
1003
- ): TypedContractMethod<[], [bigint], "view">;
1004
1016
  getFunction(
1005
1017
  nameOrSignature: "MIN_DURATION"
1006
1018
  ): TypedContractMethod<[], [bigint], "view">;
1007
1019
  getFunction(
1008
1020
  nameOrSignature: "RESOLUTION_GRACE_PERIOD"
1009
1021
  ): TypedContractMethod<[], [bigint], "view">;
1010
- getFunction(
1011
- nameOrSignature: "SYSTEM_FEE_PERCENT"
1012
- ): TypedContractMethod<[], [bigint], "view">;
1013
1022
  getFunction(
1014
1023
  nameOrSignature: "UPGRADE_INTERFACE_VERSION"
1015
1024
  ): TypedContractMethod<[], [string], "view">;
@@ -1055,6 +1064,9 @@ export interface PredictionMarket extends BaseContract {
1055
1064
  getFunction(
1056
1065
  nameOrSignature: "dealerNFT"
1057
1066
  ): TypedContractMethod<[], [string], "view">;
1067
+ getFunction(
1068
+ nameOrSignature: "dealerSharePercent"
1069
+ ): TypedContractMethod<[], [bigint], "view">;
1058
1070
  getFunction(
1059
1071
  nameOrSignature: "getRefundAmount"
1060
1072
  ): TypedContractMethod<
@@ -1196,12 +1208,15 @@ export interface PredictionMarket extends BaseContract {
1196
1208
  "nonpayable"
1197
1209
  >;
1198
1210
  getFunction(
1199
- nameOrSignature: "setDealerFee"
1211
+ nameOrSignature: "setDealerSharePercent"
1200
1212
  ): TypedContractMethod<
1201
- [marketId: BigNumberish, feeBps: BigNumberish],
1213
+ [_dealerSharePercent: BigNumberish],
1202
1214
  [void],
1203
1215
  "nonpayable"
1204
1216
  >;
1217
+ getFunction(
1218
+ nameOrSignature: "setWinnerFeeBps"
1219
+ ): TypedContractMethod<[_winnerFeeBps: BigNumberish], [void], "nonpayable">;
1205
1220
  getFunction(
1206
1221
  nameOrSignature: "stakeToken"
1207
1222
  ): TypedContractMethod<[], [string], "view">;
@@ -1235,6 +1250,9 @@ export interface PredictionMarket extends BaseContract {
1235
1250
  [void],
1236
1251
  "payable"
1237
1252
  >;
1253
+ getFunction(
1254
+ nameOrSignature: "winnerFeeBps"
1255
+ ): TypedContractMethod<[], [bigint], "view">;
1238
1256
  getFunction(
1239
1257
  nameOrSignature: "withdrawDealerFees"
1240
1258
  ): TypedContractMethod<[marketId: BigNumberish], [void], "nonpayable">;
@@ -1245,13 +1263,6 @@ export interface PredictionMarket extends BaseContract {
1245
1263
  nameOrSignature: "withdrawSystemFees"
1246
1264
  ): TypedContractMethod<[], [void], "nonpayable">;
1247
1265
 
1248
- getEvent(
1249
- key: "DealerFeeSet"
1250
- ): TypedContractEvent<
1251
- DealerFeeSetEvent.InputTuple,
1252
- DealerFeeSetEvent.OutputTuple,
1253
- DealerFeeSetEvent.OutputObject
1254
- >;
1255
1266
  getEvent(
1256
1267
  key: "DealerFeesWithdrawn"
1257
1268
  ): TypedContractEvent<
@@ -1259,6 +1270,13 @@ export interface PredictionMarket extends BaseContract {
1259
1270
  DealerFeesWithdrawnEvent.OutputTuple,
1260
1271
  DealerFeesWithdrawnEvent.OutputObject
1261
1272
  >;
1273
+ getEvent(
1274
+ key: "DealerSharePercentUpdated"
1275
+ ): TypedContractEvent<
1276
+ DealerSharePercentUpdatedEvent.InputTuple,
1277
+ DealerSharePercentUpdatedEvent.OutputTuple,
1278
+ DealerSharePercentUpdatedEvent.OutputObject
1279
+ >;
1262
1280
  getEvent(
1263
1281
  key: "Initialized"
1264
1282
  ): TypedContractEvent<
@@ -1350,6 +1368,13 @@ export interface PredictionMarket extends BaseContract {
1350
1368
  UpgradedEvent.OutputTuple,
1351
1369
  UpgradedEvent.OutputObject
1352
1370
  >;
1371
+ getEvent(
1372
+ key: "WinnerFeeBpsUpdated"
1373
+ ): TypedContractEvent<
1374
+ WinnerFeeBpsUpdatedEvent.InputTuple,
1375
+ WinnerFeeBpsUpdatedEvent.OutputTuple,
1376
+ WinnerFeeBpsUpdatedEvent.OutputObject
1377
+ >;
1353
1378
  getEvent(
1354
1379
  key: "WinningsClaimed"
1355
1380
  ): TypedContractEvent<
@@ -1359,17 +1384,6 @@ export interface PredictionMarket extends BaseContract {
1359
1384
  >;
1360
1385
 
1361
1386
  filters: {
1362
- "DealerFeeSet(uint256,uint256)": TypedContractEvent<
1363
- DealerFeeSetEvent.InputTuple,
1364
- DealerFeeSetEvent.OutputTuple,
1365
- DealerFeeSetEvent.OutputObject
1366
- >;
1367
- DealerFeeSet: TypedContractEvent<
1368
- DealerFeeSetEvent.InputTuple,
1369
- DealerFeeSetEvent.OutputTuple,
1370
- DealerFeeSetEvent.OutputObject
1371
- >;
1372
-
1373
1387
  "DealerFeesWithdrawn(uint256,address,uint256)": TypedContractEvent<
1374
1388
  DealerFeesWithdrawnEvent.InputTuple,
1375
1389
  DealerFeesWithdrawnEvent.OutputTuple,
@@ -1381,6 +1395,17 @@ export interface PredictionMarket extends BaseContract {
1381
1395
  DealerFeesWithdrawnEvent.OutputObject
1382
1396
  >;
1383
1397
 
1398
+ "DealerSharePercentUpdated(uint256,uint256)": TypedContractEvent<
1399
+ DealerSharePercentUpdatedEvent.InputTuple,
1400
+ DealerSharePercentUpdatedEvent.OutputTuple,
1401
+ DealerSharePercentUpdatedEvent.OutputObject
1402
+ >;
1403
+ DealerSharePercentUpdated: TypedContractEvent<
1404
+ DealerSharePercentUpdatedEvent.InputTuple,
1405
+ DealerSharePercentUpdatedEvent.OutputTuple,
1406
+ DealerSharePercentUpdatedEvent.OutputObject
1407
+ >;
1408
+
1384
1409
  "Initialized(uint64)": TypedContractEvent<
1385
1410
  InitializedEvent.InputTuple,
1386
1411
  InitializedEvent.OutputTuple,
@@ -1524,6 +1549,17 @@ export interface PredictionMarket extends BaseContract {
1524
1549
  UpgradedEvent.OutputObject
1525
1550
  >;
1526
1551
 
1552
+ "WinnerFeeBpsUpdated(uint256,uint256)": TypedContractEvent<
1553
+ WinnerFeeBpsUpdatedEvent.InputTuple,
1554
+ WinnerFeeBpsUpdatedEvent.OutputTuple,
1555
+ WinnerFeeBpsUpdatedEvent.OutputObject
1556
+ >;
1557
+ WinnerFeeBpsUpdated: TypedContractEvent<
1558
+ WinnerFeeBpsUpdatedEvent.InputTuple,
1559
+ WinnerFeeBpsUpdatedEvent.OutputTuple,
1560
+ WinnerFeeBpsUpdatedEvent.OutputObject
1561
+ >;
1562
+
1527
1563
  "WinningsClaimed(uint256,address,uint256)": TypedContractEvent<
1528
1564
  WinningsClaimedEvent.InputTuple,
1529
1565
  WinningsClaimedEvent.OutputTuple,
@@ -271,6 +271,25 @@ const _abi = [
271
271
  name: "ApprovalForAll",
272
272
  type: "event",
273
273
  },
274
+ {
275
+ anonymous: false,
276
+ inputs: [
277
+ {
278
+ indexed: false,
279
+ internalType: "uint256",
280
+ name: "category",
281
+ type: "uint256",
282
+ },
283
+ {
284
+ indexed: false,
285
+ internalType: "uint256[]",
286
+ name: "subCategories",
287
+ type: "uint256[]",
288
+ },
289
+ ],
290
+ name: "DefaultPermissionsUpdated",
291
+ type: "event",
292
+ },
274
293
  {
275
294
  anonymous: false,
276
295
  inputs: [
@@ -492,6 +511,38 @@ const _abi = [
492
511
  stateMutability: "view",
493
512
  type: "function",
494
513
  },
514
+ {
515
+ inputs: [],
516
+ name: "defaultPermissionCategory",
517
+ outputs: [
518
+ {
519
+ internalType: "uint256",
520
+ name: "",
521
+ type: "uint256",
522
+ },
523
+ ],
524
+ stateMutability: "view",
525
+ type: "function",
526
+ },
527
+ {
528
+ inputs: [
529
+ {
530
+ internalType: "uint256",
531
+ name: "",
532
+ type: "uint256",
533
+ },
534
+ ],
535
+ name: "defaultPermissionSubCategories",
536
+ outputs: [
537
+ {
538
+ internalType: "uint256",
539
+ name: "",
540
+ type: "uint256",
541
+ },
542
+ ],
543
+ stateMutability: "view",
544
+ type: "function",
545
+ },
495
546
  {
496
547
  inputs: [
497
548
  {
@@ -721,6 +772,24 @@ const _abi = [
721
772
  stateMutability: "nonpayable",
722
773
  type: "function",
723
774
  },
775
+ {
776
+ inputs: [
777
+ {
778
+ internalType: "uint256",
779
+ name: "category",
780
+ type: "uint256",
781
+ },
782
+ {
783
+ internalType: "uint256[]",
784
+ name: "subCategories",
785
+ type: "uint256[]",
786
+ },
787
+ ],
788
+ name: "setDefaultPermissions",
789
+ outputs: [],
790
+ stateMutability: "nonpayable",
791
+ type: "function",
792
+ },
724
793
  {
725
794
  inputs: [
726
795
  {
@@ -957,7 +1026,7 @@ const _abi = [
957
1026
  ] as const;
958
1027
 
959
1028
  const _bytecode =
960
- "0x60a0604052306080523480156200001557600080fd5b506200002062000026565b620000da565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff1615620000775760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b0390811614620000d75780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6080516127b362000104600039600081816111450152818161116e01526112af01526127b36000f3fe6080604052600436106101d85760003560e01c80636352211e11610102578063b88d4fde11610095578063f2fde38b11610064578063f2fde38b14610534578063f4a0a52814610554578063fd6bc72314610574578063fe4b84df1461058957600080fd5b8063b88d4fde146104b4578063c87b56dd146104d4578063da75c7db146104f4578063e985e9c51461051457600080fd5b80638da5cb5b116100d15780638da5cb5b1461043957806395d89b411461044e578063a22cb46514610463578063ad3cb1cc1461048357600080fd5b80636352211e146103ce5780636817c76c146103ee57806370a0823114610404578063715018a61461042457600080fd5b806323b872dd1161017a5780634f6ccce7116101495780634f6ccce71461036457806352d1902d1461038457806359bab766146103995780636103d70b146103b957600080fd5b806323b872dd146102f15780632f745c591461031157806342842e0e146103315780634f1ef2861461035157600080fd5b8063095ea7b3116101b6578063095ea7b31461026c5780631249c58b1461028e57806318160ddd146102965780631e5a5763146102c257600080fd5b806301ffc9a7146101dd57806306fdde0314610212578063081812fc14610234575b600080fd5b3480156101e957600080fd5b506101fd6101f83660046120a1565b6105a9565b60405190151581526020015b60405180910390f35b34801561021e57600080fd5b506102276105ba565b604051610209919061210e565b34801561024057600080fd5b5061025461024f366004612121565b61065e565b6040516001600160a01b039091168152602001610209565b34801561027857600080fd5b5061028c610287366004612156565b610673565b005b61028c610682565b3480156102a257600080fd5b5060008051602061275e833981519152545b604051908152602001610209565b3480156102ce57600080fd5b506101fd6102dd366004612121565b600090815260036020526040902054151590565b3480156102fd57600080fd5b5061028c61030c366004612180565b610729565b34801561031d57600080fd5b506102b461032c366004612156565b6107b4565b34801561033d57600080fd5b5061028c61034c366004612180565b610828565b61028c61035f36600461225f565b610848565b34801561037057600080fd5b506102b461037f366004612121565b610863565b34801561039057600080fd5b506102b46108db565b3480156103a557600080fd5b5061028c6103b43660046122ad565b6108f8565b3480156103c557600080fd5b5061028c610a36565b3480156103da57600080fd5b506102546103e9366004612121565b610b28565b3480156103fa57600080fd5b506102b460005481565b34801561041057600080fd5b506102b461041f366004612330565b610b33565b34801561043057600080fd5b5061028c610b8f565b34801561044557600080fd5b50610254610ba3565b34801561045a57600080fd5b50610227610bd1565b34801561046f57600080fd5b5061028c61047e36600461234b565b610c10565b34801561048f57600080fd5b50610227604051806040016040528060058152602001640352e302e360dc1b81525081565b3480156104c057600080fd5b5061028c6104cf366004612387565b610c1b565b3480156104e057600080fd5b506102276104ef366004612121565b610c33565b34801561050057600080fd5b506101fd61050f3660046123ef565b610ca8565b34801561052057600080fd5b506101fd61052f36600461241b565b610db3565b34801561054057600080fd5b5061028c61054f366004612330565b610e00565b34801561056057600080fd5b5061028c61056f366004612121565b610e3e565b34801561058057600080fd5b506102b460ff81565b34801561059557600080fd5b5061028c6105a4366004612121565b610e8b565b60006105b482610fef565b92915050565b60008051602061271e83398151915280546060919081906105da9061244e565b80601f01602080910402602001604051908101604052809291908181526020018280546106069061244e565b80156106535780601f1061062857610100808354040283529160200191610653565b820191906000526020600020905b81548152906001019060200180831161063657829003601f168201915b505050505091505090565b600061066982611014565b506105b48261104c565b61067e828233611086565b5050565b60005434146106d85760405162461bcd60e51b815260206004820152601860248201527f496e636f7272656374207061796d656e7420616d6f756e74000000000000000060448201526064015b60405180910390fd5b60018054600091826106e98361249e565b9190505590506106f93382611093565b604051339082907fede4da48509d6c07b9b5f7e89b4b81dc9f52cc0dcb63668f5098954bf3081c5190600090a350565b6001600160a01b03821661075357604051633250574960e11b8152600060048201526024016106cf565b60006107608383336110ad565b9050836001600160a01b0316816001600160a01b0316146107ae576040516364283d7b60e01b81526001600160a01b03808616600483015260248201849052821660448201526064016106cf565b50505050565b60006000805160206126fe8339815191526107ce84610b33565b83106107ff5760405163295f44f760e21b81526001600160a01b0385166004820152602481018490526044016106cf565b6001600160a01b0384166000908152602091825260408082208583529092522054905092915050565b61084383838360405180602001604052806000815250610c1b565b505050565b61085061113a565b610859826111df565b61067e82826111e7565b60006000805160206126fe83398151915261088a60008051602061275e8339815191525490565b83106108b35760405163295f44f760e21b815260006004820152602481018490526044016106cf565b8060020183815481106108c8576108c86124b7565b9060005260206000200154915050919050565b60006108e56112a4565b5060008051602061273e83398151915290565b6109006112ed565b600061090b8561131f565b6001600160a01b0316036109585760405162461bcd60e51b8152602060048201526014602482015273151bdad95b88191bd95cc81b9bdd08195e1a5cdd60621b60448201526064016106cf565b6000848152600260209081526040808320868452909152902061097c90838361202b565b506000848152600360205260408120815b81548110156109ca57858282815481106109a9576109a96124b7565b9060005260206000200154036109c257600192506109ca565b60010161098d565b50816109f2576000868152600360209081526040822080546001810182559083529120018590555b857fe5c6dc435e469e33f1f803f7719fb16e5910f27f150dd97fc0afad70c73377ec868686604051610a26939291906124cd565b60405180910390a2505050505050565b610a3e6112ed565b4780610a8c5760405162461bcd60e51b815260206004820152601760248201527f4e6f207061796d656e747320746f20776974686472617700000000000000000060448201526064016106cf565b6000610a96610ba3565b6001600160a01b03168260405160006040518083038185875af1925050503d8060008114610ae0576040519150601f19603f3d011682016040523d82523d6000602084013e610ae5565b606091505b505090508061067e5760405162461bcd60e51b815260206004820152600f60248201526e151c985b9cd9995c8819985a5b1959608a1b60448201526064016106cf565b60006105b482611014565b600060008051602061271e8339815191526001600160a01b038316610b6e576040516322718ad960e21b8152600060048201526024016106cf565b6001600160a01b039092166000908152600390920160205250604090205490565b610b976112ed565b610ba16000611359565b565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b031690565b7f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab0079301805460609160008051602061271e833981519152916105da9061244e565b61067e3383836113ca565b610c26848484610729565b6107ae338585858561147b565b6060610c3e82611014565b506000610c5660408051602081019091526000815290565b90506000815111610c765760405180602001604052806000815250610ca1565b80610c80846115a4565b604051602001610c9192919061250e565b6040516020818303038152906040525b9392505050565b600083815260026020908152604080832060ff84529091528120805415610d0e5760005b8154811015610d0c5760ff828281548110610ce957610ce96124b7565b906000526020600020015403610d0457600192505050610ca1565b600101610ccc565b505b600085815260026020908152604080832087845290915281208054909103610d3b57600092505050610ca1565b60005b8154811015610da65760ff828281548110610d5b57610d5b6124b7565b90600052602060002001541480610d8d575084828281548110610d8057610d806124b7565b9060005260206000200154145b15610d9e5760019350505050610ca1565b600101610d3e565b5060009695505050505050565b6001600160a01b0391821660009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab00793056020908152604080832093909416825291909152205460ff1690565b610e086112ed565b6001600160a01b038116610e3257604051631e4fbdf760e01b8152600060048201526024016106cf565b610e3b81611359565b50565b610e466112ed565b600080549082905560408051828152602081018490527f2e1c9e000c6e8dda4d03536adb13b7cb6034ccff90d17f01de381e4d5097b525910160405180910390a15050565b6000610e95611637565b805490915060ff600160401b820416159067ffffffffffffffff16600081158015610ebd5750825b905060008267ffffffffffffffff166001148015610eda5750303b155b905081158015610ee8575080155b15610f065760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610f3057845460ff60401b1916600160401b1785555b610f7f6040518060400160405280600d81526020016c4465616c65724c6963656e736560981b81525060405180604001604052806008815260200167444c4943454e534560c01b815250611660565b610f87611672565b610f903361167a565b610f98611672565b6000869055600180558315610fe757845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b505050505050565b60006001600160e01b0319821663780e9d6360e01b14806105b457506105b48261168b565b6000806110208361131f565b90506001600160a01b0381166105b457604051637e27328960e01b8152600481018490526024016106cf565b60009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930460205260409020546001600160a01b031690565b61084383838360016116db565b61067e8282604051806020016040528060008152506117f1565b6000806110b98461131f565b905060006110c8868686611809565b90506001600160a01b038216158015906110ea57506001600160a01b03861615155b1561113157856001600160a01b0316826001600160a01b0316867fac51dde61f583e7dae0e8dbd18c8dc42bbdb9942ecbb54c67a52468c823997a060405160405180910390a45b95945050505050565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614806111c157507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166111b560008051602061273e833981519152546001600160a01b031690565b6001600160a01b031614155b15610ba15760405163703e46dd60e11b815260040160405180910390fd5b610e3b6112ed565b816001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611241575060408051601f3d908101601f1916820190925261123e9181019061253d565b60015b61126957604051634c9c8ce360e01b81526001600160a01b03831660048201526024016106cf565b60008051602061273e833981519152811461129a57604051632a87526960e21b8152600481018290526024016106cf565b610843838361190a565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610ba15760405163703e46dd60e11b815260040160405180910390fd5b336112f6610ba3565b6001600160a01b031614610ba15760405163118cdaa760e01b81523360048201526024016106cf565b60009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930260205260409020546001600160a01b031690565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930080546001600160a01b031981166001600160a01b03848116918217845560405192169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b60008051602061271e8339815191526001600160a01b03831661140b57604051630b61174360e31b81526001600160a01b03841660048201526024016106cf565b6001600160a01b038481166000818152600584016020908152604080832094881680845294825291829020805460ff191687151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a350505050565b6001600160a01b0383163b1561159d57604051630a85bd0160e11b81526001600160a01b0384169063150b7a02906114bd908890889087908790600401612556565b6020604051808303816000875af19250505080156114f8575060408051601f3d908101601f191682019092526114f591810190612593565b60015b611561573d808015611526576040519150601f19603f3d011682016040523d82523d6000602084013e61152b565b606091505b50805160000361155957604051633250574960e11b81526001600160a01b03851660048201526024016106cf565b805160208201fd5b6001600160e01b03198116630a85bd0160e11b14610fe757604051633250574960e11b81526001600160a01b03851660048201526024016106cf565b5050505050565b606060006115b183611960565b600101905060008167ffffffffffffffff8111156115d1576115d16121bc565b6040519080825280601f01601f1916602001820160405280156115fb576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461160557509392505050565b6000807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a006105b4565b611668611a38565b61067e8282611a5d565b610ba1611a38565b611682611a38565b610e3b81611a8e565b60006001600160e01b031982166380ac58cd60e01b14806116bc57506001600160e01b03198216635b5e139f60e01b145b806105b457506301ffc9a760e01b6001600160e01b03198316146105b4565b60008051602061271e83398151915281806116fe57506001600160a01b03831615155b156117c057600061170e85611014565b90506001600160a01b0384161580159061173a5750836001600160a01b0316816001600160a01b031614155b801561174d575061174b8185610db3565b155b156117765760405163a9fbf51f60e01b81526001600160a01b03851660048201526024016106cf565b82156117be5784866001600160a01b0316826001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b600093845260040160205250506040902080546001600160a01b0319166001600160a01b0392909216919091179055565b6117fb8383611a96565b61084333600085858561147b565b600080611817858585611afb565b90506001600160a01b0381166118a05761189b8460008051602061275e833981519152805460008381527f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed0360205260408120829055600182018355919091527fa42f15e5d656f8155fd7419d740a6073999f19cd6e061449ce4a257150545bf20155565b6118c3565b846001600160a01b0316816001600160a01b0316146118c3576118c38185611c05565b6001600160a01b0385166118df576118da84611ca1565b611902565b846001600160a01b0316816001600160a01b031614611902576119028585611d78565b949350505050565b61191382611dd3565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115611958576108438282611e38565b61067e611ea5565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061199f5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef810000000083106119cb576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106119e957662386f26fc10000830492506010015b6305f5e1008310611a01576305f5e100830492506008015b6127108310611a1557612710830492506004015b60648310611a27576064830492506002015b600a83106105b45760010192915050565b611a40611ec4565b610ba157604051631afcd79f60e31b815260040160405180910390fd5b611a65611a38565b60008051602061271e83398151915280611a7f84826125f8565b50600181016107ae83826125f8565b610e08611a38565b6001600160a01b038216611ac057604051633250574960e11b8152600060048201526024016106cf565b6000611ace838360006110ad565b90506001600160a01b03811615610843576040516339e3563760e11b8152600060048201526024016106cf565b600060008051602061271e83398151915281611b168561131f565b90506001600160a01b03841615611b3257611b32818587611ede565b6001600160a01b03811615611b7257611b4f6000866000806116db565b6001600160a01b0381166000908152600383016020526040902080546000190190555b6001600160a01b03861615611ba3576001600160a01b03861660009081526003830160205260409020805460010190555b600085815260028301602052604080822080546001600160a01b0319166001600160a01b038a811691821790925591518893918516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a495945050505050565b6000805160206126fe8339815191526000611c1f84610b33565b60008481526001840160209081526040808320546001600160a01b03891684529186905290912091925090818314611c79576000838152602082815260408083205485845281842081905583526001870190915290208290555b6000948552600190930160209081526040808620869055928552929092528220919091555050565b60008051602061275e833981519152546000805160206126fe83398151915290600090611cd0906001906126b8565b6000848152600384016020526040812054600285018054939450909284908110611cfc57611cfc6124b7565b9060005260206000200154905080846002018381548110611d1f57611d1f6124b7565b600091825260208083209091019290925582815260038601909152604080822084905586825281205560028401805480611d5b57611d5b6126cb565b600190038181906000526020600020016000905590555050505050565b6000805160206126fe83398151915260006001611d9485610b33565b611d9e91906126b8565b6001600160a01b0390941660009081526020838152604080832087845282528083208690559482526001909301909252502055565b806001600160a01b03163b600003611e0957604051634c9c8ce360e01b81526001600160a01b03821660048201526024016106cf565b60008051602061273e83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b031684604051611e5591906126e1565b600060405180830381855af49150503d8060008114611e90576040519150601f19603f3d011682016040523d82523d6000602084013e611e95565b606091505b5091509150611131858383611f42565b3415610ba15760405163b398979f60e01b815260040160405180910390fd5b6000611ece611637565b54600160401b900460ff16919050565b611ee9838383611f9e565b610843576001600160a01b038316611f1757604051637e27328960e01b8152600481018290526024016106cf565b60405163177e802f60e01b81526001600160a01b0383166004820152602481018290526044016106cf565b606082611f5757611f5282612003565b610ca1565b8151158015611f6e57506001600160a01b0384163b155b15611f9757604051639996b31560e01b81526001600160a01b03851660048201526024016106cf565b5080610ca1565b60006001600160a01b038316158015906119025750826001600160a01b0316846001600160a01b03161480611fd85750611fd88484610db3565b806119025750826001600160a01b0316611ff18361104c565b6001600160a01b031614949350505050565b80511561201257805160208201fd5b60405163d6bda27560e01b815260040160405180910390fd5b828054828255906000526020600020908101928215612066579160200282015b8281111561206657823582559160200191906001019061204b565b50612072929150612076565b5090565b5b808211156120725760008155600101612077565b6001600160e01b031981168114610e3b57600080fd5b6000602082840312156120b357600080fd5b8135610ca18161208b565b60005b838110156120d95781810151838201526020016120c1565b50506000910152565b600081518084526120fa8160208601602086016120be565b601f01601f19169290920160200192915050565b602081526000610ca160208301846120e2565b60006020828403121561213357600080fd5b5035919050565b80356001600160a01b038116811461215157600080fd5b919050565b6000806040838503121561216957600080fd5b6121728361213a565b946020939093013593505050565b60008060006060848603121561219557600080fd5b61219e8461213a565b92506121ac6020850161213a565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126121e357600080fd5b813567ffffffffffffffff808211156121fe576121fe6121bc565b604051601f8301601f19908116603f01168101908282118183101715612226576122266121bc565b8160405283815286602085880101111561223f57600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806040838503121561227257600080fd5b61227b8361213a565b9150602083013567ffffffffffffffff81111561229757600080fd5b6122a3858286016121d2565b9150509250929050565b600080600080606085870312156122c357600080fd5b8435935060208501359250604085013567ffffffffffffffff808211156122e957600080fd5b818701915087601f8301126122fd57600080fd5b81358181111561230c57600080fd5b8860208260051b850101111561232157600080fd5b95989497505060200194505050565b60006020828403121561234257600080fd5b610ca18261213a565b6000806040838503121561235e57600080fd5b6123678361213a565b91506020830135801515811461237c57600080fd5b809150509250929050565b6000806000806080858703121561239d57600080fd5b6123a68561213a565b93506123b46020860161213a565b925060408501359150606085013567ffffffffffffffff8111156123d757600080fd5b6123e3878288016121d2565b91505092959194509250565b60008060006060848603121561240457600080fd5b505081359360208301359350604090920135919050565b6000806040838503121561242e57600080fd5b6124378361213a565b91506124456020840161213a565b90509250929050565b600181811c9082168061246257607f821691505b60208210810361248257634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b6000600182016124b0576124b0612488565b5060010190565b634e487b7160e01b600052603260045260246000fd5b838152604060208201819052810182905260006001600160fb1b038311156124f457600080fd5b8260051b8085606085013791909101606001949350505050565b600083516125208184602088016120be565b8351908301906125348183602088016120be565b01949350505050565b60006020828403121561254f57600080fd5b5051919050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090612589908301846120e2565b9695505050505050565b6000602082840312156125a557600080fd5b8151610ca18161208b565b601f821115610843576000816000526020600020601f850160051c810160208610156125d95750805b601f850160051c820191505b81811015610fe7578281556001016125e5565b815167ffffffffffffffff811115612612576126126121bc565b61262681612620845461244e565b846125b0565b602080601f83116001811461265b57600084156126435750858301515b600019600386901b1c1916600185901b178555610fe7565b600085815260208120601f198616915b8281101561268a5788860151825594840194600190910190840161266b565b50858210156126a85787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b818103818111156105b4576105b4612488565b634e487b7160e01b600052603160045260246000fd5b600082516126f38184602087016120be565b919091019291505056fe645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed0080bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab0079300360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed02a2646970667358221220659df0aa89e4c3055b65f56180f4de08097a2e9ecfef286a579c3ea665e720b564736f6c63430008180033";
1029
+ "0x60a0604052306080523480156200001557600080fd5b506200002062000026565b620000da565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff1615620000775760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b0390811614620000d75780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b608051612a92620001046000396000818161134d0152818161137601526114b70152612a926000f3fe6080604052600436106101f95760003560e01c80636817c76c1161010d578063b88d4fde116100a0578063e985e9c51161006f578063e985e9c51461058b578063f2fde38b146105ab578063f4a0a528146105cb578063fd6bc723146105eb578063fe4b84df1461060057600080fd5b8063b88d4fde14610515578063c87b56dd14610535578063da75c7db14610555578063ddbbc45b1461057557600080fd5b80638da5cb5b116100dc5780638da5cb5b1461049a57806395d89b41146104af578063a22cb465146104c4578063ad3cb1cc146104e457600080fd5b80636817c76c1461042f57806370a0823114610445578063715018a614610465578063747b6bbe1461047a57600080fd5b80632f745c59116101905780634f6ccce71161015f5780634f6ccce7146103a557806352d1902d146103c557806359bab766146103da5780636103d70b146103fa5780636352211e1461040f57600080fd5b80632f745c591461033257806342842e0e14610352578063484425ef146103725780634f1ef2861461039257600080fd5b80631249c58b116101cc5780631249c58b146102af57806318160ddd146102b75780631e5a5763146102e357806323b872dd1461031257600080fd5b806301ffc9a7146101fe57806306fdde0314610233578063081812fc14610255578063095ea7b31461028d575b600080fd5b34801561020a57600080fd5b5061021e6102193660046122c3565b610620565b60405190151581526020015b60405180910390f35b34801561023f57600080fd5b50610248610631565b60405161022a9190612330565b34801561026157600080fd5b50610275610270366004612343565b6106d5565b6040516001600160a01b03909116815260200161022a565b34801561029957600080fd5b506102ad6102a8366004612378565b6106ea565b005b6102ad6106f9565b3480156102c357600080fd5b50600080516020612a3d833981519152545b60405190815260200161022a565b3480156102ef57600080fd5b5061021e6102fe366004612343565b600090815260036020526040902054151590565b34801561031e57600080fd5b506102ad61032d3660046123a2565b61086d565b34801561033e57600080fd5b506102d561034d366004612378565b6108f8565b34801561035e57600080fd5b506102ad61036d3660046123a2565b61096c565b34801561037e57600080fd5b506102d561038d366004612343565b61098c565b6102ad6103a0366004612481565b6109ad565b3480156103b157600080fd5b506102d56103c0366004612343565b6109c8565b3480156103d157600080fd5b506102d5610a40565b3480156103e657600080fd5b506102ad6103f536600461251b565b610a5d565b34801561040657600080fd5b506102ad610b9b565b34801561041b57600080fd5b5061027561042a366004612343565b610c8d565b34801561043b57600080fd5b506102d560005481565b34801561045157600080fd5b506102d561046036600461256e565b610c98565b34801561047157600080fd5b506102ad610cf4565b34801561048657600080fd5b506102ad610495366004612589565b610d08565b3480156104a657600080fd5b50610275610dab565b3480156104bb57600080fd5b50610248610dd9565b3480156104d057600080fd5b506102ad6104df3660046125d5565b610e18565b3480156104f057600080fd5b50610248604051806040016040528060058152602001640352e302e360dc1b81525081565b34801561052157600080fd5b506102ad610530366004612611565b610e23565b34801561054157600080fd5b50610248610550366004612343565b610e3b565b34801561056157600080fd5b5061021e610570366004612679565b610eb0565b34801561058157600080fd5b506102d560045481565b34801561059757600080fd5b5061021e6105a63660046126a5565b610fbb565b3480156105b757600080fd5b506102ad6105c636600461256e565b611008565b3480156105d757600080fd5b506102ad6105e6366004612343565b611046565b3480156105f757600080fd5b506102d560ff81565b34801561060c57600080fd5b506102ad61061b366004612343565b611093565b600061062b826111f7565b92915050565b6000805160206129fd8339815191528054606091908190610651906126d8565b80601f016020809104026020016040519081016040528092919081815260200182805461067d906126d8565b80156106ca5780601f1061069f576101008083540402835291602001916106ca565b820191906000526020600020905b8154815290600101906020018083116106ad57829003601f168201915b505050505091505090565b60006106e08261121c565b5061062b82611254565b6106f582823361128e565b5050565b600054341461074f5760405162461bcd60e51b815260206004820152601860248201527f496e636f7272656374207061796d656e7420616d6f756e74000000000000000060448201526064015b60405180910390fd5b600180546000918261076083612728565b919050559050610770338261129b565b6005541561083d57600454600082815260026020908152604080832084845290915281206005915b82548110156107da57818382815481106107b4576107b4612741565b600091825260208083209091015483546001818101865594845291909220015501610798565b506000848152600360209081526040808320805460018101825590845291909220018490555184907fe5c6dc435e469e33f1f803f7719fb16e5910f27f150dd97fc0afad70c73377ec906108319086908690612757565b60405180910390a25050505b604051339082907fede4da48509d6c07b9b5f7e89b4b81dc9f52cc0dcb63668f5098954bf3081c5190600090a350565b6001600160a01b03821661089757604051633250574960e11b815260006004820152602401610746565b60006108a48383336112b5565b9050836001600160a01b0316816001600160a01b0316146108f2576040516364283d7b60e01b81526001600160a01b0380861660048301526024820184905282166044820152606401610746565b50505050565b60006000805160206129dd83398151915261091284610c98565b83106109435760405163295f44f760e21b81526001600160a01b038516600482015260248101849052604401610746565b6001600160a01b0384166000908152602091825260408082208583529092522054905092915050565b61098783838360405180602001604052806000815250610e23565b505050565b6005818154811061099c57600080fd5b600091825260209091200154905081565b6109b5611342565b6109be826113e7565b6106f582826113ef565b60006000805160206129dd8339815191526109ef600080516020612a3d8339815191525490565b8310610a185760405163295f44f760e21b81526000600482015260248101849052604401610746565b806002018381548110610a2d57610a2d612741565b9060005260206000200154915050919050565b6000610a4a6114ac565b50600080516020612a1d83398151915290565b610a656114f5565b6000610a7085611527565b6001600160a01b031603610abd5760405162461bcd60e51b8152602060048201526014602482015273151bdad95b88191bd95cc81b9bdd08195e1a5cdd60621b6044820152606401610746565b60008481526002602090815260408083208684529091529020610ae1908383612233565b506000848152600360205260408120815b8154811015610b2f5785828281548110610b0e57610b0e612741565b906000526020600020015403610b275760019250610b2f565b600101610af2565b5081610b57576000868152600360209081526040822080546001810182559083529120018590555b857fe5c6dc435e469e33f1f803f7719fb16e5910f27f150dd97fc0afad70c73377ec868686604051610b8b939291906127ac565b60405180910390a2505050505050565b610ba36114f5565b4780610bf15760405162461bcd60e51b815260206004820152601760248201527f4e6f207061796d656e747320746f2077697468647261770000000000000000006044820152606401610746565b6000610bfb610dab565b6001600160a01b03168260405160006040518083038185875af1925050503d8060008114610c45576040519150601f19603f3d011682016040523d82523d6000602084013e610c4a565b606091505b50509050806106f55760405162461bcd60e51b815260206004820152600f60248201526e151c985b9cd9995c8819985a5b1959608a1b6044820152606401610746565b600061062b8261121c565b60006000805160206129fd8339815191526001600160a01b038316610cd3576040516322718ad960e21b815260006004820152602401610746565b6001600160a01b039092166000908152600390920160205250604090205490565b610cfc6114f5565b610d066000611561565b565b610d106114f5565b6004839055610d216005600061227e565b60005b81811015610d6a576005838383818110610d4057610d40612741565b83546001808201865560009586526020958690209290950293909301359201919091555001610d24565b507fc5ba3aad03ee70dc53d64df88c5104b8dc6eafbdb1c9e5ee8330f078f1ad21a7838383604051610d9e939291906127ac565b60405180910390a1505050565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b031690565b7f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930180546060916000805160206129fd83398151915291610651906126d8565b6106f53383836115d2565b610e2e84848461086d565b6108f23385858585611683565b6060610e468261121c565b506000610e5e60408051602081019091526000815290565b90506000815111610e7e5760405180602001604052806000815250610ea9565b80610e88846117ac565b604051602001610e999291906127ed565b6040516020818303038152906040525b9392505050565b600083815260026020908152604080832060ff84529091528120805415610f165760005b8154811015610f145760ff828281548110610ef157610ef1612741565b906000526020600020015403610f0c57600192505050610ea9565b600101610ed4565b505b600085815260026020908152604080832087845290915281208054909103610f4357600092505050610ea9565b60005b8154811015610fae5760ff828281548110610f6357610f63612741565b90600052602060002001541480610f95575084828281548110610f8857610f88612741565b9060005260206000200154145b15610fa65760019350505050610ea9565b600101610f46565b5060009695505050505050565b6001600160a01b0391821660009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab00793056020908152604080832093909416825291909152205460ff1690565b6110106114f5565b6001600160a01b03811661103a57604051631e4fbdf760e01b815260006004820152602401610746565b61104381611561565b50565b61104e6114f5565b600080549082905560408051828152602081018490527f2e1c9e000c6e8dda4d03536adb13b7cb6034ccff90d17f01de381e4d5097b525910160405180910390a15050565b600061109d61183f565b805490915060ff600160401b820416159067ffffffffffffffff166000811580156110c55750825b905060008267ffffffffffffffff1660011480156110e25750303b155b9050811580156110f0575080155b1561110e5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561113857845460ff60401b1916600160401b1785555b6111876040518060400160405280600d81526020016c4465616c65724c6963656e736560981b81525060405180604001604052806008815260200167444c4943454e534560c01b815250611868565b61118f61187a565b61119833611882565b6111a061187a565b60008690556001805583156111ef57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b505050505050565b60006001600160e01b0319821663780e9d6360e01b148061062b575061062b82611893565b60008061122883611527565b90506001600160a01b03811661062b57604051637e27328960e01b815260048101849052602401610746565b60009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930460205260409020546001600160a01b031690565b61098783838360016118e3565b6106f58282604051806020016040528060008152506119f9565b6000806112c184611527565b905060006112d0868686611a11565b90506001600160a01b038216158015906112f257506001600160a01b03861615155b1561133957856001600160a01b0316826001600160a01b0316867fac51dde61f583e7dae0e8dbd18c8dc42bbdb9942ecbb54c67a52468c823997a060405160405180910390a45b95945050505050565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614806113c957507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166113bd600080516020612a1d833981519152546001600160a01b031690565b6001600160a01b031614155b15610d065760405163703e46dd60e11b815260040160405180910390fd5b6110436114f5565b816001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611449575060408051601f3d908101601f191682019092526114469181019061281c565b60015b61147157604051634c9c8ce360e01b81526001600160a01b0383166004820152602401610746565b600080516020612a1d83398151915281146114a257604051632a87526960e21b815260048101829052602401610746565b6109878383611b12565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610d065760405163703e46dd60e11b815260040160405180910390fd5b336114fe610dab565b6001600160a01b031614610d065760405163118cdaa760e01b8152336004820152602401610746565b60009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930260205260409020546001600160a01b031690565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930080546001600160a01b031981166001600160a01b03848116918217845560405192169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b6000805160206129fd8339815191526001600160a01b03831661161357604051630b61174360e31b81526001600160a01b0384166004820152602401610746565b6001600160a01b038481166000818152600584016020908152604080832094881680845294825291829020805460ff191687151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a350505050565b6001600160a01b0383163b156117a557604051630a85bd0160e11b81526001600160a01b0384169063150b7a02906116c5908890889087908790600401612835565b6020604051808303816000875af1925050508015611700575060408051601f3d908101601f191682019092526116fd91810190612872565b60015b611769573d80801561172e576040519150601f19603f3d011682016040523d82523d6000602084013e611733565b606091505b50805160000361176157604051633250574960e11b81526001600160a01b0385166004820152602401610746565b805160208201fd5b6001600160e01b03198116630a85bd0160e11b146111ef57604051633250574960e11b81526001600160a01b0385166004820152602401610746565b5050505050565b606060006117b983611b68565b600101905060008167ffffffffffffffff8111156117d9576117d96123de565b6040519080825280601f01601f191660200182016040528015611803576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461180d57509392505050565b6000807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0061062b565b611870611c40565b6106f58282611c65565b610d06611c40565b61188a611c40565b61104381611c96565b60006001600160e01b031982166380ac58cd60e01b14806118c457506001600160e01b03198216635b5e139f60e01b145b8061062b57506301ffc9a760e01b6001600160e01b031983161461062b565b6000805160206129fd833981519152818061190657506001600160a01b03831615155b156119c85760006119168561121c565b90506001600160a01b038416158015906119425750836001600160a01b0316816001600160a01b031614155b801561195557506119538185610fbb565b155b1561197e5760405163a9fbf51f60e01b81526001600160a01b0385166004820152602401610746565b82156119c65784866001600160a01b0316826001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b600093845260040160205250506040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611a038383611c9e565b610987336000858585611683565b600080611a1f858585611d03565b90506001600160a01b038116611aa857611aa384600080516020612a3d833981519152805460008381527f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed0360205260408120829055600182018355919091527fa42f15e5d656f8155fd7419d740a6073999f19cd6e061449ce4a257150545bf20155565b611acb565b846001600160a01b0316816001600160a01b031614611acb57611acb8185611e0d565b6001600160a01b038516611ae757611ae284611ea9565b611b0a565b846001600160a01b0316816001600160a01b031614611b0a57611b0a8585611f80565b949350505050565b611b1b82611fdb565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115611b60576109878282612040565b6106f56120ad565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310611ba75772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310611bd3576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310611bf157662386f26fc10000830492506010015b6305f5e1008310611c09576305f5e100830492506008015b6127108310611c1d57612710830492506004015b60648310611c2f576064830492506002015b600a831061062b5760010192915050565b611c486120cc565b610d0657604051631afcd79f60e31b815260040160405180910390fd5b611c6d611c40565b6000805160206129fd83398151915280611c8784826128d7565b50600181016108f283826128d7565b611010611c40565b6001600160a01b038216611cc857604051633250574960e11b815260006004820152602401610746565b6000611cd6838360006112b5565b90506001600160a01b03811615610987576040516339e3563760e11b815260006004820152602401610746565b60006000805160206129fd83398151915281611d1e85611527565b90506001600160a01b03841615611d3a57611d3a8185876120e6565b6001600160a01b03811615611d7a57611d576000866000806118e3565b6001600160a01b0381166000908152600383016020526040902080546000190190555b6001600160a01b03861615611dab576001600160a01b03861660009081526003830160205260409020805460010190555b600085815260028301602052604080822080546001600160a01b0319166001600160a01b038a811691821790925591518893918516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a495945050505050565b6000805160206129dd8339815191526000611e2784610c98565b60008481526001840160209081526040808320546001600160a01b03891684529186905290912091925090818314611e81576000838152602082815260408083205485845281842081905583526001870190915290208290555b6000948552600190930160209081526040808620869055928552929092528220919091555050565b600080516020612a3d833981519152546000805160206129dd83398151915290600090611ed890600190612997565b6000848152600384016020526040812054600285018054939450909284908110611f0457611f04612741565b9060005260206000200154905080846002018381548110611f2757611f27612741565b600091825260208083209091019290925582815260038601909152604080822084905586825281205560028401805480611f6357611f636129aa565b600190038181906000526020600020016000905590555050505050565b6000805160206129dd83398151915260006001611f9c85610c98565b611fa69190612997565b6001600160a01b0390941660009081526020838152604080832087845282528083208690559482526001909301909252502055565b806001600160a01b03163b60000361201157604051634c9c8ce360e01b81526001600160a01b0382166004820152602401610746565b600080516020612a1d83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b03168460405161205d91906129c0565b600060405180830381855af49150503d8060008114612098576040519150601f19603f3d011682016040523d82523d6000602084013e61209d565b606091505b509150915061133985838361214a565b3415610d065760405163b398979f60e01b815260040160405180910390fd5b60006120d661183f565b54600160401b900460ff16919050565b6120f18383836121a6565b610987576001600160a01b03831661211f57604051637e27328960e01b815260048101829052602401610746565b60405163177e802f60e01b81526001600160a01b038316600482015260248101829052604401610746565b60608261215f5761215a8261220b565b610ea9565b815115801561217657506001600160a01b0384163b155b1561219f57604051639996b31560e01b81526001600160a01b0385166004820152602401610746565b5080610ea9565b60006001600160a01b03831615801590611b0a5750826001600160a01b0316846001600160a01b031614806121e057506121e08484610fbb565b80611b0a5750826001600160a01b03166121f983611254565b6001600160a01b031614949350505050565b80511561221a57805160208201fd5b60405163d6bda27560e01b815260040160405180910390fd5b82805482825590600052602060002090810192821561226e579160200282015b8281111561226e578235825591602001919060010190612253565b5061227a929150612298565b5090565b508054600082559060005260206000209081019061104391905b5b8082111561227a5760008155600101612299565b6001600160e01b03198116811461104357600080fd5b6000602082840312156122d557600080fd5b8135610ea9816122ad565b60005b838110156122fb5781810151838201526020016122e3565b50506000910152565b6000815180845261231c8160208601602086016122e0565b601f01601f19169290920160200192915050565b602081526000610ea96020830184612304565b60006020828403121561235557600080fd5b5035919050565b80356001600160a01b038116811461237357600080fd5b919050565b6000806040838503121561238b57600080fd5b6123948361235c565b946020939093013593505050565b6000806000606084860312156123b757600080fd5b6123c08461235c565b92506123ce6020850161235c565b9150604084013590509250925092565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261240557600080fd5b813567ffffffffffffffff80821115612420576124206123de565b604051601f8301601f19908116603f01168101908282118183101715612448576124486123de565b8160405283815286602085880101111561246157600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806040838503121561249457600080fd5b61249d8361235c565b9150602083013567ffffffffffffffff8111156124b957600080fd5b6124c5858286016123f4565b9150509250929050565b60008083601f8401126124e157600080fd5b50813567ffffffffffffffff8111156124f957600080fd5b6020830191508360208260051b850101111561251457600080fd5b9250929050565b6000806000806060858703121561253157600080fd5b8435935060208501359250604085013567ffffffffffffffff81111561255657600080fd5b612562878288016124cf565b95989497509550505050565b60006020828403121561258057600080fd5b610ea98261235c565b60008060006040848603121561259e57600080fd5b83359250602084013567ffffffffffffffff8111156125bc57600080fd5b6125c8868287016124cf565b9497909650939450505050565b600080604083850312156125e857600080fd5b6125f18361235c565b91506020830135801515811461260657600080fd5b809150509250929050565b6000806000806080858703121561262757600080fd5b6126308561235c565b935061263e6020860161235c565b925060408501359150606085013567ffffffffffffffff81111561266157600080fd5b61266d878288016123f4565b91505092959194509250565b60008060006060848603121561268e57600080fd5b505081359360208301359350604090920135919050565b600080604083850312156126b857600080fd5b6126c18361235c565b91506126cf6020840161235c565b90509250929050565b600181811c908216806126ec57607f821691505b60208210810361270c57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b60006001820161273a5761273a612712565b5060010190565b634e487b7160e01b600052603260045260246000fd5b600060408201848352602060406020850152818554808452606086019150866000526020600020935060005b8181101561279f57845483526001948501949284019201612783565b5090979650505050505050565b838152604060208201819052810182905260006001600160fb1b038311156127d357600080fd5b8260051b8085606085013791909101606001949350505050565b600083516127ff8184602088016122e0565b8351908301906128138183602088016122e0565b01949350505050565b60006020828403121561282e57600080fd5b5051919050565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061286890830184612304565b9695505050505050565b60006020828403121561288457600080fd5b8151610ea9816122ad565b601f821115610987576000816000526020600020601f850160051c810160208610156128b85750805b601f850160051c820191505b818110156111ef578281556001016128c4565b815167ffffffffffffffff8111156128f1576128f16123de565b612905816128ff84546126d8565b8461288f565b602080601f83116001811461293a57600084156129225750858301515b600019600386901b1c1916600185901b1785556111ef565b600085815260208120601f198616915b828110156129695788860151825594840194600190910190840161294a565b50858210156129875787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b8181038181111561062b5761062b612712565b634e487b7160e01b600052603160045260246000fd5b600082516129d28184602087016122e0565b919091019291505056fe645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed0080bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab0079300360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed02a26469706673582212207d6ed859d0617348305b6c248d3a19cdaaf5dcc6c8068f2b0c395d0411c4186464736f6c63430008180033";
961
1030
 
962
1031
  type DealerNFTConstructorParams =
963
1032
  | [signer?: Signer]