@iexec-nox/nox-protocol-contracts 0.2.2 → 0.2.3

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.
@@ -0,0 +1,3502 @@
1
+ {
2
+ "_format": "hh3-artifact-1",
3
+ "contractName": "TypeUtils",
4
+ "sourceName": "contracts/utils/TypeUtils.sol",
5
+ "abi": [],
6
+ "bytecode": "0x602c604b600b8282823980515f1a607314603f577f4e487b71000000000000000000000000000000000000000000000000000000005f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040525f5ffdfea164736f6c6343000823000a",
7
+ "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040525f5ffdfea164736f6c6343000823000a",
8
+ "linkReferences": {},
9
+ "deployedLinkReferences": {},
10
+ "immutableReferences": {},
11
+ "inputSourceName": "project/contracts/utils/TypeUtils.sol",
12
+ "buildInfoId": "solc-0_8_35-78aaf8749566814c0b5c1b21ccc24b7f1017e498",
13
+ "ast": {
14
+ "absolutePath": "project/contracts/utils/TypeUtils.sol",
15
+ "exportedSymbols": {
16
+ "IncompatibleTypes": [
17
+ 20430
18
+ ],
19
+ "NonArithmeticType": [
20
+ 20426
21
+ ],
22
+ "TEEType": [
23
+ 20424
24
+ ],
25
+ "TypeUtils": [
26
+ 20631
27
+ ],
28
+ "UnsupportedArithmeticType": [
29
+ 20428
30
+ ]
31
+ },
32
+ "id": 20632,
33
+ "license": "MIT",
34
+ "nodeType": "SourceUnit",
35
+ "nodes": [
36
+ {
37
+ "id": 20322,
38
+ "literals": [
39
+ "solidity",
40
+ "^",
41
+ "0.8",
42
+ ".35"
43
+ ],
44
+ "nodeType": "PragmaDirective",
45
+ "src": "32:24:47"
46
+ },
47
+ {
48
+ "canonicalName": "TEEType",
49
+ "documentation": {
50
+ "id": 20323,
51
+ "nodeType": "StructuredDocumentation",
52
+ "src": "58:162:47",
53
+ "text": " @notice Enum values MUST NOT be reordered or removed once deployed.\n New types should only be appended at the end to maintain backward compatibility."
54
+ },
55
+ "id": 20424,
56
+ "members": [
57
+ {
58
+ "id": 20324,
59
+ "name": "Bool",
60
+ "nameLocation": "293:4:47",
61
+ "nodeType": "EnumValue",
62
+ "src": "293:4:47"
63
+ },
64
+ {
65
+ "id": 20325,
66
+ "name": "Address",
67
+ "nameLocation": "308:7:47",
68
+ "nodeType": "EnumValue",
69
+ "src": "308:7:47"
70
+ },
71
+ {
72
+ "id": 20326,
73
+ "name": "Bytes",
74
+ "nameLocation": "326:5:47",
75
+ "nodeType": "EnumValue",
76
+ "src": "326:5:47"
77
+ },
78
+ {
79
+ "id": 20327,
80
+ "name": "String",
81
+ "nameLocation": "352:6:47",
82
+ "nodeType": "EnumValue",
83
+ "src": "352:6:47"
84
+ },
85
+ {
86
+ "id": 20328,
87
+ "name": "Uint8",
88
+ "nameLocation": "432:5:47",
89
+ "nodeType": "EnumValue",
90
+ "src": "432:5:47"
91
+ },
92
+ {
93
+ "id": 20329,
94
+ "name": "Uint16",
95
+ "nameLocation": "448:6:47",
96
+ "nodeType": "EnumValue",
97
+ "src": "448:6:47"
98
+ },
99
+ {
100
+ "id": 20330,
101
+ "name": "Uint24",
102
+ "nameLocation": "465:6:47",
103
+ "nodeType": "EnumValue",
104
+ "src": "465:6:47"
105
+ },
106
+ {
107
+ "id": 20331,
108
+ "name": "Uint32",
109
+ "nameLocation": "482:6:47",
110
+ "nodeType": "EnumValue",
111
+ "src": "482:6:47"
112
+ },
113
+ {
114
+ "id": 20332,
115
+ "name": "Uint40",
116
+ "nameLocation": "499:6:47",
117
+ "nodeType": "EnumValue",
118
+ "src": "499:6:47"
119
+ },
120
+ {
121
+ "id": 20333,
122
+ "name": "Uint48",
123
+ "nameLocation": "516:6:47",
124
+ "nodeType": "EnumValue",
125
+ "src": "516:6:47"
126
+ },
127
+ {
128
+ "id": 20334,
129
+ "name": "Uint56",
130
+ "nameLocation": "533:6:47",
131
+ "nodeType": "EnumValue",
132
+ "src": "533:6:47"
133
+ },
134
+ {
135
+ "id": 20335,
136
+ "name": "Uint64",
137
+ "nameLocation": "551:6:47",
138
+ "nodeType": "EnumValue",
139
+ "src": "551:6:47"
140
+ },
141
+ {
142
+ "id": 20336,
143
+ "name": "Uint72",
144
+ "nameLocation": "569:6:47",
145
+ "nodeType": "EnumValue",
146
+ "src": "569:6:47"
147
+ },
148
+ {
149
+ "id": 20337,
150
+ "name": "Uint80",
151
+ "nameLocation": "587:6:47",
152
+ "nodeType": "EnumValue",
153
+ "src": "587:6:47"
154
+ },
155
+ {
156
+ "id": 20338,
157
+ "name": "Uint88",
158
+ "nameLocation": "605:6:47",
159
+ "nodeType": "EnumValue",
160
+ "src": "605:6:47"
161
+ },
162
+ {
163
+ "id": 20339,
164
+ "name": "Uint96",
165
+ "nameLocation": "623:6:47",
166
+ "nodeType": "EnumValue",
167
+ "src": "623:6:47"
168
+ },
169
+ {
170
+ "id": 20340,
171
+ "name": "Uint104",
172
+ "nameLocation": "641:7:47",
173
+ "nodeType": "EnumValue",
174
+ "src": "641:7:47"
175
+ },
176
+ {
177
+ "id": 20341,
178
+ "name": "Uint112",
179
+ "nameLocation": "660:7:47",
180
+ "nodeType": "EnumValue",
181
+ "src": "660:7:47"
182
+ },
183
+ {
184
+ "id": 20342,
185
+ "name": "Uint120",
186
+ "nameLocation": "679:7:47",
187
+ "nodeType": "EnumValue",
188
+ "src": "679:7:47"
189
+ },
190
+ {
191
+ "id": 20343,
192
+ "name": "Uint128",
193
+ "nameLocation": "698:7:47",
194
+ "nodeType": "EnumValue",
195
+ "src": "698:7:47"
196
+ },
197
+ {
198
+ "id": 20344,
199
+ "name": "Uint136",
200
+ "nameLocation": "717:7:47",
201
+ "nodeType": "EnumValue",
202
+ "src": "717:7:47"
203
+ },
204
+ {
205
+ "id": 20345,
206
+ "name": "Uint144",
207
+ "nameLocation": "736:7:47",
208
+ "nodeType": "EnumValue",
209
+ "src": "736:7:47"
210
+ },
211
+ {
212
+ "id": 20346,
213
+ "name": "Uint152",
214
+ "nameLocation": "755:7:47",
215
+ "nodeType": "EnumValue",
216
+ "src": "755:7:47"
217
+ },
218
+ {
219
+ "id": 20347,
220
+ "name": "Uint160",
221
+ "nameLocation": "774:7:47",
222
+ "nodeType": "EnumValue",
223
+ "src": "774:7:47"
224
+ },
225
+ {
226
+ "id": 20348,
227
+ "name": "Uint168",
228
+ "nameLocation": "793:7:47",
229
+ "nodeType": "EnumValue",
230
+ "src": "793:7:47"
231
+ },
232
+ {
233
+ "id": 20349,
234
+ "name": "Uint176",
235
+ "nameLocation": "812:7:47",
236
+ "nodeType": "EnumValue",
237
+ "src": "812:7:47"
238
+ },
239
+ {
240
+ "id": 20350,
241
+ "name": "Uint184",
242
+ "nameLocation": "831:7:47",
243
+ "nodeType": "EnumValue",
244
+ "src": "831:7:47"
245
+ },
246
+ {
247
+ "id": 20351,
248
+ "name": "Uint192",
249
+ "nameLocation": "850:7:47",
250
+ "nodeType": "EnumValue",
251
+ "src": "850:7:47"
252
+ },
253
+ {
254
+ "id": 20352,
255
+ "name": "Uint200",
256
+ "nameLocation": "869:7:47",
257
+ "nodeType": "EnumValue",
258
+ "src": "869:7:47"
259
+ },
260
+ {
261
+ "id": 20353,
262
+ "name": "Uint208",
263
+ "nameLocation": "888:7:47",
264
+ "nodeType": "EnumValue",
265
+ "src": "888:7:47"
266
+ },
267
+ {
268
+ "id": 20354,
269
+ "name": "Uint216",
270
+ "nameLocation": "907:7:47",
271
+ "nodeType": "EnumValue",
272
+ "src": "907:7:47"
273
+ },
274
+ {
275
+ "id": 20355,
276
+ "name": "Uint224",
277
+ "nameLocation": "926:7:47",
278
+ "nodeType": "EnumValue",
279
+ "src": "926:7:47"
280
+ },
281
+ {
282
+ "id": 20356,
283
+ "name": "Uint232",
284
+ "nameLocation": "945:7:47",
285
+ "nodeType": "EnumValue",
286
+ "src": "945:7:47"
287
+ },
288
+ {
289
+ "id": 20357,
290
+ "name": "Uint240",
291
+ "nameLocation": "964:7:47",
292
+ "nodeType": "EnumValue",
293
+ "src": "964:7:47"
294
+ },
295
+ {
296
+ "id": 20358,
297
+ "name": "Uint248",
298
+ "nameLocation": "983:7:47",
299
+ "nodeType": "EnumValue",
300
+ "src": "983:7:47"
301
+ },
302
+ {
303
+ "id": 20359,
304
+ "name": "Uint256",
305
+ "nameLocation": "1002:7:47",
306
+ "nodeType": "EnumValue",
307
+ "src": "1002:7:47"
308
+ },
309
+ {
310
+ "id": 20360,
311
+ "name": "Int8",
312
+ "nameLocation": "1083:4:47",
313
+ "nodeType": "EnumValue",
314
+ "src": "1083:4:47"
315
+ },
316
+ {
317
+ "id": 20361,
318
+ "name": "Int16",
319
+ "nameLocation": "1099:5:47",
320
+ "nodeType": "EnumValue",
321
+ "src": "1099:5:47"
322
+ },
323
+ {
324
+ "id": 20362,
325
+ "name": "Int24",
326
+ "nameLocation": "1116:5:47",
327
+ "nodeType": "EnumValue",
328
+ "src": "1116:5:47"
329
+ },
330
+ {
331
+ "id": 20363,
332
+ "name": "Int32",
333
+ "nameLocation": "1133:5:47",
334
+ "nodeType": "EnumValue",
335
+ "src": "1133:5:47"
336
+ },
337
+ {
338
+ "id": 20364,
339
+ "name": "Int40",
340
+ "nameLocation": "1150:5:47",
341
+ "nodeType": "EnumValue",
342
+ "src": "1150:5:47"
343
+ },
344
+ {
345
+ "id": 20365,
346
+ "name": "Int48",
347
+ "nameLocation": "1167:5:47",
348
+ "nodeType": "EnumValue",
349
+ "src": "1167:5:47"
350
+ },
351
+ {
352
+ "id": 20366,
353
+ "name": "Int56",
354
+ "nameLocation": "1184:5:47",
355
+ "nodeType": "EnumValue",
356
+ "src": "1184:5:47"
357
+ },
358
+ {
359
+ "id": 20367,
360
+ "name": "Int64",
361
+ "nameLocation": "1201:5:47",
362
+ "nodeType": "EnumValue",
363
+ "src": "1201:5:47"
364
+ },
365
+ {
366
+ "id": 20368,
367
+ "name": "Int72",
368
+ "nameLocation": "1218:5:47",
369
+ "nodeType": "EnumValue",
370
+ "src": "1218:5:47"
371
+ },
372
+ {
373
+ "id": 20369,
374
+ "name": "Int80",
375
+ "nameLocation": "1235:5:47",
376
+ "nodeType": "EnumValue",
377
+ "src": "1235:5:47"
378
+ },
379
+ {
380
+ "id": 20370,
381
+ "name": "Int88",
382
+ "nameLocation": "1252:5:47",
383
+ "nodeType": "EnumValue",
384
+ "src": "1252:5:47"
385
+ },
386
+ {
387
+ "id": 20371,
388
+ "name": "Int96",
389
+ "nameLocation": "1269:5:47",
390
+ "nodeType": "EnumValue",
391
+ "src": "1269:5:47"
392
+ },
393
+ {
394
+ "id": 20372,
395
+ "name": "Int104",
396
+ "nameLocation": "1286:6:47",
397
+ "nodeType": "EnumValue",
398
+ "src": "1286:6:47"
399
+ },
400
+ {
401
+ "id": 20373,
402
+ "name": "Int112",
403
+ "nameLocation": "1304:6:47",
404
+ "nodeType": "EnumValue",
405
+ "src": "1304:6:47"
406
+ },
407
+ {
408
+ "id": 20374,
409
+ "name": "Int120",
410
+ "nameLocation": "1322:6:47",
411
+ "nodeType": "EnumValue",
412
+ "src": "1322:6:47"
413
+ },
414
+ {
415
+ "id": 20375,
416
+ "name": "Int128",
417
+ "nameLocation": "1340:6:47",
418
+ "nodeType": "EnumValue",
419
+ "src": "1340:6:47"
420
+ },
421
+ {
422
+ "id": 20376,
423
+ "name": "Int136",
424
+ "nameLocation": "1358:6:47",
425
+ "nodeType": "EnumValue",
426
+ "src": "1358:6:47"
427
+ },
428
+ {
429
+ "id": 20377,
430
+ "name": "Int144",
431
+ "nameLocation": "1376:6:47",
432
+ "nodeType": "EnumValue",
433
+ "src": "1376:6:47"
434
+ },
435
+ {
436
+ "id": 20378,
437
+ "name": "Int152",
438
+ "nameLocation": "1394:6:47",
439
+ "nodeType": "EnumValue",
440
+ "src": "1394:6:47"
441
+ },
442
+ {
443
+ "id": 20379,
444
+ "name": "Int160",
445
+ "nameLocation": "1412:6:47",
446
+ "nodeType": "EnumValue",
447
+ "src": "1412:6:47"
448
+ },
449
+ {
450
+ "id": 20380,
451
+ "name": "Int168",
452
+ "nameLocation": "1430:6:47",
453
+ "nodeType": "EnumValue",
454
+ "src": "1430:6:47"
455
+ },
456
+ {
457
+ "id": 20381,
458
+ "name": "Int176",
459
+ "nameLocation": "1448:6:47",
460
+ "nodeType": "EnumValue",
461
+ "src": "1448:6:47"
462
+ },
463
+ {
464
+ "id": 20382,
465
+ "name": "Int184",
466
+ "nameLocation": "1466:6:47",
467
+ "nodeType": "EnumValue",
468
+ "src": "1466:6:47"
469
+ },
470
+ {
471
+ "id": 20383,
472
+ "name": "Int192",
473
+ "nameLocation": "1484:6:47",
474
+ "nodeType": "EnumValue",
475
+ "src": "1484:6:47"
476
+ },
477
+ {
478
+ "id": 20384,
479
+ "name": "Int200",
480
+ "nameLocation": "1502:6:47",
481
+ "nodeType": "EnumValue",
482
+ "src": "1502:6:47"
483
+ },
484
+ {
485
+ "id": 20385,
486
+ "name": "Int208",
487
+ "nameLocation": "1520:6:47",
488
+ "nodeType": "EnumValue",
489
+ "src": "1520:6:47"
490
+ },
491
+ {
492
+ "id": 20386,
493
+ "name": "Int216",
494
+ "nameLocation": "1538:6:47",
495
+ "nodeType": "EnumValue",
496
+ "src": "1538:6:47"
497
+ },
498
+ {
499
+ "id": 20387,
500
+ "name": "Int224",
501
+ "nameLocation": "1556:6:47",
502
+ "nodeType": "EnumValue",
503
+ "src": "1556:6:47"
504
+ },
505
+ {
506
+ "id": 20388,
507
+ "name": "Int232",
508
+ "nameLocation": "1574:6:47",
509
+ "nodeType": "EnumValue",
510
+ "src": "1574:6:47"
511
+ },
512
+ {
513
+ "id": 20389,
514
+ "name": "Int240",
515
+ "nameLocation": "1592:6:47",
516
+ "nodeType": "EnumValue",
517
+ "src": "1592:6:47"
518
+ },
519
+ {
520
+ "id": 20390,
521
+ "name": "Int248",
522
+ "nameLocation": "1610:6:47",
523
+ "nodeType": "EnumValue",
524
+ "src": "1610:6:47"
525
+ },
526
+ {
527
+ "id": 20391,
528
+ "name": "Int256",
529
+ "nameLocation": "1628:6:47",
530
+ "nodeType": "EnumValue",
531
+ "src": "1628:6:47"
532
+ },
533
+ {
534
+ "id": 20392,
535
+ "name": "Bytes1",
536
+ "nameLocation": "1710:6:47",
537
+ "nodeType": "EnumValue",
538
+ "src": "1710:6:47"
539
+ },
540
+ {
541
+ "id": 20393,
542
+ "name": "Bytes2",
543
+ "nameLocation": "1728:6:47",
544
+ "nodeType": "EnumValue",
545
+ "src": "1728:6:47"
546
+ },
547
+ {
548
+ "id": 20394,
549
+ "name": "Bytes3",
550
+ "nameLocation": "1746:6:47",
551
+ "nodeType": "EnumValue",
552
+ "src": "1746:6:47"
553
+ },
554
+ {
555
+ "id": 20395,
556
+ "name": "Bytes4",
557
+ "nameLocation": "1764:6:47",
558
+ "nodeType": "EnumValue",
559
+ "src": "1764:6:47"
560
+ },
561
+ {
562
+ "id": 20396,
563
+ "name": "Bytes5",
564
+ "nameLocation": "1782:6:47",
565
+ "nodeType": "EnumValue",
566
+ "src": "1782:6:47"
567
+ },
568
+ {
569
+ "id": 20397,
570
+ "name": "Bytes6",
571
+ "nameLocation": "1800:6:47",
572
+ "nodeType": "EnumValue",
573
+ "src": "1800:6:47"
574
+ },
575
+ {
576
+ "id": 20398,
577
+ "name": "Bytes7",
578
+ "nameLocation": "1818:6:47",
579
+ "nodeType": "EnumValue",
580
+ "src": "1818:6:47"
581
+ },
582
+ {
583
+ "id": 20399,
584
+ "name": "Bytes8",
585
+ "nameLocation": "1836:6:47",
586
+ "nodeType": "EnumValue",
587
+ "src": "1836:6:47"
588
+ },
589
+ {
590
+ "id": 20400,
591
+ "name": "Bytes9",
592
+ "nameLocation": "1854:6:47",
593
+ "nodeType": "EnumValue",
594
+ "src": "1854:6:47"
595
+ },
596
+ {
597
+ "id": 20401,
598
+ "name": "Bytes10",
599
+ "nameLocation": "1872:7:47",
600
+ "nodeType": "EnumValue",
601
+ "src": "1872:7:47"
602
+ },
603
+ {
604
+ "id": 20402,
605
+ "name": "Bytes11",
606
+ "nameLocation": "1891:7:47",
607
+ "nodeType": "EnumValue",
608
+ "src": "1891:7:47"
609
+ },
610
+ {
611
+ "id": 20403,
612
+ "name": "Bytes12",
613
+ "nameLocation": "1910:7:47",
614
+ "nodeType": "EnumValue",
615
+ "src": "1910:7:47"
616
+ },
617
+ {
618
+ "id": 20404,
619
+ "name": "Bytes13",
620
+ "nameLocation": "1929:7:47",
621
+ "nodeType": "EnumValue",
622
+ "src": "1929:7:47"
623
+ },
624
+ {
625
+ "id": 20405,
626
+ "name": "Bytes14",
627
+ "nameLocation": "1948:7:47",
628
+ "nodeType": "EnumValue",
629
+ "src": "1948:7:47"
630
+ },
631
+ {
632
+ "id": 20406,
633
+ "name": "Bytes15",
634
+ "nameLocation": "1967:7:47",
635
+ "nodeType": "EnumValue",
636
+ "src": "1967:7:47"
637
+ },
638
+ {
639
+ "id": 20407,
640
+ "name": "Bytes16",
641
+ "nameLocation": "1986:7:47",
642
+ "nodeType": "EnumValue",
643
+ "src": "1986:7:47"
644
+ },
645
+ {
646
+ "id": 20408,
647
+ "name": "Bytes17",
648
+ "nameLocation": "2005:7:47",
649
+ "nodeType": "EnumValue",
650
+ "src": "2005:7:47"
651
+ },
652
+ {
653
+ "id": 20409,
654
+ "name": "Bytes18",
655
+ "nameLocation": "2024:7:47",
656
+ "nodeType": "EnumValue",
657
+ "src": "2024:7:47"
658
+ },
659
+ {
660
+ "id": 20410,
661
+ "name": "Bytes19",
662
+ "nameLocation": "2043:7:47",
663
+ "nodeType": "EnumValue",
664
+ "src": "2043:7:47"
665
+ },
666
+ {
667
+ "id": 20411,
668
+ "name": "Bytes20",
669
+ "nameLocation": "2062:7:47",
670
+ "nodeType": "EnumValue",
671
+ "src": "2062:7:47"
672
+ },
673
+ {
674
+ "id": 20412,
675
+ "name": "Bytes21",
676
+ "nameLocation": "2081:7:47",
677
+ "nodeType": "EnumValue",
678
+ "src": "2081:7:47"
679
+ },
680
+ {
681
+ "id": 20413,
682
+ "name": "Bytes22",
683
+ "nameLocation": "2100:7:47",
684
+ "nodeType": "EnumValue",
685
+ "src": "2100:7:47"
686
+ },
687
+ {
688
+ "id": 20414,
689
+ "name": "Bytes23",
690
+ "nameLocation": "2119:7:47",
691
+ "nodeType": "EnumValue",
692
+ "src": "2119:7:47"
693
+ },
694
+ {
695
+ "id": 20415,
696
+ "name": "Bytes24",
697
+ "nameLocation": "2138:7:47",
698
+ "nodeType": "EnumValue",
699
+ "src": "2138:7:47"
700
+ },
701
+ {
702
+ "id": 20416,
703
+ "name": "Bytes25",
704
+ "nameLocation": "2157:7:47",
705
+ "nodeType": "EnumValue",
706
+ "src": "2157:7:47"
707
+ },
708
+ {
709
+ "id": 20417,
710
+ "name": "Bytes26",
711
+ "nameLocation": "2176:7:47",
712
+ "nodeType": "EnumValue",
713
+ "src": "2176:7:47"
714
+ },
715
+ {
716
+ "id": 20418,
717
+ "name": "Bytes27",
718
+ "nameLocation": "2195:7:47",
719
+ "nodeType": "EnumValue",
720
+ "src": "2195:7:47"
721
+ },
722
+ {
723
+ "id": 20419,
724
+ "name": "Bytes28",
725
+ "nameLocation": "2214:7:47",
726
+ "nodeType": "EnumValue",
727
+ "src": "2214:7:47"
728
+ },
729
+ {
730
+ "id": 20420,
731
+ "name": "Bytes29",
732
+ "nameLocation": "2233:7:47",
733
+ "nodeType": "EnumValue",
734
+ "src": "2233:7:47"
735
+ },
736
+ {
737
+ "id": 20421,
738
+ "name": "Bytes30",
739
+ "nameLocation": "2252:7:47",
740
+ "nodeType": "EnumValue",
741
+ "src": "2252:7:47"
742
+ },
743
+ {
744
+ "id": 20422,
745
+ "name": "Bytes31",
746
+ "nameLocation": "2271:7:47",
747
+ "nodeType": "EnumValue",
748
+ "src": "2271:7:47"
749
+ },
750
+ {
751
+ "id": 20423,
752
+ "name": "Bytes32",
753
+ "nameLocation": "2290:7:47",
754
+ "nodeType": "EnumValue",
755
+ "src": "2290:7:47"
756
+ }
757
+ ],
758
+ "name": "TEEType",
759
+ "nameLocation": "226:7:47",
760
+ "nodeType": "EnumDefinition",
761
+ "src": "221:2084:47"
762
+ },
763
+ {
764
+ "errorSelector": "84a73f36",
765
+ "id": 20426,
766
+ "name": "NonArithmeticType",
767
+ "nameLocation": "2313:17:47",
768
+ "nodeType": "ErrorDefinition",
769
+ "parameters": {
770
+ "id": 20425,
771
+ "nodeType": "ParameterList",
772
+ "parameters": [],
773
+ "src": "2330:2:47"
774
+ },
775
+ "src": "2307:26:47"
776
+ },
777
+ {
778
+ "errorSelector": "6b712a60",
779
+ "id": 20428,
780
+ "name": "UnsupportedArithmeticType",
781
+ "nameLocation": "2340:25:47",
782
+ "nodeType": "ErrorDefinition",
783
+ "parameters": {
784
+ "id": 20427,
785
+ "nodeType": "ParameterList",
786
+ "parameters": [],
787
+ "src": "2365:2:47"
788
+ },
789
+ "src": "2334:34:47"
790
+ },
791
+ {
792
+ "errorSelector": "1f3158c7",
793
+ "id": 20430,
794
+ "name": "IncompatibleTypes",
795
+ "nameLocation": "2375:17:47",
796
+ "nodeType": "ErrorDefinition",
797
+ "parameters": {
798
+ "id": 20429,
799
+ "nodeType": "ParameterList",
800
+ "parameters": [],
801
+ "src": "2392:2:47"
802
+ },
803
+ "src": "2369:26:47"
804
+ },
805
+ {
806
+ "abstract": false,
807
+ "baseContracts": [],
808
+ "canonicalName": "TypeUtils",
809
+ "contractDependencies": [],
810
+ "contractKind": "library",
811
+ "fullyImplemented": true,
812
+ "id": 20631,
813
+ "linearizedBaseContracts": [
814
+ 20631
815
+ ],
816
+ "name": "TypeUtils",
817
+ "nameLocation": "2405:9:47",
818
+ "nodeType": "ContractDefinition",
819
+ "nodes": [
820
+ {
821
+ "body": {
822
+ "id": 20482,
823
+ "nodeType": "Block",
824
+ "src": "2643:214:47",
825
+ "statements": [
826
+ {
827
+ "expression": {
828
+ "id": 20445,
829
+ "isConstant": false,
830
+ "isLValue": false,
831
+ "isPure": false,
832
+ "lValueRequested": false,
833
+ "leftHandSide": {
834
+ "id": 20438,
835
+ "name": "types",
836
+ "nodeType": "Identifier",
837
+ "overloadedDeclarations": [],
838
+ "referencedDeclaration": 20436,
839
+ "src": "2653:5:47",
840
+ "typeDescriptions": {
841
+ "typeIdentifier": "t_array$_t_enum$_TEEType_$20424_$dyn_memory_ptr",
842
+ "typeString": "enum TEEType[] memory"
843
+ }
844
+ },
845
+ "nodeType": "Assignment",
846
+ "operator": "=",
847
+ "rightHandSide": {
848
+ "arguments": [
849
+ {
850
+ "hexValue": "35",
851
+ "id": 20443,
852
+ "isConstant": false,
853
+ "isLValue": false,
854
+ "isPure": true,
855
+ "kind": "number",
856
+ "lValueRequested": false,
857
+ "nodeType": "Literal",
858
+ "src": "2675:1:47",
859
+ "typeDescriptions": {
860
+ "typeIdentifier": "t_rational_5_by_1",
861
+ "typeString": "int_const 5"
862
+ },
863
+ "value": "5"
864
+ }
865
+ ],
866
+ "expression": {
867
+ "argumentTypes": [
868
+ {
869
+ "typeIdentifier": "t_rational_5_by_1",
870
+ "typeString": "int_const 5"
871
+ }
872
+ ],
873
+ "id": 20442,
874
+ "isConstant": false,
875
+ "isLValue": false,
876
+ "isPure": true,
877
+ "lValueRequested": false,
878
+ "nodeType": "NewExpression",
879
+ "src": "2661:13:47",
880
+ "typeDescriptions": {
881
+ "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_enum$_TEEType_$20424_$dyn_memory_ptr_$",
882
+ "typeString": "function (uint256) pure returns (enum TEEType[] memory)"
883
+ },
884
+ "typeName": {
885
+ "baseType": {
886
+ "id": 20440,
887
+ "nodeType": "UserDefinedTypeName",
888
+ "pathNode": {
889
+ "id": 20439,
890
+ "name": "TEEType",
891
+ "nameLocations": [
892
+ "2665:7:47"
893
+ ],
894
+ "nodeType": "IdentifierPath",
895
+ "referencedDeclaration": 20424,
896
+ "src": "2665:7:47"
897
+ },
898
+ "referencedDeclaration": 20424,
899
+ "src": "2665:7:47",
900
+ "typeDescriptions": {
901
+ "typeIdentifier": "t_enum$_TEEType_$20424",
902
+ "typeString": "enum TEEType"
903
+ }
904
+ },
905
+ "id": 20441,
906
+ "nodeType": "ArrayTypeName",
907
+ "src": "2665:9:47",
908
+ "typeDescriptions": {
909
+ "typeIdentifier": "t_array$_t_enum$_TEEType_$20424_$dyn_storage_ptr",
910
+ "typeString": "enum TEEType[]"
911
+ }
912
+ }
913
+ },
914
+ "id": 20444,
915
+ "isConstant": false,
916
+ "isLValue": false,
917
+ "isPure": true,
918
+ "kind": "functionCall",
919
+ "lValueRequested": false,
920
+ "nameLocations": [],
921
+ "names": [],
922
+ "nodeType": "FunctionCall",
923
+ "src": "2661:16:47",
924
+ "tryCall": false,
925
+ "typeDescriptions": {
926
+ "typeIdentifier": "t_array$_t_enum$_TEEType_$20424_$dyn_memory_ptr",
927
+ "typeString": "enum TEEType[] memory"
928
+ }
929
+ },
930
+ "src": "2653:24:47",
931
+ "typeDescriptions": {
932
+ "typeIdentifier": "t_array$_t_enum$_TEEType_$20424_$dyn_memory_ptr",
933
+ "typeString": "enum TEEType[] memory"
934
+ }
935
+ },
936
+ "id": 20446,
937
+ "nodeType": "ExpressionStatement",
938
+ "src": "2653:24:47"
939
+ },
940
+ {
941
+ "expression": {
942
+ "id": 20452,
943
+ "isConstant": false,
944
+ "isLValue": false,
945
+ "isPure": false,
946
+ "lValueRequested": false,
947
+ "leftHandSide": {
948
+ "baseExpression": {
949
+ "id": 20447,
950
+ "name": "types",
951
+ "nodeType": "Identifier",
952
+ "overloadedDeclarations": [],
953
+ "referencedDeclaration": 20436,
954
+ "src": "2687:5:47",
955
+ "typeDescriptions": {
956
+ "typeIdentifier": "t_array$_t_enum$_TEEType_$20424_$dyn_memory_ptr",
957
+ "typeString": "enum TEEType[] memory"
958
+ }
959
+ },
960
+ "id": 20449,
961
+ "indexExpression": {
962
+ "hexValue": "30",
963
+ "id": 20448,
964
+ "isConstant": false,
965
+ "isLValue": false,
966
+ "isPure": true,
967
+ "kind": "number",
968
+ "lValueRequested": false,
969
+ "nodeType": "Literal",
970
+ "src": "2693:1:47",
971
+ "typeDescriptions": {
972
+ "typeIdentifier": "t_rational_0_by_1",
973
+ "typeString": "int_const 0"
974
+ },
975
+ "value": "0"
976
+ },
977
+ "isConstant": false,
978
+ "isLValue": true,
979
+ "isPure": false,
980
+ "lValueRequested": true,
981
+ "nodeType": "IndexAccess",
982
+ "src": "2687:8:47",
983
+ "typeDescriptions": {
984
+ "typeIdentifier": "t_enum$_TEEType_$20424",
985
+ "typeString": "enum TEEType"
986
+ }
987
+ },
988
+ "nodeType": "Assignment",
989
+ "operator": "=",
990
+ "rightHandSide": {
991
+ "expression": {
992
+ "id": 20450,
993
+ "name": "TEEType",
994
+ "nodeType": "Identifier",
995
+ "overloadedDeclarations": [],
996
+ "referencedDeclaration": 20424,
997
+ "src": "2698:7:47",
998
+ "typeDescriptions": {
999
+ "typeIdentifier": "t_type$_t_enum$_TEEType_$20424_$",
1000
+ "typeString": "type(enum TEEType)"
1001
+ }
1002
+ },
1003
+ "id": 20451,
1004
+ "isConstant": false,
1005
+ "isLValue": false,
1006
+ "isPure": true,
1007
+ "lValueRequested": false,
1008
+ "memberLocation": "2706:4:47",
1009
+ "memberName": "Bool",
1010
+ "nodeType": "MemberAccess",
1011
+ "referencedDeclaration": 20324,
1012
+ "src": "2698:12:47",
1013
+ "typeDescriptions": {
1014
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1015
+ "typeString": "enum TEEType"
1016
+ }
1017
+ },
1018
+ "src": "2687:23:47",
1019
+ "typeDescriptions": {
1020
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1021
+ "typeString": "enum TEEType"
1022
+ }
1023
+ },
1024
+ "id": 20453,
1025
+ "nodeType": "ExpressionStatement",
1026
+ "src": "2687:23:47"
1027
+ },
1028
+ {
1029
+ "expression": {
1030
+ "id": 20459,
1031
+ "isConstant": false,
1032
+ "isLValue": false,
1033
+ "isPure": false,
1034
+ "lValueRequested": false,
1035
+ "leftHandSide": {
1036
+ "baseExpression": {
1037
+ "id": 20454,
1038
+ "name": "types",
1039
+ "nodeType": "Identifier",
1040
+ "overloadedDeclarations": [],
1041
+ "referencedDeclaration": 20436,
1042
+ "src": "2720:5:47",
1043
+ "typeDescriptions": {
1044
+ "typeIdentifier": "t_array$_t_enum$_TEEType_$20424_$dyn_memory_ptr",
1045
+ "typeString": "enum TEEType[] memory"
1046
+ }
1047
+ },
1048
+ "id": 20456,
1049
+ "indexExpression": {
1050
+ "hexValue": "31",
1051
+ "id": 20455,
1052
+ "isConstant": false,
1053
+ "isLValue": false,
1054
+ "isPure": true,
1055
+ "kind": "number",
1056
+ "lValueRequested": false,
1057
+ "nodeType": "Literal",
1058
+ "src": "2726:1:47",
1059
+ "typeDescriptions": {
1060
+ "typeIdentifier": "t_rational_1_by_1",
1061
+ "typeString": "int_const 1"
1062
+ },
1063
+ "value": "1"
1064
+ },
1065
+ "isConstant": false,
1066
+ "isLValue": true,
1067
+ "isPure": false,
1068
+ "lValueRequested": true,
1069
+ "nodeType": "IndexAccess",
1070
+ "src": "2720:8:47",
1071
+ "typeDescriptions": {
1072
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1073
+ "typeString": "enum TEEType"
1074
+ }
1075
+ },
1076
+ "nodeType": "Assignment",
1077
+ "operator": "=",
1078
+ "rightHandSide": {
1079
+ "expression": {
1080
+ "id": 20457,
1081
+ "name": "TEEType",
1082
+ "nodeType": "Identifier",
1083
+ "overloadedDeclarations": [],
1084
+ "referencedDeclaration": 20424,
1085
+ "src": "2731:7:47",
1086
+ "typeDescriptions": {
1087
+ "typeIdentifier": "t_type$_t_enum$_TEEType_$20424_$",
1088
+ "typeString": "type(enum TEEType)"
1089
+ }
1090
+ },
1091
+ "id": 20458,
1092
+ "isConstant": false,
1093
+ "isLValue": false,
1094
+ "isPure": true,
1095
+ "lValueRequested": false,
1096
+ "memberLocation": "2739:6:47",
1097
+ "memberName": "Uint16",
1098
+ "nodeType": "MemberAccess",
1099
+ "referencedDeclaration": 20329,
1100
+ "src": "2731:14:47",
1101
+ "typeDescriptions": {
1102
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1103
+ "typeString": "enum TEEType"
1104
+ }
1105
+ },
1106
+ "src": "2720:25:47",
1107
+ "typeDescriptions": {
1108
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1109
+ "typeString": "enum TEEType"
1110
+ }
1111
+ },
1112
+ "id": 20460,
1113
+ "nodeType": "ExpressionStatement",
1114
+ "src": "2720:25:47"
1115
+ },
1116
+ {
1117
+ "expression": {
1118
+ "id": 20466,
1119
+ "isConstant": false,
1120
+ "isLValue": false,
1121
+ "isPure": false,
1122
+ "lValueRequested": false,
1123
+ "leftHandSide": {
1124
+ "baseExpression": {
1125
+ "id": 20461,
1126
+ "name": "types",
1127
+ "nodeType": "Identifier",
1128
+ "overloadedDeclarations": [],
1129
+ "referencedDeclaration": 20436,
1130
+ "src": "2755:5:47",
1131
+ "typeDescriptions": {
1132
+ "typeIdentifier": "t_array$_t_enum$_TEEType_$20424_$dyn_memory_ptr",
1133
+ "typeString": "enum TEEType[] memory"
1134
+ }
1135
+ },
1136
+ "id": 20463,
1137
+ "indexExpression": {
1138
+ "hexValue": "32",
1139
+ "id": 20462,
1140
+ "isConstant": false,
1141
+ "isLValue": false,
1142
+ "isPure": true,
1143
+ "kind": "number",
1144
+ "lValueRequested": false,
1145
+ "nodeType": "Literal",
1146
+ "src": "2761:1:47",
1147
+ "typeDescriptions": {
1148
+ "typeIdentifier": "t_rational_2_by_1",
1149
+ "typeString": "int_const 2"
1150
+ },
1151
+ "value": "2"
1152
+ },
1153
+ "isConstant": false,
1154
+ "isLValue": true,
1155
+ "isPure": false,
1156
+ "lValueRequested": true,
1157
+ "nodeType": "IndexAccess",
1158
+ "src": "2755:8:47",
1159
+ "typeDescriptions": {
1160
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1161
+ "typeString": "enum TEEType"
1162
+ }
1163
+ },
1164
+ "nodeType": "Assignment",
1165
+ "operator": "=",
1166
+ "rightHandSide": {
1167
+ "expression": {
1168
+ "id": 20464,
1169
+ "name": "TEEType",
1170
+ "nodeType": "Identifier",
1171
+ "overloadedDeclarations": [],
1172
+ "referencedDeclaration": 20424,
1173
+ "src": "2766:7:47",
1174
+ "typeDescriptions": {
1175
+ "typeIdentifier": "t_type$_t_enum$_TEEType_$20424_$",
1176
+ "typeString": "type(enum TEEType)"
1177
+ }
1178
+ },
1179
+ "id": 20465,
1180
+ "isConstant": false,
1181
+ "isLValue": false,
1182
+ "isPure": true,
1183
+ "lValueRequested": false,
1184
+ "memberLocation": "2774:7:47",
1185
+ "memberName": "Uint256",
1186
+ "nodeType": "MemberAccess",
1187
+ "referencedDeclaration": 20359,
1188
+ "src": "2766:15:47",
1189
+ "typeDescriptions": {
1190
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1191
+ "typeString": "enum TEEType"
1192
+ }
1193
+ },
1194
+ "src": "2755:26:47",
1195
+ "typeDescriptions": {
1196
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1197
+ "typeString": "enum TEEType"
1198
+ }
1199
+ },
1200
+ "id": 20467,
1201
+ "nodeType": "ExpressionStatement",
1202
+ "src": "2755:26:47"
1203
+ },
1204
+ {
1205
+ "expression": {
1206
+ "id": 20473,
1207
+ "isConstant": false,
1208
+ "isLValue": false,
1209
+ "isPure": false,
1210
+ "lValueRequested": false,
1211
+ "leftHandSide": {
1212
+ "baseExpression": {
1213
+ "id": 20468,
1214
+ "name": "types",
1215
+ "nodeType": "Identifier",
1216
+ "overloadedDeclarations": [],
1217
+ "referencedDeclaration": 20436,
1218
+ "src": "2791:5:47",
1219
+ "typeDescriptions": {
1220
+ "typeIdentifier": "t_array$_t_enum$_TEEType_$20424_$dyn_memory_ptr",
1221
+ "typeString": "enum TEEType[] memory"
1222
+ }
1223
+ },
1224
+ "id": 20470,
1225
+ "indexExpression": {
1226
+ "hexValue": "33",
1227
+ "id": 20469,
1228
+ "isConstant": false,
1229
+ "isLValue": false,
1230
+ "isPure": true,
1231
+ "kind": "number",
1232
+ "lValueRequested": false,
1233
+ "nodeType": "Literal",
1234
+ "src": "2797:1:47",
1235
+ "typeDescriptions": {
1236
+ "typeIdentifier": "t_rational_3_by_1",
1237
+ "typeString": "int_const 3"
1238
+ },
1239
+ "value": "3"
1240
+ },
1241
+ "isConstant": false,
1242
+ "isLValue": true,
1243
+ "isPure": false,
1244
+ "lValueRequested": true,
1245
+ "nodeType": "IndexAccess",
1246
+ "src": "2791:8:47",
1247
+ "typeDescriptions": {
1248
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1249
+ "typeString": "enum TEEType"
1250
+ }
1251
+ },
1252
+ "nodeType": "Assignment",
1253
+ "operator": "=",
1254
+ "rightHandSide": {
1255
+ "expression": {
1256
+ "id": 20471,
1257
+ "name": "TEEType",
1258
+ "nodeType": "Identifier",
1259
+ "overloadedDeclarations": [],
1260
+ "referencedDeclaration": 20424,
1261
+ "src": "2802:7:47",
1262
+ "typeDescriptions": {
1263
+ "typeIdentifier": "t_type$_t_enum$_TEEType_$20424_$",
1264
+ "typeString": "type(enum TEEType)"
1265
+ }
1266
+ },
1267
+ "id": 20472,
1268
+ "isConstant": false,
1269
+ "isLValue": false,
1270
+ "isPure": true,
1271
+ "lValueRequested": false,
1272
+ "memberLocation": "2810:5:47",
1273
+ "memberName": "Int16",
1274
+ "nodeType": "MemberAccess",
1275
+ "referencedDeclaration": 20361,
1276
+ "src": "2802:13:47",
1277
+ "typeDescriptions": {
1278
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1279
+ "typeString": "enum TEEType"
1280
+ }
1281
+ },
1282
+ "src": "2791:24:47",
1283
+ "typeDescriptions": {
1284
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1285
+ "typeString": "enum TEEType"
1286
+ }
1287
+ },
1288
+ "id": 20474,
1289
+ "nodeType": "ExpressionStatement",
1290
+ "src": "2791:24:47"
1291
+ },
1292
+ {
1293
+ "expression": {
1294
+ "id": 20480,
1295
+ "isConstant": false,
1296
+ "isLValue": false,
1297
+ "isPure": false,
1298
+ "lValueRequested": false,
1299
+ "leftHandSide": {
1300
+ "baseExpression": {
1301
+ "id": 20475,
1302
+ "name": "types",
1303
+ "nodeType": "Identifier",
1304
+ "overloadedDeclarations": [],
1305
+ "referencedDeclaration": 20436,
1306
+ "src": "2825:5:47",
1307
+ "typeDescriptions": {
1308
+ "typeIdentifier": "t_array$_t_enum$_TEEType_$20424_$dyn_memory_ptr",
1309
+ "typeString": "enum TEEType[] memory"
1310
+ }
1311
+ },
1312
+ "id": 20477,
1313
+ "indexExpression": {
1314
+ "hexValue": "34",
1315
+ "id": 20476,
1316
+ "isConstant": false,
1317
+ "isLValue": false,
1318
+ "isPure": true,
1319
+ "kind": "number",
1320
+ "lValueRequested": false,
1321
+ "nodeType": "Literal",
1322
+ "src": "2831:1:47",
1323
+ "typeDescriptions": {
1324
+ "typeIdentifier": "t_rational_4_by_1",
1325
+ "typeString": "int_const 4"
1326
+ },
1327
+ "value": "4"
1328
+ },
1329
+ "isConstant": false,
1330
+ "isLValue": true,
1331
+ "isPure": false,
1332
+ "lValueRequested": true,
1333
+ "nodeType": "IndexAccess",
1334
+ "src": "2825:8:47",
1335
+ "typeDescriptions": {
1336
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1337
+ "typeString": "enum TEEType"
1338
+ }
1339
+ },
1340
+ "nodeType": "Assignment",
1341
+ "operator": "=",
1342
+ "rightHandSide": {
1343
+ "expression": {
1344
+ "id": 20478,
1345
+ "name": "TEEType",
1346
+ "nodeType": "Identifier",
1347
+ "overloadedDeclarations": [],
1348
+ "referencedDeclaration": 20424,
1349
+ "src": "2836:7:47",
1350
+ "typeDescriptions": {
1351
+ "typeIdentifier": "t_type$_t_enum$_TEEType_$20424_$",
1352
+ "typeString": "type(enum TEEType)"
1353
+ }
1354
+ },
1355
+ "id": 20479,
1356
+ "isConstant": false,
1357
+ "isLValue": false,
1358
+ "isPure": true,
1359
+ "lValueRequested": false,
1360
+ "memberLocation": "2844:6:47",
1361
+ "memberName": "Int256",
1362
+ "nodeType": "MemberAccess",
1363
+ "referencedDeclaration": 20391,
1364
+ "src": "2836:14:47",
1365
+ "typeDescriptions": {
1366
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1367
+ "typeString": "enum TEEType"
1368
+ }
1369
+ },
1370
+ "src": "2825:25:47",
1371
+ "typeDescriptions": {
1372
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1373
+ "typeString": "enum TEEType"
1374
+ }
1375
+ },
1376
+ "id": 20481,
1377
+ "nodeType": "ExpressionStatement",
1378
+ "src": "2825:25:47"
1379
+ }
1380
+ ]
1381
+ },
1382
+ "documentation": {
1383
+ "id": 20431,
1384
+ "nodeType": "StructuredDocumentation",
1385
+ "src": "2421:132:47",
1386
+ "text": " Returns the list of all currently supported TEE types.\n @dev Update this list when new types are supported."
1387
+ },
1388
+ "id": 20483,
1389
+ "implemented": true,
1390
+ "kind": "function",
1391
+ "modifiers": [],
1392
+ "name": "allCurrentlySupportedTypes",
1393
+ "nameLocation": "2567:26:47",
1394
+ "nodeType": "FunctionDefinition",
1395
+ "parameters": {
1396
+ "id": 20432,
1397
+ "nodeType": "ParameterList",
1398
+ "parameters": [],
1399
+ "src": "2593:2:47"
1400
+ },
1401
+ "returnParameters": {
1402
+ "id": 20437,
1403
+ "nodeType": "ParameterList",
1404
+ "parameters": [
1405
+ {
1406
+ "constant": false,
1407
+ "id": 20436,
1408
+ "mutability": "mutable",
1409
+ "name": "types",
1410
+ "nameLocation": "2636:5:47",
1411
+ "nodeType": "VariableDeclaration",
1412
+ "scope": 20483,
1413
+ "src": "2619:22:47",
1414
+ "stateVariable": false,
1415
+ "storageLocation": "memory",
1416
+ "typeDescriptions": {
1417
+ "typeIdentifier": "t_array$_t_enum$_TEEType_$20424_$dyn_memory_ptr",
1418
+ "typeString": "enum TEEType[]"
1419
+ },
1420
+ "typeName": {
1421
+ "baseType": {
1422
+ "id": 20434,
1423
+ "nodeType": "UserDefinedTypeName",
1424
+ "pathNode": {
1425
+ "id": 20433,
1426
+ "name": "TEEType",
1427
+ "nameLocations": [
1428
+ "2619:7:47"
1429
+ ],
1430
+ "nodeType": "IdentifierPath",
1431
+ "referencedDeclaration": 20424,
1432
+ "src": "2619:7:47"
1433
+ },
1434
+ "referencedDeclaration": 20424,
1435
+ "src": "2619:7:47",
1436
+ "typeDescriptions": {
1437
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1438
+ "typeString": "enum TEEType"
1439
+ }
1440
+ },
1441
+ "id": 20435,
1442
+ "nodeType": "ArrayTypeName",
1443
+ "src": "2619:9:47",
1444
+ "typeDescriptions": {
1445
+ "typeIdentifier": "t_array$_t_enum$_TEEType_$20424_$dyn_storage_ptr",
1446
+ "typeString": "enum TEEType[]"
1447
+ }
1448
+ },
1449
+ "visibility": "internal"
1450
+ }
1451
+ ],
1452
+ "src": "2618:24:47"
1453
+ },
1454
+ "scope": 20631,
1455
+ "src": "2558:299:47",
1456
+ "stateMutability": "pure",
1457
+ "virtual": false,
1458
+ "visibility": "internal"
1459
+ },
1460
+ {
1461
+ "body": {
1462
+ "id": 20501,
1463
+ "nodeType": "Block",
1464
+ "src": "3161:49:47",
1465
+ "statements": [
1466
+ {
1467
+ "expression": {
1468
+ "arguments": [
1469
+ {
1470
+ "arguments": [
1471
+ {
1472
+ "baseExpression": {
1473
+ "id": 20495,
1474
+ "name": "handle",
1475
+ "nodeType": "Identifier",
1476
+ "overloadedDeclarations": [],
1477
+ "referencedDeclaration": 20486,
1478
+ "src": "3192:6:47",
1479
+ "typeDescriptions": {
1480
+ "typeIdentifier": "t_bytes32",
1481
+ "typeString": "bytes32"
1482
+ }
1483
+ },
1484
+ "id": 20497,
1485
+ "indexExpression": {
1486
+ "hexValue": "35",
1487
+ "id": 20496,
1488
+ "isConstant": false,
1489
+ "isLValue": false,
1490
+ "isPure": true,
1491
+ "kind": "number",
1492
+ "lValueRequested": false,
1493
+ "nodeType": "Literal",
1494
+ "src": "3199:1:47",
1495
+ "typeDescriptions": {
1496
+ "typeIdentifier": "t_rational_5_by_1",
1497
+ "typeString": "int_const 5"
1498
+ },
1499
+ "value": "5"
1500
+ },
1501
+ "isConstant": false,
1502
+ "isLValue": false,
1503
+ "isPure": false,
1504
+ "lValueRequested": false,
1505
+ "nodeType": "IndexAccess",
1506
+ "src": "3192:9:47",
1507
+ "typeDescriptions": {
1508
+ "typeIdentifier": "t_bytes1",
1509
+ "typeString": "bytes1"
1510
+ }
1511
+ }
1512
+ ],
1513
+ "expression": {
1514
+ "argumentTypes": [
1515
+ {
1516
+ "typeIdentifier": "t_bytes1",
1517
+ "typeString": "bytes1"
1518
+ }
1519
+ ],
1520
+ "id": 20494,
1521
+ "isConstant": false,
1522
+ "isLValue": false,
1523
+ "isPure": true,
1524
+ "lValueRequested": false,
1525
+ "nodeType": "ElementaryTypeNameExpression",
1526
+ "src": "3186:5:47",
1527
+ "typeDescriptions": {
1528
+ "typeIdentifier": "t_type$_t_uint8_$",
1529
+ "typeString": "type(uint8)"
1530
+ },
1531
+ "typeName": {
1532
+ "id": 20493,
1533
+ "name": "uint8",
1534
+ "nodeType": "ElementaryTypeName",
1535
+ "src": "3186:5:47",
1536
+ "typeDescriptions": {}
1537
+ }
1538
+ },
1539
+ "id": 20498,
1540
+ "isConstant": false,
1541
+ "isLValue": false,
1542
+ "isPure": false,
1543
+ "kind": "typeConversion",
1544
+ "lValueRequested": false,
1545
+ "nameLocations": [],
1546
+ "names": [],
1547
+ "nodeType": "FunctionCall",
1548
+ "src": "3186:16:47",
1549
+ "tryCall": false,
1550
+ "typeDescriptions": {
1551
+ "typeIdentifier": "t_uint8",
1552
+ "typeString": "uint8"
1553
+ }
1554
+ }
1555
+ ],
1556
+ "expression": {
1557
+ "argumentTypes": [
1558
+ {
1559
+ "typeIdentifier": "t_uint8",
1560
+ "typeString": "uint8"
1561
+ }
1562
+ ],
1563
+ "id": 20492,
1564
+ "name": "TEEType",
1565
+ "nodeType": "Identifier",
1566
+ "overloadedDeclarations": [],
1567
+ "referencedDeclaration": 20424,
1568
+ "src": "3178:7:47",
1569
+ "typeDescriptions": {
1570
+ "typeIdentifier": "t_type$_t_enum$_TEEType_$20424_$",
1571
+ "typeString": "type(enum TEEType)"
1572
+ }
1573
+ },
1574
+ "id": 20499,
1575
+ "isConstant": false,
1576
+ "isLValue": false,
1577
+ "isPure": false,
1578
+ "kind": "typeConversion",
1579
+ "lValueRequested": false,
1580
+ "nameLocations": [],
1581
+ "names": [],
1582
+ "nodeType": "FunctionCall",
1583
+ "src": "3178:25:47",
1584
+ "tryCall": false,
1585
+ "typeDescriptions": {
1586
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1587
+ "typeString": "enum TEEType"
1588
+ }
1589
+ },
1590
+ "functionReturnParameters": 20491,
1591
+ "id": 20500,
1592
+ "nodeType": "Return",
1593
+ "src": "3171:32:47"
1594
+ }
1595
+ ]
1596
+ },
1597
+ "documentation": {
1598
+ "id": 20484,
1599
+ "nodeType": "StructuredDocumentation",
1600
+ "src": "2863:229:47",
1601
+ "text": " @notice Extracts the TEE type from a handle.\n The type is stored at byte position 5 in the handle.\n @param handle The handle to extract the type from\n @return The TEEType encoded in the handle"
1602
+ },
1603
+ "id": 20502,
1604
+ "implemented": true,
1605
+ "kind": "function",
1606
+ "modifiers": [],
1607
+ "name": "typeOf",
1608
+ "nameLocation": "3106:6:47",
1609
+ "nodeType": "FunctionDefinition",
1610
+ "parameters": {
1611
+ "id": 20487,
1612
+ "nodeType": "ParameterList",
1613
+ "parameters": [
1614
+ {
1615
+ "constant": false,
1616
+ "id": 20486,
1617
+ "mutability": "mutable",
1618
+ "name": "handle",
1619
+ "nameLocation": "3121:6:47",
1620
+ "nodeType": "VariableDeclaration",
1621
+ "scope": 20502,
1622
+ "src": "3113:14:47",
1623
+ "stateVariable": false,
1624
+ "storageLocation": "default",
1625
+ "typeDescriptions": {
1626
+ "typeIdentifier": "t_bytes32",
1627
+ "typeString": "bytes32"
1628
+ },
1629
+ "typeName": {
1630
+ "id": 20485,
1631
+ "name": "bytes32",
1632
+ "nodeType": "ElementaryTypeName",
1633
+ "src": "3113:7:47",
1634
+ "typeDescriptions": {
1635
+ "typeIdentifier": "t_bytes32",
1636
+ "typeString": "bytes32"
1637
+ }
1638
+ },
1639
+ "visibility": "internal"
1640
+ }
1641
+ ],
1642
+ "src": "3112:16:47"
1643
+ },
1644
+ "returnParameters": {
1645
+ "id": 20491,
1646
+ "nodeType": "ParameterList",
1647
+ "parameters": [
1648
+ {
1649
+ "constant": false,
1650
+ "id": 20490,
1651
+ "mutability": "mutable",
1652
+ "name": "",
1653
+ "nameLocation": "-1:-1:-1",
1654
+ "nodeType": "VariableDeclaration",
1655
+ "scope": 20502,
1656
+ "src": "3152:7:47",
1657
+ "stateVariable": false,
1658
+ "storageLocation": "default",
1659
+ "typeDescriptions": {
1660
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1661
+ "typeString": "enum TEEType"
1662
+ },
1663
+ "typeName": {
1664
+ "id": 20489,
1665
+ "nodeType": "UserDefinedTypeName",
1666
+ "pathNode": {
1667
+ "id": 20488,
1668
+ "name": "TEEType",
1669
+ "nameLocations": [
1670
+ "3152:7:47"
1671
+ ],
1672
+ "nodeType": "IdentifierPath",
1673
+ "referencedDeclaration": 20424,
1674
+ "src": "3152:7:47"
1675
+ },
1676
+ "referencedDeclaration": 20424,
1677
+ "src": "3152:7:47",
1678
+ "typeDescriptions": {
1679
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1680
+ "typeString": "enum TEEType"
1681
+ }
1682
+ },
1683
+ "visibility": "internal"
1684
+ }
1685
+ ],
1686
+ "src": "3151:9:47"
1687
+ },
1688
+ "scope": 20631,
1689
+ "src": "3097:113:47",
1690
+ "stateMutability": "pure",
1691
+ "virtual": false,
1692
+ "visibility": "internal"
1693
+ },
1694
+ {
1695
+ "body": {
1696
+ "id": 20564,
1697
+ "nodeType": "Block",
1698
+ "src": "3716:400:47",
1699
+ "statements": [
1700
+ {
1701
+ "assignments": [
1702
+ 20510
1703
+ ],
1704
+ "declarations": [
1705
+ {
1706
+ "constant": false,
1707
+ "id": 20510,
1708
+ "mutability": "mutable",
1709
+ "name": "t",
1710
+ "nameLocation": "3732:1:47",
1711
+ "nodeType": "VariableDeclaration",
1712
+ "scope": 20564,
1713
+ "src": "3726:7:47",
1714
+ "stateVariable": false,
1715
+ "storageLocation": "default",
1716
+ "typeDescriptions": {
1717
+ "typeIdentifier": "t_uint8",
1718
+ "typeString": "uint8"
1719
+ },
1720
+ "typeName": {
1721
+ "id": 20509,
1722
+ "name": "uint8",
1723
+ "nodeType": "ElementaryTypeName",
1724
+ "src": "3726:5:47",
1725
+ "typeDescriptions": {
1726
+ "typeIdentifier": "t_uint8",
1727
+ "typeString": "uint8"
1728
+ }
1729
+ },
1730
+ "visibility": "internal"
1731
+ }
1732
+ ],
1733
+ "id": 20515,
1734
+ "initialValue": {
1735
+ "arguments": [
1736
+ {
1737
+ "id": 20513,
1738
+ "name": "teeType",
1739
+ "nodeType": "Identifier",
1740
+ "overloadedDeclarations": [],
1741
+ "referencedDeclaration": 20506,
1742
+ "src": "3742:7:47",
1743
+ "typeDescriptions": {
1744
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1745
+ "typeString": "enum TEEType"
1746
+ }
1747
+ }
1748
+ ],
1749
+ "expression": {
1750
+ "argumentTypes": [
1751
+ {
1752
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1753
+ "typeString": "enum TEEType"
1754
+ }
1755
+ ],
1756
+ "id": 20512,
1757
+ "isConstant": false,
1758
+ "isLValue": false,
1759
+ "isPure": true,
1760
+ "lValueRequested": false,
1761
+ "nodeType": "ElementaryTypeNameExpression",
1762
+ "src": "3736:5:47",
1763
+ "typeDescriptions": {
1764
+ "typeIdentifier": "t_type$_t_uint8_$",
1765
+ "typeString": "type(uint8)"
1766
+ },
1767
+ "typeName": {
1768
+ "id": 20511,
1769
+ "name": "uint8",
1770
+ "nodeType": "ElementaryTypeName",
1771
+ "src": "3736:5:47",
1772
+ "typeDescriptions": {}
1773
+ }
1774
+ },
1775
+ "id": 20514,
1776
+ "isConstant": false,
1777
+ "isLValue": false,
1778
+ "isPure": false,
1779
+ "kind": "typeConversion",
1780
+ "lValueRequested": false,
1781
+ "nameLocations": [],
1782
+ "names": [],
1783
+ "nodeType": "FunctionCall",
1784
+ "src": "3736:14:47",
1785
+ "tryCall": false,
1786
+ "typeDescriptions": {
1787
+ "typeIdentifier": "t_uint8",
1788
+ "typeString": "uint8"
1789
+ }
1790
+ },
1791
+ "nodeType": "VariableDeclarationStatement",
1792
+ "src": "3726:24:47"
1793
+ },
1794
+ {
1795
+ "expression": {
1796
+ "arguments": [
1797
+ {
1798
+ "commonType": {
1799
+ "typeIdentifier": "t_bool",
1800
+ "typeString": "bool"
1801
+ },
1802
+ "id": 20531,
1803
+ "isConstant": false,
1804
+ "isLValue": false,
1805
+ "isPure": false,
1806
+ "lValueRequested": false,
1807
+ "leftExpression": {
1808
+ "commonType": {
1809
+ "typeIdentifier": "t_uint8",
1810
+ "typeString": "uint8"
1811
+ },
1812
+ "id": 20523,
1813
+ "isConstant": false,
1814
+ "isLValue": false,
1815
+ "isPure": false,
1816
+ "lValueRequested": false,
1817
+ "leftExpression": {
1818
+ "id": 20517,
1819
+ "name": "t",
1820
+ "nodeType": "Identifier",
1821
+ "overloadedDeclarations": [],
1822
+ "referencedDeclaration": 20510,
1823
+ "src": "3768:1:47",
1824
+ "typeDescriptions": {
1825
+ "typeIdentifier": "t_uint8",
1826
+ "typeString": "uint8"
1827
+ }
1828
+ },
1829
+ "nodeType": "BinaryOperation",
1830
+ "operator": ">=",
1831
+ "rightExpression": {
1832
+ "arguments": [
1833
+ {
1834
+ "expression": {
1835
+ "id": 20520,
1836
+ "name": "TEEType",
1837
+ "nodeType": "Identifier",
1838
+ "overloadedDeclarations": [],
1839
+ "referencedDeclaration": 20424,
1840
+ "src": "3779:7:47",
1841
+ "typeDescriptions": {
1842
+ "typeIdentifier": "t_type$_t_enum$_TEEType_$20424_$",
1843
+ "typeString": "type(enum TEEType)"
1844
+ }
1845
+ },
1846
+ "id": 20521,
1847
+ "isConstant": false,
1848
+ "isLValue": false,
1849
+ "isPure": true,
1850
+ "lValueRequested": false,
1851
+ "memberLocation": "3787:5:47",
1852
+ "memberName": "Uint8",
1853
+ "nodeType": "MemberAccess",
1854
+ "referencedDeclaration": 20328,
1855
+ "src": "3779:13:47",
1856
+ "typeDescriptions": {
1857
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1858
+ "typeString": "enum TEEType"
1859
+ }
1860
+ }
1861
+ ],
1862
+ "expression": {
1863
+ "argumentTypes": [
1864
+ {
1865
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1866
+ "typeString": "enum TEEType"
1867
+ }
1868
+ ],
1869
+ "id": 20519,
1870
+ "isConstant": false,
1871
+ "isLValue": false,
1872
+ "isPure": true,
1873
+ "lValueRequested": false,
1874
+ "nodeType": "ElementaryTypeNameExpression",
1875
+ "src": "3773:5:47",
1876
+ "typeDescriptions": {
1877
+ "typeIdentifier": "t_type$_t_uint8_$",
1878
+ "typeString": "type(uint8)"
1879
+ },
1880
+ "typeName": {
1881
+ "id": 20518,
1882
+ "name": "uint8",
1883
+ "nodeType": "ElementaryTypeName",
1884
+ "src": "3773:5:47",
1885
+ "typeDescriptions": {}
1886
+ }
1887
+ },
1888
+ "id": 20522,
1889
+ "isConstant": false,
1890
+ "isLValue": false,
1891
+ "isPure": true,
1892
+ "kind": "typeConversion",
1893
+ "lValueRequested": false,
1894
+ "nameLocations": [],
1895
+ "names": [],
1896
+ "nodeType": "FunctionCall",
1897
+ "src": "3773:20:47",
1898
+ "tryCall": false,
1899
+ "typeDescriptions": {
1900
+ "typeIdentifier": "t_uint8",
1901
+ "typeString": "uint8"
1902
+ }
1903
+ },
1904
+ "src": "3768:25:47",
1905
+ "typeDescriptions": {
1906
+ "typeIdentifier": "t_bool",
1907
+ "typeString": "bool"
1908
+ }
1909
+ },
1910
+ "nodeType": "BinaryOperation",
1911
+ "operator": "&&",
1912
+ "rightExpression": {
1913
+ "commonType": {
1914
+ "typeIdentifier": "t_uint8",
1915
+ "typeString": "uint8"
1916
+ },
1917
+ "id": 20530,
1918
+ "isConstant": false,
1919
+ "isLValue": false,
1920
+ "isPure": false,
1921
+ "lValueRequested": false,
1922
+ "leftExpression": {
1923
+ "id": 20524,
1924
+ "name": "t",
1925
+ "nodeType": "Identifier",
1926
+ "overloadedDeclarations": [],
1927
+ "referencedDeclaration": 20510,
1928
+ "src": "3797:1:47",
1929
+ "typeDescriptions": {
1930
+ "typeIdentifier": "t_uint8",
1931
+ "typeString": "uint8"
1932
+ }
1933
+ },
1934
+ "nodeType": "BinaryOperation",
1935
+ "operator": "<=",
1936
+ "rightExpression": {
1937
+ "arguments": [
1938
+ {
1939
+ "expression": {
1940
+ "id": 20527,
1941
+ "name": "TEEType",
1942
+ "nodeType": "Identifier",
1943
+ "overloadedDeclarations": [],
1944
+ "referencedDeclaration": 20424,
1945
+ "src": "3808:7:47",
1946
+ "typeDescriptions": {
1947
+ "typeIdentifier": "t_type$_t_enum$_TEEType_$20424_$",
1948
+ "typeString": "type(enum TEEType)"
1949
+ }
1950
+ },
1951
+ "id": 20528,
1952
+ "isConstant": false,
1953
+ "isLValue": false,
1954
+ "isPure": true,
1955
+ "lValueRequested": false,
1956
+ "memberLocation": "3816:6:47",
1957
+ "memberName": "Int256",
1958
+ "nodeType": "MemberAccess",
1959
+ "referencedDeclaration": 20391,
1960
+ "src": "3808:14:47",
1961
+ "typeDescriptions": {
1962
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1963
+ "typeString": "enum TEEType"
1964
+ }
1965
+ }
1966
+ ],
1967
+ "expression": {
1968
+ "argumentTypes": [
1969
+ {
1970
+ "typeIdentifier": "t_enum$_TEEType_$20424",
1971
+ "typeString": "enum TEEType"
1972
+ }
1973
+ ],
1974
+ "id": 20526,
1975
+ "isConstant": false,
1976
+ "isLValue": false,
1977
+ "isPure": true,
1978
+ "lValueRequested": false,
1979
+ "nodeType": "ElementaryTypeNameExpression",
1980
+ "src": "3802:5:47",
1981
+ "typeDescriptions": {
1982
+ "typeIdentifier": "t_type$_t_uint8_$",
1983
+ "typeString": "type(uint8)"
1984
+ },
1985
+ "typeName": {
1986
+ "id": 20525,
1987
+ "name": "uint8",
1988
+ "nodeType": "ElementaryTypeName",
1989
+ "src": "3802:5:47",
1990
+ "typeDescriptions": {}
1991
+ }
1992
+ },
1993
+ "id": 20529,
1994
+ "isConstant": false,
1995
+ "isLValue": false,
1996
+ "isPure": true,
1997
+ "kind": "typeConversion",
1998
+ "lValueRequested": false,
1999
+ "nameLocations": [],
2000
+ "names": [],
2001
+ "nodeType": "FunctionCall",
2002
+ "src": "3802:21:47",
2003
+ "tryCall": false,
2004
+ "typeDescriptions": {
2005
+ "typeIdentifier": "t_uint8",
2006
+ "typeString": "uint8"
2007
+ }
2008
+ },
2009
+ "src": "3797:26:47",
2010
+ "typeDescriptions": {
2011
+ "typeIdentifier": "t_bool",
2012
+ "typeString": "bool"
2013
+ }
2014
+ },
2015
+ "src": "3768:55:47",
2016
+ "typeDescriptions": {
2017
+ "typeIdentifier": "t_bool",
2018
+ "typeString": "bool"
2019
+ }
2020
+ },
2021
+ {
2022
+ "arguments": [],
2023
+ "expression": {
2024
+ "argumentTypes": [],
2025
+ "id": 20532,
2026
+ "name": "NonArithmeticType",
2027
+ "nodeType": "Identifier",
2028
+ "overloadedDeclarations": [],
2029
+ "referencedDeclaration": 20426,
2030
+ "src": "3825:17:47",
2031
+ "typeDescriptions": {
2032
+ "typeIdentifier": "t_function_error_pure$__$returns$_t_error_$",
2033
+ "typeString": "function () pure returns (error)"
2034
+ }
2035
+ },
2036
+ "id": 20533,
2037
+ "isConstant": false,
2038
+ "isLValue": false,
2039
+ "isPure": false,
2040
+ "kind": "functionCall",
2041
+ "lValueRequested": false,
2042
+ "nameLocations": [],
2043
+ "names": [],
2044
+ "nodeType": "FunctionCall",
2045
+ "src": "3825:19:47",
2046
+ "tryCall": false,
2047
+ "typeDescriptions": {
2048
+ "typeIdentifier": "t_error",
2049
+ "typeString": "error"
2050
+ }
2051
+ }
2052
+ ],
2053
+ "expression": {
2054
+ "argumentTypes": [
2055
+ {
2056
+ "typeIdentifier": "t_bool",
2057
+ "typeString": "bool"
2058
+ },
2059
+ {
2060
+ "typeIdentifier": "t_error",
2061
+ "typeString": "error"
2062
+ }
2063
+ ],
2064
+ "id": 20516,
2065
+ "name": "require",
2066
+ "nodeType": "Identifier",
2067
+ "overloadedDeclarations": [
2068
+ -18,
2069
+ -18,
2070
+ -18
2071
+ ],
2072
+ "referencedDeclaration": -18,
2073
+ "src": "3760:7:47",
2074
+ "typeDescriptions": {
2075
+ "typeIdentifier": "t_function_require_pure$_t_bool_$_t_error_$returns$__$",
2076
+ "typeString": "function (bool,error) pure"
2077
+ }
2078
+ },
2079
+ "id": 20534,
2080
+ "isConstant": false,
2081
+ "isLValue": false,
2082
+ "isPure": false,
2083
+ "kind": "functionCall",
2084
+ "lValueRequested": false,
2085
+ "nameLocations": [],
2086
+ "names": [],
2087
+ "nodeType": "FunctionCall",
2088
+ "src": "3760:85:47",
2089
+ "tryCall": false,
2090
+ "typeDescriptions": {
2091
+ "typeIdentifier": "t_tuple$__$",
2092
+ "typeString": "tuple()"
2093
+ }
2094
+ },
2095
+ "id": 20535,
2096
+ "nodeType": "ExpressionStatement",
2097
+ "src": "3760:85:47"
2098
+ },
2099
+ {
2100
+ "assignments": [
2101
+ 20537
2102
+ ],
2103
+ "declarations": [
2104
+ {
2105
+ "constant": false,
2106
+ "id": 20537,
2107
+ "mutability": "mutable",
2108
+ "name": "supportedType",
2109
+ "nameLocation": "3860:13:47",
2110
+ "nodeType": "VariableDeclaration",
2111
+ "scope": 20564,
2112
+ "src": "3855:18:47",
2113
+ "stateVariable": false,
2114
+ "storageLocation": "default",
2115
+ "typeDescriptions": {
2116
+ "typeIdentifier": "t_bool",
2117
+ "typeString": "bool"
2118
+ },
2119
+ "typeName": {
2120
+ "id": 20536,
2121
+ "name": "bool",
2122
+ "nodeType": "ElementaryTypeName",
2123
+ "src": "3855:4:47",
2124
+ "typeDescriptions": {
2125
+ "typeIdentifier": "t_bool",
2126
+ "typeString": "bool"
2127
+ }
2128
+ },
2129
+ "visibility": "internal"
2130
+ }
2131
+ ],
2132
+ "id": 20557,
2133
+ "initialValue": {
2134
+ "commonType": {
2135
+ "typeIdentifier": "t_bool",
2136
+ "typeString": "bool"
2137
+ },
2138
+ "id": 20556,
2139
+ "isConstant": false,
2140
+ "isLValue": false,
2141
+ "isPure": false,
2142
+ "lValueRequested": false,
2143
+ "leftExpression": {
2144
+ "commonType": {
2145
+ "typeIdentifier": "t_bool",
2146
+ "typeString": "bool"
2147
+ },
2148
+ "id": 20551,
2149
+ "isConstant": false,
2150
+ "isLValue": false,
2151
+ "isPure": false,
2152
+ "lValueRequested": false,
2153
+ "leftExpression": {
2154
+ "commonType": {
2155
+ "typeIdentifier": "t_bool",
2156
+ "typeString": "bool"
2157
+ },
2158
+ "id": 20546,
2159
+ "isConstant": false,
2160
+ "isLValue": false,
2161
+ "isPure": false,
2162
+ "lValueRequested": false,
2163
+ "leftExpression": {
2164
+ "commonType": {
2165
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2166
+ "typeString": "enum TEEType"
2167
+ },
2168
+ "id": 20541,
2169
+ "isConstant": false,
2170
+ "isLValue": false,
2171
+ "isPure": false,
2172
+ "lValueRequested": false,
2173
+ "leftExpression": {
2174
+ "id": 20538,
2175
+ "name": "teeType",
2176
+ "nodeType": "Identifier",
2177
+ "overloadedDeclarations": [],
2178
+ "referencedDeclaration": 20506,
2179
+ "src": "3888:7:47",
2180
+ "typeDescriptions": {
2181
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2182
+ "typeString": "enum TEEType"
2183
+ }
2184
+ },
2185
+ "nodeType": "BinaryOperation",
2186
+ "operator": "==",
2187
+ "rightExpression": {
2188
+ "expression": {
2189
+ "id": 20539,
2190
+ "name": "TEEType",
2191
+ "nodeType": "Identifier",
2192
+ "overloadedDeclarations": [],
2193
+ "referencedDeclaration": 20424,
2194
+ "src": "3899:7:47",
2195
+ "typeDescriptions": {
2196
+ "typeIdentifier": "t_type$_t_enum$_TEEType_$20424_$",
2197
+ "typeString": "type(enum TEEType)"
2198
+ }
2199
+ },
2200
+ "id": 20540,
2201
+ "isConstant": false,
2202
+ "isLValue": false,
2203
+ "isPure": true,
2204
+ "lValueRequested": false,
2205
+ "memberLocation": "3907:6:47",
2206
+ "memberName": "Uint16",
2207
+ "nodeType": "MemberAccess",
2208
+ "referencedDeclaration": 20329,
2209
+ "src": "3899:14:47",
2210
+ "typeDescriptions": {
2211
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2212
+ "typeString": "enum TEEType"
2213
+ }
2214
+ },
2215
+ "src": "3888:25:47",
2216
+ "typeDescriptions": {
2217
+ "typeIdentifier": "t_bool",
2218
+ "typeString": "bool"
2219
+ }
2220
+ },
2221
+ "nodeType": "BinaryOperation",
2222
+ "operator": "||",
2223
+ "rightExpression": {
2224
+ "commonType": {
2225
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2226
+ "typeString": "enum TEEType"
2227
+ },
2228
+ "id": 20545,
2229
+ "isConstant": false,
2230
+ "isLValue": false,
2231
+ "isPure": false,
2232
+ "lValueRequested": false,
2233
+ "leftExpression": {
2234
+ "id": 20542,
2235
+ "name": "teeType",
2236
+ "nodeType": "Identifier",
2237
+ "overloadedDeclarations": [],
2238
+ "referencedDeclaration": 20506,
2239
+ "src": "3933:7:47",
2240
+ "typeDescriptions": {
2241
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2242
+ "typeString": "enum TEEType"
2243
+ }
2244
+ },
2245
+ "nodeType": "BinaryOperation",
2246
+ "operator": "==",
2247
+ "rightExpression": {
2248
+ "expression": {
2249
+ "id": 20543,
2250
+ "name": "TEEType",
2251
+ "nodeType": "Identifier",
2252
+ "overloadedDeclarations": [],
2253
+ "referencedDeclaration": 20424,
2254
+ "src": "3944:7:47",
2255
+ "typeDescriptions": {
2256
+ "typeIdentifier": "t_type$_t_enum$_TEEType_$20424_$",
2257
+ "typeString": "type(enum TEEType)"
2258
+ }
2259
+ },
2260
+ "id": 20544,
2261
+ "isConstant": false,
2262
+ "isLValue": false,
2263
+ "isPure": true,
2264
+ "lValueRequested": false,
2265
+ "memberLocation": "3952:7:47",
2266
+ "memberName": "Uint256",
2267
+ "nodeType": "MemberAccess",
2268
+ "referencedDeclaration": 20359,
2269
+ "src": "3944:15:47",
2270
+ "typeDescriptions": {
2271
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2272
+ "typeString": "enum TEEType"
2273
+ }
2274
+ },
2275
+ "src": "3933:26:47",
2276
+ "typeDescriptions": {
2277
+ "typeIdentifier": "t_bool",
2278
+ "typeString": "bool"
2279
+ }
2280
+ },
2281
+ "src": "3888:71:47",
2282
+ "typeDescriptions": {
2283
+ "typeIdentifier": "t_bool",
2284
+ "typeString": "bool"
2285
+ }
2286
+ },
2287
+ "nodeType": "BinaryOperation",
2288
+ "operator": "||",
2289
+ "rightExpression": {
2290
+ "commonType": {
2291
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2292
+ "typeString": "enum TEEType"
2293
+ },
2294
+ "id": 20550,
2295
+ "isConstant": false,
2296
+ "isLValue": false,
2297
+ "isPure": false,
2298
+ "lValueRequested": false,
2299
+ "leftExpression": {
2300
+ "id": 20547,
2301
+ "name": "teeType",
2302
+ "nodeType": "Identifier",
2303
+ "overloadedDeclarations": [],
2304
+ "referencedDeclaration": 20506,
2305
+ "src": "3979:7:47",
2306
+ "typeDescriptions": {
2307
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2308
+ "typeString": "enum TEEType"
2309
+ }
2310
+ },
2311
+ "nodeType": "BinaryOperation",
2312
+ "operator": "==",
2313
+ "rightExpression": {
2314
+ "expression": {
2315
+ "id": 20548,
2316
+ "name": "TEEType",
2317
+ "nodeType": "Identifier",
2318
+ "overloadedDeclarations": [],
2319
+ "referencedDeclaration": 20424,
2320
+ "src": "3990:7:47",
2321
+ "typeDescriptions": {
2322
+ "typeIdentifier": "t_type$_t_enum$_TEEType_$20424_$",
2323
+ "typeString": "type(enum TEEType)"
2324
+ }
2325
+ },
2326
+ "id": 20549,
2327
+ "isConstant": false,
2328
+ "isLValue": false,
2329
+ "isPure": true,
2330
+ "lValueRequested": false,
2331
+ "memberLocation": "3998:5:47",
2332
+ "memberName": "Int16",
2333
+ "nodeType": "MemberAccess",
2334
+ "referencedDeclaration": 20361,
2335
+ "src": "3990:13:47",
2336
+ "typeDescriptions": {
2337
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2338
+ "typeString": "enum TEEType"
2339
+ }
2340
+ },
2341
+ "src": "3979:24:47",
2342
+ "typeDescriptions": {
2343
+ "typeIdentifier": "t_bool",
2344
+ "typeString": "bool"
2345
+ }
2346
+ },
2347
+ "src": "3888:115:47",
2348
+ "typeDescriptions": {
2349
+ "typeIdentifier": "t_bool",
2350
+ "typeString": "bool"
2351
+ }
2352
+ },
2353
+ "nodeType": "BinaryOperation",
2354
+ "operator": "||",
2355
+ "rightExpression": {
2356
+ "commonType": {
2357
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2358
+ "typeString": "enum TEEType"
2359
+ },
2360
+ "id": 20555,
2361
+ "isConstant": false,
2362
+ "isLValue": false,
2363
+ "isPure": false,
2364
+ "lValueRequested": false,
2365
+ "leftExpression": {
2366
+ "id": 20552,
2367
+ "name": "teeType",
2368
+ "nodeType": "Identifier",
2369
+ "overloadedDeclarations": [],
2370
+ "referencedDeclaration": 20506,
2371
+ "src": "4023:7:47",
2372
+ "typeDescriptions": {
2373
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2374
+ "typeString": "enum TEEType"
2375
+ }
2376
+ },
2377
+ "nodeType": "BinaryOperation",
2378
+ "operator": "==",
2379
+ "rightExpression": {
2380
+ "expression": {
2381
+ "id": 20553,
2382
+ "name": "TEEType",
2383
+ "nodeType": "Identifier",
2384
+ "overloadedDeclarations": [],
2385
+ "referencedDeclaration": 20424,
2386
+ "src": "4034:7:47",
2387
+ "typeDescriptions": {
2388
+ "typeIdentifier": "t_type$_t_enum$_TEEType_$20424_$",
2389
+ "typeString": "type(enum TEEType)"
2390
+ }
2391
+ },
2392
+ "id": 20554,
2393
+ "isConstant": false,
2394
+ "isLValue": false,
2395
+ "isPure": true,
2396
+ "lValueRequested": false,
2397
+ "memberLocation": "4042:6:47",
2398
+ "memberName": "Int256",
2399
+ "nodeType": "MemberAccess",
2400
+ "referencedDeclaration": 20391,
2401
+ "src": "4034:14:47",
2402
+ "typeDescriptions": {
2403
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2404
+ "typeString": "enum TEEType"
2405
+ }
2406
+ },
2407
+ "src": "4023:25:47",
2408
+ "typeDescriptions": {
2409
+ "typeIdentifier": "t_bool",
2410
+ "typeString": "bool"
2411
+ }
2412
+ },
2413
+ "src": "3888:160:47",
2414
+ "typeDescriptions": {
2415
+ "typeIdentifier": "t_bool",
2416
+ "typeString": "bool"
2417
+ }
2418
+ },
2419
+ "nodeType": "VariableDeclarationStatement",
2420
+ "src": "3855:193:47"
2421
+ },
2422
+ {
2423
+ "expression": {
2424
+ "arguments": [
2425
+ {
2426
+ "id": 20559,
2427
+ "name": "supportedType",
2428
+ "nodeType": "Identifier",
2429
+ "overloadedDeclarations": [],
2430
+ "referencedDeclaration": 20537,
2431
+ "src": "4066:13:47",
2432
+ "typeDescriptions": {
2433
+ "typeIdentifier": "t_bool",
2434
+ "typeString": "bool"
2435
+ }
2436
+ },
2437
+ {
2438
+ "arguments": [],
2439
+ "expression": {
2440
+ "argumentTypes": [],
2441
+ "id": 20560,
2442
+ "name": "UnsupportedArithmeticType",
2443
+ "nodeType": "Identifier",
2444
+ "overloadedDeclarations": [],
2445
+ "referencedDeclaration": 20428,
2446
+ "src": "4081:25:47",
2447
+ "typeDescriptions": {
2448
+ "typeIdentifier": "t_function_error_pure$__$returns$_t_error_$",
2449
+ "typeString": "function () pure returns (error)"
2450
+ }
2451
+ },
2452
+ "id": 20561,
2453
+ "isConstant": false,
2454
+ "isLValue": false,
2455
+ "isPure": false,
2456
+ "kind": "functionCall",
2457
+ "lValueRequested": false,
2458
+ "nameLocations": [],
2459
+ "names": [],
2460
+ "nodeType": "FunctionCall",
2461
+ "src": "4081:27:47",
2462
+ "tryCall": false,
2463
+ "typeDescriptions": {
2464
+ "typeIdentifier": "t_error",
2465
+ "typeString": "error"
2466
+ }
2467
+ }
2468
+ ],
2469
+ "expression": {
2470
+ "argumentTypes": [
2471
+ {
2472
+ "typeIdentifier": "t_bool",
2473
+ "typeString": "bool"
2474
+ },
2475
+ {
2476
+ "typeIdentifier": "t_error",
2477
+ "typeString": "error"
2478
+ }
2479
+ ],
2480
+ "id": 20558,
2481
+ "name": "require",
2482
+ "nodeType": "Identifier",
2483
+ "overloadedDeclarations": [
2484
+ -18,
2485
+ -18,
2486
+ -18
2487
+ ],
2488
+ "referencedDeclaration": -18,
2489
+ "src": "4058:7:47",
2490
+ "typeDescriptions": {
2491
+ "typeIdentifier": "t_function_require_pure$_t_bool_$_t_error_$returns$__$",
2492
+ "typeString": "function (bool,error) pure"
2493
+ }
2494
+ },
2495
+ "id": 20562,
2496
+ "isConstant": false,
2497
+ "isLValue": false,
2498
+ "isPure": false,
2499
+ "kind": "functionCall",
2500
+ "lValueRequested": false,
2501
+ "nameLocations": [],
2502
+ "names": [],
2503
+ "nodeType": "FunctionCall",
2504
+ "src": "4058:51:47",
2505
+ "tryCall": false,
2506
+ "typeDescriptions": {
2507
+ "typeIdentifier": "t_tuple$__$",
2508
+ "typeString": "tuple()"
2509
+ }
2510
+ },
2511
+ "id": 20563,
2512
+ "nodeType": "ExpressionStatement",
2513
+ "src": "4058:51:47"
2514
+ }
2515
+ ]
2516
+ },
2517
+ "documentation": {
2518
+ "id": 20503,
2519
+ "nodeType": "StructuredDocumentation",
2520
+ "src": "3216:432:47",
2521
+ "text": " @notice Validates that a TEE type is supported for arithmetic operations.\n Only the following arithmetic types are supported:\n - uint16\n - uint256\n - int16\n - int256\n @param teeType The TEE type to validate\n @dev Reverts with NonArithmeticType when the type is not an arithmetic type.\n @dev Reverts with UnsupportedArithmeticType when the type is not supported."
2522
+ },
2523
+ "id": 20565,
2524
+ "implemented": true,
2525
+ "kind": "function",
2526
+ "modifiers": [],
2527
+ "name": "validateArithmeticType",
2528
+ "nameLocation": "3662:22:47",
2529
+ "nodeType": "FunctionDefinition",
2530
+ "parameters": {
2531
+ "id": 20507,
2532
+ "nodeType": "ParameterList",
2533
+ "parameters": [
2534
+ {
2535
+ "constant": false,
2536
+ "id": 20506,
2537
+ "mutability": "mutable",
2538
+ "name": "teeType",
2539
+ "nameLocation": "3693:7:47",
2540
+ "nodeType": "VariableDeclaration",
2541
+ "scope": 20565,
2542
+ "src": "3685:15:47",
2543
+ "stateVariable": false,
2544
+ "storageLocation": "default",
2545
+ "typeDescriptions": {
2546
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2547
+ "typeString": "enum TEEType"
2548
+ },
2549
+ "typeName": {
2550
+ "id": 20505,
2551
+ "nodeType": "UserDefinedTypeName",
2552
+ "pathNode": {
2553
+ "id": 20504,
2554
+ "name": "TEEType",
2555
+ "nameLocations": [
2556
+ "3685:7:47"
2557
+ ],
2558
+ "nodeType": "IdentifierPath",
2559
+ "referencedDeclaration": 20424,
2560
+ "src": "3685:7:47"
2561
+ },
2562
+ "referencedDeclaration": 20424,
2563
+ "src": "3685:7:47",
2564
+ "typeDescriptions": {
2565
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2566
+ "typeString": "enum TEEType"
2567
+ }
2568
+ },
2569
+ "visibility": "internal"
2570
+ }
2571
+ ],
2572
+ "src": "3684:17:47"
2573
+ },
2574
+ "returnParameters": {
2575
+ "id": 20508,
2576
+ "nodeType": "ParameterList",
2577
+ "parameters": [],
2578
+ "src": "3716:0:47"
2579
+ },
2580
+ "scope": 20631,
2581
+ "src": "3653:463:47",
2582
+ "stateMutability": "pure",
2583
+ "virtual": false,
2584
+ "visibility": "internal"
2585
+ },
2586
+ {
2587
+ "body": {
2588
+ "id": 20584,
2589
+ "nodeType": "Block",
2590
+ "src": "4275:73:47",
2591
+ "statements": [
2592
+ {
2593
+ "expression": {
2594
+ "arguments": [
2595
+ {
2596
+ "commonType": {
2597
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2598
+ "typeString": "enum TEEType"
2599
+ },
2600
+ "id": 20579,
2601
+ "isConstant": false,
2602
+ "isLValue": false,
2603
+ "isPure": false,
2604
+ "lValueRequested": false,
2605
+ "leftExpression": {
2606
+ "arguments": [
2607
+ {
2608
+ "id": 20576,
2609
+ "name": "handle",
2610
+ "nodeType": "Identifier",
2611
+ "overloadedDeclarations": [],
2612
+ "referencedDeclaration": 20568,
2613
+ "src": "4300:6:47",
2614
+ "typeDescriptions": {
2615
+ "typeIdentifier": "t_bytes32",
2616
+ "typeString": "bytes32"
2617
+ }
2618
+ }
2619
+ ],
2620
+ "expression": {
2621
+ "argumentTypes": [
2622
+ {
2623
+ "typeIdentifier": "t_bytes32",
2624
+ "typeString": "bytes32"
2625
+ }
2626
+ ],
2627
+ "id": 20575,
2628
+ "name": "typeOf",
2629
+ "nodeType": "Identifier",
2630
+ "overloadedDeclarations": [],
2631
+ "referencedDeclaration": 20502,
2632
+ "src": "4293:6:47",
2633
+ "typeDescriptions": {
2634
+ "typeIdentifier": "t_function_internal_pure$_t_bytes32_$returns$_t_enum$_TEEType_$20424_$",
2635
+ "typeString": "function (bytes32) pure returns (enum TEEType)"
2636
+ }
2637
+ },
2638
+ "id": 20577,
2639
+ "isConstant": false,
2640
+ "isLValue": false,
2641
+ "isPure": false,
2642
+ "kind": "functionCall",
2643
+ "lValueRequested": false,
2644
+ "nameLocations": [],
2645
+ "names": [],
2646
+ "nodeType": "FunctionCall",
2647
+ "src": "4293:14:47",
2648
+ "tryCall": false,
2649
+ "typeDescriptions": {
2650
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2651
+ "typeString": "enum TEEType"
2652
+ }
2653
+ },
2654
+ "nodeType": "BinaryOperation",
2655
+ "operator": "==",
2656
+ "rightExpression": {
2657
+ "id": 20578,
2658
+ "name": "expected",
2659
+ "nodeType": "Identifier",
2660
+ "overloadedDeclarations": [],
2661
+ "referencedDeclaration": 20571,
2662
+ "src": "4311:8:47",
2663
+ "typeDescriptions": {
2664
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2665
+ "typeString": "enum TEEType"
2666
+ }
2667
+ },
2668
+ "src": "4293:26:47",
2669
+ "typeDescriptions": {
2670
+ "typeIdentifier": "t_bool",
2671
+ "typeString": "bool"
2672
+ }
2673
+ },
2674
+ {
2675
+ "arguments": [],
2676
+ "expression": {
2677
+ "argumentTypes": [],
2678
+ "id": 20580,
2679
+ "name": "IncompatibleTypes",
2680
+ "nodeType": "Identifier",
2681
+ "overloadedDeclarations": [],
2682
+ "referencedDeclaration": 20430,
2683
+ "src": "4321:17:47",
2684
+ "typeDescriptions": {
2685
+ "typeIdentifier": "t_function_error_pure$__$returns$_t_error_$",
2686
+ "typeString": "function () pure returns (error)"
2687
+ }
2688
+ },
2689
+ "id": 20581,
2690
+ "isConstant": false,
2691
+ "isLValue": false,
2692
+ "isPure": false,
2693
+ "kind": "functionCall",
2694
+ "lValueRequested": false,
2695
+ "nameLocations": [],
2696
+ "names": [],
2697
+ "nodeType": "FunctionCall",
2698
+ "src": "4321:19:47",
2699
+ "tryCall": false,
2700
+ "typeDescriptions": {
2701
+ "typeIdentifier": "t_error",
2702
+ "typeString": "error"
2703
+ }
2704
+ }
2705
+ ],
2706
+ "expression": {
2707
+ "argumentTypes": [
2708
+ {
2709
+ "typeIdentifier": "t_bool",
2710
+ "typeString": "bool"
2711
+ },
2712
+ {
2713
+ "typeIdentifier": "t_error",
2714
+ "typeString": "error"
2715
+ }
2716
+ ],
2717
+ "id": 20574,
2718
+ "name": "require",
2719
+ "nodeType": "Identifier",
2720
+ "overloadedDeclarations": [
2721
+ -18,
2722
+ -18,
2723
+ -18
2724
+ ],
2725
+ "referencedDeclaration": -18,
2726
+ "src": "4285:7:47",
2727
+ "typeDescriptions": {
2728
+ "typeIdentifier": "t_function_require_pure$_t_bool_$_t_error_$returns$__$",
2729
+ "typeString": "function (bool,error) pure"
2730
+ }
2731
+ },
2732
+ "id": 20582,
2733
+ "isConstant": false,
2734
+ "isLValue": false,
2735
+ "isPure": false,
2736
+ "kind": "functionCall",
2737
+ "lValueRequested": false,
2738
+ "nameLocations": [],
2739
+ "names": [],
2740
+ "nodeType": "FunctionCall",
2741
+ "src": "4285:56:47",
2742
+ "tryCall": false,
2743
+ "typeDescriptions": {
2744
+ "typeIdentifier": "t_tuple$__$",
2745
+ "typeString": "tuple()"
2746
+ }
2747
+ },
2748
+ "id": 20583,
2749
+ "nodeType": "ExpressionStatement",
2750
+ "src": "4285:56:47"
2751
+ }
2752
+ ]
2753
+ },
2754
+ "documentation": {
2755
+ "id": 20566,
2756
+ "nodeType": "StructuredDocumentation",
2757
+ "src": "4122:79:47",
2758
+ "text": " Reverts if handle's TEEType doesn't match the expected type."
2759
+ },
2760
+ "id": 20585,
2761
+ "implemented": true,
2762
+ "kind": "function",
2763
+ "modifiers": [],
2764
+ "name": "requireType",
2765
+ "nameLocation": "4215:11:47",
2766
+ "nodeType": "FunctionDefinition",
2767
+ "parameters": {
2768
+ "id": 20572,
2769
+ "nodeType": "ParameterList",
2770
+ "parameters": [
2771
+ {
2772
+ "constant": false,
2773
+ "id": 20568,
2774
+ "mutability": "mutable",
2775
+ "name": "handle",
2776
+ "nameLocation": "4235:6:47",
2777
+ "nodeType": "VariableDeclaration",
2778
+ "scope": 20585,
2779
+ "src": "4227:14:47",
2780
+ "stateVariable": false,
2781
+ "storageLocation": "default",
2782
+ "typeDescriptions": {
2783
+ "typeIdentifier": "t_bytes32",
2784
+ "typeString": "bytes32"
2785
+ },
2786
+ "typeName": {
2787
+ "id": 20567,
2788
+ "name": "bytes32",
2789
+ "nodeType": "ElementaryTypeName",
2790
+ "src": "4227:7:47",
2791
+ "typeDescriptions": {
2792
+ "typeIdentifier": "t_bytes32",
2793
+ "typeString": "bytes32"
2794
+ }
2795
+ },
2796
+ "visibility": "internal"
2797
+ },
2798
+ {
2799
+ "constant": false,
2800
+ "id": 20571,
2801
+ "mutability": "mutable",
2802
+ "name": "expected",
2803
+ "nameLocation": "4251:8:47",
2804
+ "nodeType": "VariableDeclaration",
2805
+ "scope": 20585,
2806
+ "src": "4243:16:47",
2807
+ "stateVariable": false,
2808
+ "storageLocation": "default",
2809
+ "typeDescriptions": {
2810
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2811
+ "typeString": "enum TEEType"
2812
+ },
2813
+ "typeName": {
2814
+ "id": 20570,
2815
+ "nodeType": "UserDefinedTypeName",
2816
+ "pathNode": {
2817
+ "id": 20569,
2818
+ "name": "TEEType",
2819
+ "nameLocations": [
2820
+ "4243:7:47"
2821
+ ],
2822
+ "nodeType": "IdentifierPath",
2823
+ "referencedDeclaration": 20424,
2824
+ "src": "4243:7:47"
2825
+ },
2826
+ "referencedDeclaration": 20424,
2827
+ "src": "4243:7:47",
2828
+ "typeDescriptions": {
2829
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2830
+ "typeString": "enum TEEType"
2831
+ }
2832
+ },
2833
+ "visibility": "internal"
2834
+ }
2835
+ ],
2836
+ "src": "4226:34:47"
2837
+ },
2838
+ "returnParameters": {
2839
+ "id": 20573,
2840
+ "nodeType": "ParameterList",
2841
+ "parameters": [],
2842
+ "src": "4275:0:47"
2843
+ },
2844
+ "scope": 20631,
2845
+ "src": "4206:142:47",
2846
+ "stateMutability": "pure",
2847
+ "virtual": false,
2848
+ "visibility": "internal"
2849
+ },
2850
+ {
2851
+ "body": {
2852
+ "id": 20606,
2853
+ "nodeType": "Block",
2854
+ "src": "4527:98:47",
2855
+ "statements": [
2856
+ {
2857
+ "expression": {
2858
+ "arguments": [
2859
+ {
2860
+ "arguments": [
2861
+ {
2862
+ "id": 20595,
2863
+ "name": "first",
2864
+ "nodeType": "Identifier",
2865
+ "overloadedDeclarations": [],
2866
+ "referencedDeclaration": 20588,
2867
+ "src": "4567:5:47",
2868
+ "typeDescriptions": {
2869
+ "typeIdentifier": "t_bytes32",
2870
+ "typeString": "bytes32"
2871
+ }
2872
+ }
2873
+ ],
2874
+ "expression": {
2875
+ "argumentTypes": [
2876
+ {
2877
+ "typeIdentifier": "t_bytes32",
2878
+ "typeString": "bytes32"
2879
+ }
2880
+ ],
2881
+ "id": 20594,
2882
+ "name": "typeOf",
2883
+ "nodeType": "Identifier",
2884
+ "overloadedDeclarations": [],
2885
+ "referencedDeclaration": 20502,
2886
+ "src": "4560:6:47",
2887
+ "typeDescriptions": {
2888
+ "typeIdentifier": "t_function_internal_pure$_t_bytes32_$returns$_t_enum$_TEEType_$20424_$",
2889
+ "typeString": "function (bytes32) pure returns (enum TEEType)"
2890
+ }
2891
+ },
2892
+ "id": 20596,
2893
+ "isConstant": false,
2894
+ "isLValue": false,
2895
+ "isPure": false,
2896
+ "kind": "functionCall",
2897
+ "lValueRequested": false,
2898
+ "nameLocations": [],
2899
+ "names": [],
2900
+ "nodeType": "FunctionCall",
2901
+ "src": "4560:13:47",
2902
+ "tryCall": false,
2903
+ "typeDescriptions": {
2904
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2905
+ "typeString": "enum TEEType"
2906
+ }
2907
+ }
2908
+ ],
2909
+ "expression": {
2910
+ "argumentTypes": [
2911
+ {
2912
+ "typeIdentifier": "t_enum$_TEEType_$20424",
2913
+ "typeString": "enum TEEType"
2914
+ }
2915
+ ],
2916
+ "id": 20593,
2917
+ "name": "validateArithmeticType",
2918
+ "nodeType": "Identifier",
2919
+ "overloadedDeclarations": [],
2920
+ "referencedDeclaration": 20565,
2921
+ "src": "4537:22:47",
2922
+ "typeDescriptions": {
2923
+ "typeIdentifier": "t_function_internal_pure$_t_enum$_TEEType_$20424_$returns$__$",
2924
+ "typeString": "function (enum TEEType) pure"
2925
+ }
2926
+ },
2927
+ "id": 20597,
2928
+ "isConstant": false,
2929
+ "isLValue": false,
2930
+ "isPure": false,
2931
+ "kind": "functionCall",
2932
+ "lValueRequested": false,
2933
+ "nameLocations": [],
2934
+ "names": [],
2935
+ "nodeType": "FunctionCall",
2936
+ "src": "4537:37:47",
2937
+ "tryCall": false,
2938
+ "typeDescriptions": {
2939
+ "typeIdentifier": "t_tuple$__$",
2940
+ "typeString": "tuple()"
2941
+ }
2942
+ },
2943
+ "id": 20598,
2944
+ "nodeType": "ExpressionStatement",
2945
+ "src": "4537:37:47"
2946
+ },
2947
+ {
2948
+ "expression": {
2949
+ "arguments": [
2950
+ {
2951
+ "id": 20600,
2952
+ "name": "second",
2953
+ "nodeType": "Identifier",
2954
+ "overloadedDeclarations": [],
2955
+ "referencedDeclaration": 20590,
2956
+ "src": "4596:6:47",
2957
+ "typeDescriptions": {
2958
+ "typeIdentifier": "t_bytes32",
2959
+ "typeString": "bytes32"
2960
+ }
2961
+ },
2962
+ {
2963
+ "arguments": [
2964
+ {
2965
+ "id": 20602,
2966
+ "name": "first",
2967
+ "nodeType": "Identifier",
2968
+ "overloadedDeclarations": [],
2969
+ "referencedDeclaration": 20588,
2970
+ "src": "4611:5:47",
2971
+ "typeDescriptions": {
2972
+ "typeIdentifier": "t_bytes32",
2973
+ "typeString": "bytes32"
2974
+ }
2975
+ }
2976
+ ],
2977
+ "expression": {
2978
+ "argumentTypes": [
2979
+ {
2980
+ "typeIdentifier": "t_bytes32",
2981
+ "typeString": "bytes32"
2982
+ }
2983
+ ],
2984
+ "id": 20601,
2985
+ "name": "typeOf",
2986
+ "nodeType": "Identifier",
2987
+ "overloadedDeclarations": [],
2988
+ "referencedDeclaration": 20502,
2989
+ "src": "4604:6:47",
2990
+ "typeDescriptions": {
2991
+ "typeIdentifier": "t_function_internal_pure$_t_bytes32_$returns$_t_enum$_TEEType_$20424_$",
2992
+ "typeString": "function (bytes32) pure returns (enum TEEType)"
2993
+ }
2994
+ },
2995
+ "id": 20603,
2996
+ "isConstant": false,
2997
+ "isLValue": false,
2998
+ "isPure": false,
2999
+ "kind": "functionCall",
3000
+ "lValueRequested": false,
3001
+ "nameLocations": [],
3002
+ "names": [],
3003
+ "nodeType": "FunctionCall",
3004
+ "src": "4604:13:47",
3005
+ "tryCall": false,
3006
+ "typeDescriptions": {
3007
+ "typeIdentifier": "t_enum$_TEEType_$20424",
3008
+ "typeString": "enum TEEType"
3009
+ }
3010
+ }
3011
+ ],
3012
+ "expression": {
3013
+ "argumentTypes": [
3014
+ {
3015
+ "typeIdentifier": "t_bytes32",
3016
+ "typeString": "bytes32"
3017
+ },
3018
+ {
3019
+ "typeIdentifier": "t_enum$_TEEType_$20424",
3020
+ "typeString": "enum TEEType"
3021
+ }
3022
+ ],
3023
+ "id": 20599,
3024
+ "name": "requireType",
3025
+ "nodeType": "Identifier",
3026
+ "overloadedDeclarations": [],
3027
+ "referencedDeclaration": 20585,
3028
+ "src": "4584:11:47",
3029
+ "typeDescriptions": {
3030
+ "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_enum$_TEEType_$20424_$returns$__$",
3031
+ "typeString": "function (bytes32,enum TEEType) pure"
3032
+ }
3033
+ },
3034
+ "id": 20604,
3035
+ "isConstant": false,
3036
+ "isLValue": false,
3037
+ "isPure": false,
3038
+ "kind": "functionCall",
3039
+ "lValueRequested": false,
3040
+ "nameLocations": [],
3041
+ "names": [],
3042
+ "nodeType": "FunctionCall",
3043
+ "src": "4584:34:47",
3044
+ "tryCall": false,
3045
+ "typeDescriptions": {
3046
+ "typeIdentifier": "t_tuple$__$",
3047
+ "typeString": "tuple()"
3048
+ }
3049
+ },
3050
+ "id": 20605,
3051
+ "nodeType": "ExpressionStatement",
3052
+ "src": "4584:34:47"
3053
+ }
3054
+ ]
3055
+ },
3056
+ "documentation": {
3057
+ "id": 20586,
3058
+ "nodeType": "StructuredDocumentation",
3059
+ "src": "4354:91:47",
3060
+ "text": " Validates that first and second have the same supported arithmetic type."
3061
+ },
3062
+ "id": 20607,
3063
+ "implemented": true,
3064
+ "kind": "function",
3065
+ "modifiers": [],
3066
+ "name": "validateOperationTypes",
3067
+ "nameLocation": "4459:22:47",
3068
+ "nodeType": "FunctionDefinition",
3069
+ "parameters": {
3070
+ "id": 20591,
3071
+ "nodeType": "ParameterList",
3072
+ "parameters": [
3073
+ {
3074
+ "constant": false,
3075
+ "id": 20588,
3076
+ "mutability": "mutable",
3077
+ "name": "first",
3078
+ "nameLocation": "4490:5:47",
3079
+ "nodeType": "VariableDeclaration",
3080
+ "scope": 20607,
3081
+ "src": "4482:13:47",
3082
+ "stateVariable": false,
3083
+ "storageLocation": "default",
3084
+ "typeDescriptions": {
3085
+ "typeIdentifier": "t_bytes32",
3086
+ "typeString": "bytes32"
3087
+ },
3088
+ "typeName": {
3089
+ "id": 20587,
3090
+ "name": "bytes32",
3091
+ "nodeType": "ElementaryTypeName",
3092
+ "src": "4482:7:47",
3093
+ "typeDescriptions": {
3094
+ "typeIdentifier": "t_bytes32",
3095
+ "typeString": "bytes32"
3096
+ }
3097
+ },
3098
+ "visibility": "internal"
3099
+ },
3100
+ {
3101
+ "constant": false,
3102
+ "id": 20590,
3103
+ "mutability": "mutable",
3104
+ "name": "second",
3105
+ "nameLocation": "4505:6:47",
3106
+ "nodeType": "VariableDeclaration",
3107
+ "scope": 20607,
3108
+ "src": "4497:14:47",
3109
+ "stateVariable": false,
3110
+ "storageLocation": "default",
3111
+ "typeDescriptions": {
3112
+ "typeIdentifier": "t_bytes32",
3113
+ "typeString": "bytes32"
3114
+ },
3115
+ "typeName": {
3116
+ "id": 20589,
3117
+ "name": "bytes32",
3118
+ "nodeType": "ElementaryTypeName",
3119
+ "src": "4497:7:47",
3120
+ "typeDescriptions": {
3121
+ "typeIdentifier": "t_bytes32",
3122
+ "typeString": "bytes32"
3123
+ }
3124
+ },
3125
+ "visibility": "internal"
3126
+ }
3127
+ ],
3128
+ "src": "4481:31:47"
3129
+ },
3130
+ "returnParameters": {
3131
+ "id": 20592,
3132
+ "nodeType": "ParameterList",
3133
+ "parameters": [],
3134
+ "src": "4527:0:47"
3135
+ },
3136
+ "scope": 20631,
3137
+ "src": "4450:175:47",
3138
+ "stateMutability": "pure",
3139
+ "virtual": false,
3140
+ "visibility": "internal"
3141
+ },
3142
+ {
3143
+ "body": {
3144
+ "id": 20629,
3145
+ "nodeType": "Block",
3146
+ "src": "4827:97:47",
3147
+ "statements": [
3148
+ {
3149
+ "expression": {
3150
+ "arguments": [
3151
+ {
3152
+ "id": 20618,
3153
+ "name": "first",
3154
+ "nodeType": "Identifier",
3155
+ "overloadedDeclarations": [],
3156
+ "referencedDeclaration": 20610,
3157
+ "src": "4860:5:47",
3158
+ "typeDescriptions": {
3159
+ "typeIdentifier": "t_bytes32",
3160
+ "typeString": "bytes32"
3161
+ }
3162
+ },
3163
+ {
3164
+ "id": 20619,
3165
+ "name": "second",
3166
+ "nodeType": "Identifier",
3167
+ "overloadedDeclarations": [],
3168
+ "referencedDeclaration": 20612,
3169
+ "src": "4867:6:47",
3170
+ "typeDescriptions": {
3171
+ "typeIdentifier": "t_bytes32",
3172
+ "typeString": "bytes32"
3173
+ }
3174
+ }
3175
+ ],
3176
+ "expression": {
3177
+ "argumentTypes": [
3178
+ {
3179
+ "typeIdentifier": "t_bytes32",
3180
+ "typeString": "bytes32"
3181
+ },
3182
+ {
3183
+ "typeIdentifier": "t_bytes32",
3184
+ "typeString": "bytes32"
3185
+ }
3186
+ ],
3187
+ "id": 20617,
3188
+ "name": "validateOperationTypes",
3189
+ "nodeType": "Identifier",
3190
+ "overloadedDeclarations": [
3191
+ 20607,
3192
+ 20630
3193
+ ],
3194
+ "referencedDeclaration": 20607,
3195
+ "src": "4837:22:47",
3196
+ "typeDescriptions": {
3197
+ "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_bytes32_$returns$__$",
3198
+ "typeString": "function (bytes32,bytes32) pure"
3199
+ }
3200
+ },
3201
+ "id": 20620,
3202
+ "isConstant": false,
3203
+ "isLValue": false,
3204
+ "isPure": false,
3205
+ "kind": "functionCall",
3206
+ "lValueRequested": false,
3207
+ "nameLocations": [],
3208
+ "names": [],
3209
+ "nodeType": "FunctionCall",
3210
+ "src": "4837:37:47",
3211
+ "tryCall": false,
3212
+ "typeDescriptions": {
3213
+ "typeIdentifier": "t_tuple$__$",
3214
+ "typeString": "tuple()"
3215
+ }
3216
+ },
3217
+ "id": 20621,
3218
+ "nodeType": "ExpressionStatement",
3219
+ "src": "4837:37:47"
3220
+ },
3221
+ {
3222
+ "expression": {
3223
+ "arguments": [
3224
+ {
3225
+ "id": 20623,
3226
+ "name": "third",
3227
+ "nodeType": "Identifier",
3228
+ "overloadedDeclarations": [],
3229
+ "referencedDeclaration": 20614,
3230
+ "src": "4896:5:47",
3231
+ "typeDescriptions": {
3232
+ "typeIdentifier": "t_bytes32",
3233
+ "typeString": "bytes32"
3234
+ }
3235
+ },
3236
+ {
3237
+ "arguments": [
3238
+ {
3239
+ "id": 20625,
3240
+ "name": "first",
3241
+ "nodeType": "Identifier",
3242
+ "overloadedDeclarations": [],
3243
+ "referencedDeclaration": 20610,
3244
+ "src": "4910:5:47",
3245
+ "typeDescriptions": {
3246
+ "typeIdentifier": "t_bytes32",
3247
+ "typeString": "bytes32"
3248
+ }
3249
+ }
3250
+ ],
3251
+ "expression": {
3252
+ "argumentTypes": [
3253
+ {
3254
+ "typeIdentifier": "t_bytes32",
3255
+ "typeString": "bytes32"
3256
+ }
3257
+ ],
3258
+ "id": 20624,
3259
+ "name": "typeOf",
3260
+ "nodeType": "Identifier",
3261
+ "overloadedDeclarations": [],
3262
+ "referencedDeclaration": 20502,
3263
+ "src": "4903:6:47",
3264
+ "typeDescriptions": {
3265
+ "typeIdentifier": "t_function_internal_pure$_t_bytes32_$returns$_t_enum$_TEEType_$20424_$",
3266
+ "typeString": "function (bytes32) pure returns (enum TEEType)"
3267
+ }
3268
+ },
3269
+ "id": 20626,
3270
+ "isConstant": false,
3271
+ "isLValue": false,
3272
+ "isPure": false,
3273
+ "kind": "functionCall",
3274
+ "lValueRequested": false,
3275
+ "nameLocations": [],
3276
+ "names": [],
3277
+ "nodeType": "FunctionCall",
3278
+ "src": "4903:13:47",
3279
+ "tryCall": false,
3280
+ "typeDescriptions": {
3281
+ "typeIdentifier": "t_enum$_TEEType_$20424",
3282
+ "typeString": "enum TEEType"
3283
+ }
3284
+ }
3285
+ ],
3286
+ "expression": {
3287
+ "argumentTypes": [
3288
+ {
3289
+ "typeIdentifier": "t_bytes32",
3290
+ "typeString": "bytes32"
3291
+ },
3292
+ {
3293
+ "typeIdentifier": "t_enum$_TEEType_$20424",
3294
+ "typeString": "enum TEEType"
3295
+ }
3296
+ ],
3297
+ "id": 20622,
3298
+ "name": "requireType",
3299
+ "nodeType": "Identifier",
3300
+ "overloadedDeclarations": [],
3301
+ "referencedDeclaration": 20585,
3302
+ "src": "4884:11:47",
3303
+ "typeDescriptions": {
3304
+ "typeIdentifier": "t_function_internal_pure$_t_bytes32_$_t_enum$_TEEType_$20424_$returns$__$",
3305
+ "typeString": "function (bytes32,enum TEEType) pure"
3306
+ }
3307
+ },
3308
+ "id": 20627,
3309
+ "isConstant": false,
3310
+ "isLValue": false,
3311
+ "isPure": false,
3312
+ "kind": "functionCall",
3313
+ "lValueRequested": false,
3314
+ "nameLocations": [],
3315
+ "names": [],
3316
+ "nodeType": "FunctionCall",
3317
+ "src": "4884:33:47",
3318
+ "tryCall": false,
3319
+ "typeDescriptions": {
3320
+ "typeIdentifier": "t_tuple$__$",
3321
+ "typeString": "tuple()"
3322
+ }
3323
+ },
3324
+ "id": 20628,
3325
+ "nodeType": "ExpressionStatement",
3326
+ "src": "4884:33:47"
3327
+ }
3328
+ ]
3329
+ },
3330
+ "documentation": {
3331
+ "id": 20608,
3332
+ "nodeType": "StructuredDocumentation",
3333
+ "src": "4631:99:47",
3334
+ "text": " Validates that first, second, and third have the same supported arithmetic type."
3335
+ },
3336
+ "id": 20630,
3337
+ "implemented": true,
3338
+ "kind": "function",
3339
+ "modifiers": [],
3340
+ "name": "validateOperationTypes",
3341
+ "nameLocation": "4744:22:47",
3342
+ "nodeType": "FunctionDefinition",
3343
+ "parameters": {
3344
+ "id": 20615,
3345
+ "nodeType": "ParameterList",
3346
+ "parameters": [
3347
+ {
3348
+ "constant": false,
3349
+ "id": 20610,
3350
+ "mutability": "mutable",
3351
+ "name": "first",
3352
+ "nameLocation": "4775:5:47",
3353
+ "nodeType": "VariableDeclaration",
3354
+ "scope": 20630,
3355
+ "src": "4767:13:47",
3356
+ "stateVariable": false,
3357
+ "storageLocation": "default",
3358
+ "typeDescriptions": {
3359
+ "typeIdentifier": "t_bytes32",
3360
+ "typeString": "bytes32"
3361
+ },
3362
+ "typeName": {
3363
+ "id": 20609,
3364
+ "name": "bytes32",
3365
+ "nodeType": "ElementaryTypeName",
3366
+ "src": "4767:7:47",
3367
+ "typeDescriptions": {
3368
+ "typeIdentifier": "t_bytes32",
3369
+ "typeString": "bytes32"
3370
+ }
3371
+ },
3372
+ "visibility": "internal"
3373
+ },
3374
+ {
3375
+ "constant": false,
3376
+ "id": 20612,
3377
+ "mutability": "mutable",
3378
+ "name": "second",
3379
+ "nameLocation": "4790:6:47",
3380
+ "nodeType": "VariableDeclaration",
3381
+ "scope": 20630,
3382
+ "src": "4782:14:47",
3383
+ "stateVariable": false,
3384
+ "storageLocation": "default",
3385
+ "typeDescriptions": {
3386
+ "typeIdentifier": "t_bytes32",
3387
+ "typeString": "bytes32"
3388
+ },
3389
+ "typeName": {
3390
+ "id": 20611,
3391
+ "name": "bytes32",
3392
+ "nodeType": "ElementaryTypeName",
3393
+ "src": "4782:7:47",
3394
+ "typeDescriptions": {
3395
+ "typeIdentifier": "t_bytes32",
3396
+ "typeString": "bytes32"
3397
+ }
3398
+ },
3399
+ "visibility": "internal"
3400
+ },
3401
+ {
3402
+ "constant": false,
3403
+ "id": 20614,
3404
+ "mutability": "mutable",
3405
+ "name": "third",
3406
+ "nameLocation": "4806:5:47",
3407
+ "nodeType": "VariableDeclaration",
3408
+ "scope": 20630,
3409
+ "src": "4798:13:47",
3410
+ "stateVariable": false,
3411
+ "storageLocation": "default",
3412
+ "typeDescriptions": {
3413
+ "typeIdentifier": "t_bytes32",
3414
+ "typeString": "bytes32"
3415
+ },
3416
+ "typeName": {
3417
+ "id": 20613,
3418
+ "name": "bytes32",
3419
+ "nodeType": "ElementaryTypeName",
3420
+ "src": "4798:7:47",
3421
+ "typeDescriptions": {
3422
+ "typeIdentifier": "t_bytes32",
3423
+ "typeString": "bytes32"
3424
+ }
3425
+ },
3426
+ "visibility": "internal"
3427
+ }
3428
+ ],
3429
+ "src": "4766:46:47"
3430
+ },
3431
+ "returnParameters": {
3432
+ "id": 20616,
3433
+ "nodeType": "ParameterList",
3434
+ "parameters": [],
3435
+ "src": "4827:0:47"
3436
+ },
3437
+ "scope": 20631,
3438
+ "src": "4735:189:47",
3439
+ "stateMutability": "pure",
3440
+ "virtual": false,
3441
+ "visibility": "internal"
3442
+ }
3443
+ ],
3444
+ "scope": 20632,
3445
+ "src": "2397:2529:47",
3446
+ "usedErrors": [],
3447
+ "usedEvents": []
3448
+ }
3449
+ ],
3450
+ "src": "32:4895:47"
3451
+ },
3452
+ "metadata": {
3453
+ "compiler": {
3454
+ "version": "0.8.35+commit.47b9dedd"
3455
+ },
3456
+ "language": "Solidity",
3457
+ "output": {
3458
+ "abi": [],
3459
+ "devdoc": {
3460
+ "kind": "dev",
3461
+ "methods": {},
3462
+ "version": 1
3463
+ },
3464
+ "userdoc": {
3465
+ "kind": "user",
3466
+ "methods": {},
3467
+ "version": 1
3468
+ }
3469
+ },
3470
+ "settings": {
3471
+ "compilationTarget": {
3472
+ "project/contracts/utils/TypeUtils.sol": "TypeUtils"
3473
+ },
3474
+ "evmVersion": "osaka",
3475
+ "libraries": {},
3476
+ "metadata": {
3477
+ "bytecodeHash": "none"
3478
+ },
3479
+ "optimizer": {
3480
+ "enabled": false,
3481
+ "runs": 200
3482
+ },
3483
+ "remappings": [
3484
+ "npm/@openzeppelin/contracts-upgradeable@5.6.1/:@openzeppelin/contracts/=npm/@openzeppelin/contracts@5.6.1/",
3485
+ "project/:@openzeppelin/contracts-upgradeable/=npm/@openzeppelin/contracts-upgradeable@5.6.1/",
3486
+ "project/:@openzeppelin/contracts/=npm/@openzeppelin/contracts@5.6.1/",
3487
+ "project/:encrypted-types/=npm/encrypted-types@0.0.4/"
3488
+ ]
3489
+ },
3490
+ "sources": {
3491
+ "project/contracts/utils/TypeUtils.sol": {
3492
+ "keccak256": "0x44ef3780f8ec4060cf4ecc186cf6fd5948ecdd19ce9a4cb8fd86fad49b844a6f",
3493
+ "license": "MIT",
3494
+ "urls": [
3495
+ "bzz-raw://374c6a552502a8bba83987d8885f7a45685973afb58d429527a3faa69ba20982",
3496
+ "dweb:/ipfs/QmRLraaT8Dq3aJth8ZrXYVZR4TqisZg3hx1gUgJxofSpyL"
3497
+ ]
3498
+ }
3499
+ },
3500
+ "version": 1
3501
+ }
3502
+ }