@elsoul/erpc-sdk 0.5.0 → 0.7.0

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.
package/dist/index.cjs CHANGED
@@ -242,6 +242,2126 @@ var AccountClient = class {
242
242
  }
243
243
  };
244
244
 
245
+ // src/generated/token_catalog.ts
246
+ var deepFreeze = (value) => {
247
+ if (value && typeof value === "object" && !Object.isFrozen(value)) {
248
+ Object.freeze(value);
249
+ for (const child of Object.values(value)) deepFreeze(child);
250
+ }
251
+ return value;
252
+ };
253
+ var TOKEN_CATALOG_VERSION = "1.0.0";
254
+ var TOKEN_CATALOG_AS_OF_DATE = "2026-09-15";
255
+ var TOKEN_CATALOG_CONTENT_DIGEST = "28318f4f6a6bc2cdeef51368eeb17c86685c6f12d1723b0b4dd27f7e54d7235d";
256
+ var TOKEN_CHAIN_IDS = deepFreeze({
257
+ "ethereumMainnet": "eip155:1",
258
+ "solanaMainnet": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
259
+ "avalancheCMainnet": "eip155:43114"
260
+ });
261
+ var tokens = deepFreeze({
262
+ "avalancheC": {
263
+ "AUSD": "deployment-0035",
264
+ "AVAX": "deployment-0003",
265
+ "DISCOVERED_0A7F98C8752F15EE": "discovered-token-0a7f98c8752f15ee02ce0d801f25df8ff78864a1d70aff7e204f7bdb3f8a0692",
266
+ "DISCOVERED_1847342426B765AD": "discovered-token-1847342426b765add3c8b4feb724c6b15121f25097cb7917c967c285ca77e804",
267
+ "DISCOVERED_288036A90EE0FA72": "discovered-token-288036a90ee0fa72a2751a78a6934cc6ced9e16de91c97ae8e109e2ee6189bc5",
268
+ "DISCOVERED_323D07C442F0D089": "discovered-token-323d07c442f0d089197ae7eea9b3ebb829910177c5b780161a7623aaed5e4371",
269
+ "DISCOVERED_9F9965CC065C9BEC": "discovered-token-9f9965cc065c9becf8d2cb58071524baafea37d27fda9bf683a93ea85f2e653d",
270
+ "EURC": "deployment-0012",
271
+ "EUROP": "deployment-0045",
272
+ "GHO": "deployment-0030",
273
+ "JOE": "deployment-0059",
274
+ "JPYC": "deployment-0039",
275
+ "LINK": "deployment-0058",
276
+ "USDC": "deployment-0009",
277
+ "USDC_E": "deployment-0018",
278
+ "USDT": "deployment-0015",
279
+ "WAVAX": "deployment-0004"
280
+ },
281
+ "ethereum": {
282
+ "AAVE": "deployment-0056",
283
+ "AUSD": "deployment-0034",
284
+ "DAI": "deployment-0019",
285
+ "DISCOVERED_054D80A64E1F36A7": "discovered-token-054d80a64e1f36a756129763ca2f1e7a140b50b04c83876ff01dd5fd497a74c5",
286
+ "DISCOVERED_611597BD13DAA43D": "discovered-token-611597bd13daa43d01a23caa9cca6a98797c64be7fb5b2677370ddbcdeaf01ec",
287
+ "DISCOVERED_69519FD08E31445C": "discovered-token-69519fd08e31445cad84b0c17a5346b7ee9c5692e270602af9308ca6d8943bb6",
288
+ "DISCOVERED_B475569F6A15E97A": "discovered-token-b475569f6a15e97ac04e531dd813e9dcc902521c098d60d6ae4d21d53baf1395",
289
+ "DISCOVERED_E375086901067FE3": "discovered-token-e375086901067fe3de023bcdc70f1bafca798e1719ed7e676a98f57de3350a07",
290
+ "ETH": "deployment-0001",
291
+ "EURA": "deployment-0051",
292
+ "EURAU": "deployment-0042",
293
+ "EURC": "deployment-0011",
294
+ "EURCV": "deployment-0040",
295
+ "EURE": "deployment-0054",
296
+ "EURE_V1": "deployment-0053",
297
+ "EUROP": "deployment-0044",
298
+ "EURS": "deployment-0052",
299
+ "EURT": "deployment-0017",
300
+ "FDUSD": "deployment-0031",
301
+ "GHO": "deployment-0029",
302
+ "GYEN": "deployment-0047",
303
+ "JPYC": "deployment-0038",
304
+ "LINK": "deployment-0057",
305
+ "PYUSD": "deployment-0022",
306
+ "RLUSD": "deployment-0033",
307
+ "UNI": "deployment-0055",
308
+ "USDC": "deployment-0008",
309
+ "USDE": "deployment-0028",
310
+ "USDG": "deployment-0024",
311
+ "USDP": "deployment-0026",
312
+ "USDS": "deployment-0020",
313
+ "USDT": "deployment-0014",
314
+ "WETH": "deployment-0002",
315
+ "ZUSD": "deployment-0049"
316
+ },
317
+ "solana": {
318
+ "AUSD": "deployment-0036",
319
+ "EURAU": "deployment-0043",
320
+ "EURC": "deployment-0013",
321
+ "EURCV": "deployment-0041",
322
+ "EUROP": "deployment-0046",
323
+ "FDUSD": "deployment-0032",
324
+ "GYEN": "deployment-0048",
325
+ "JUP": "deployment-0060",
326
+ "JUPUSD": "deployment-0037",
327
+ "PYUSD": "deployment-0023",
328
+ "SOL": "deployment-0005",
329
+ "USDC": "deployment-0010",
330
+ "USDG": "deployment-0025",
331
+ "USDP": "deployment-0027",
332
+ "USDS": "deployment-0021",
333
+ "USDT": "deployment-0016",
334
+ "WSOL": "deployment-0006",
335
+ "WSOL_TOKEN_2022": "deployment-0007",
336
+ "ZUSD": "deployment-0050"
337
+ }
338
+ });
339
+ var TOKEN_ASSETS = deepFreeze([
340
+ {
341
+ "assetId": "asset-0001",
342
+ "name": "Ether",
343
+ "representationKind": "native",
344
+ "stableCurrency": null,
345
+ "underlyingAssetId": null,
346
+ "economicReferenceAssetId": null
347
+ },
348
+ {
349
+ "assetId": "asset-0002",
350
+ "name": "Wrapped Ether",
351
+ "representationKind": "wrapped",
352
+ "stableCurrency": null,
353
+ "underlyingAssetId": "asset-0001",
354
+ "economicReferenceAssetId": null
355
+ },
356
+ {
357
+ "assetId": "asset-0003",
358
+ "name": "Avalanche",
359
+ "representationKind": "native",
360
+ "stableCurrency": null,
361
+ "underlyingAssetId": null,
362
+ "economicReferenceAssetId": null
363
+ },
364
+ {
365
+ "assetId": "asset-0004",
366
+ "name": "Wrapped AVAX",
367
+ "representationKind": "wrapped",
368
+ "stableCurrency": null,
369
+ "underlyingAssetId": "asset-0003",
370
+ "economicReferenceAssetId": null
371
+ },
372
+ {
373
+ "assetId": "asset-0005",
374
+ "name": "Solana",
375
+ "representationKind": "native",
376
+ "stableCurrency": null,
377
+ "underlyingAssetId": null,
378
+ "economicReferenceAssetId": null
379
+ },
380
+ {
381
+ "assetId": "asset-0006",
382
+ "name": "Wrapped SOL",
383
+ "representationKind": "wrapped",
384
+ "stableCurrency": null,
385
+ "underlyingAssetId": "asset-0005",
386
+ "economicReferenceAssetId": null
387
+ },
388
+ {
389
+ "assetId": "asset-0007",
390
+ "name": "USD Coin",
391
+ "representationKind": "issued",
392
+ "stableCurrency": "USD",
393
+ "underlyingAssetId": null,
394
+ "economicReferenceAssetId": null
395
+ },
396
+ {
397
+ "assetId": "asset-0008",
398
+ "name": "Euro Coin",
399
+ "representationKind": "issued",
400
+ "stableCurrency": "EUR",
401
+ "underlyingAssetId": null,
402
+ "economicReferenceAssetId": null
403
+ },
404
+ {
405
+ "assetId": "asset-0009",
406
+ "name": "Tether USDt",
407
+ "representationKind": "issued",
408
+ "stableCurrency": "USD",
409
+ "underlyingAssetId": null,
410
+ "economicReferenceAssetId": null
411
+ },
412
+ {
413
+ "assetId": "asset-0010",
414
+ "name": "Tether EURt",
415
+ "representationKind": "issued",
416
+ "stableCurrency": "EUR",
417
+ "underlyingAssetId": null,
418
+ "economicReferenceAssetId": null
419
+ },
420
+ {
421
+ "assetId": "asset-0011",
422
+ "name": "Bridged USD Coin (USDC.e)",
423
+ "representationKind": "bridged",
424
+ "stableCurrency": "USD",
425
+ "underlyingAssetId": null,
426
+ "economicReferenceAssetId": "asset-0007"
427
+ },
428
+ {
429
+ "assetId": "asset-0012",
430
+ "name": "Dai",
431
+ "representationKind": "issued",
432
+ "stableCurrency": "USD",
433
+ "underlyingAssetId": null,
434
+ "economicReferenceAssetId": null
435
+ },
436
+ {
437
+ "assetId": "asset-0013",
438
+ "name": "Sky Dollar",
439
+ "representationKind": "issued",
440
+ "stableCurrency": "USD",
441
+ "underlyingAssetId": null,
442
+ "economicReferenceAssetId": null
443
+ },
444
+ {
445
+ "assetId": "asset-0014",
446
+ "name": "Bridged Sky Dollar",
447
+ "representationKind": "bridged",
448
+ "stableCurrency": "USD",
449
+ "underlyingAssetId": null,
450
+ "economicReferenceAssetId": "asset-0013"
451
+ },
452
+ {
453
+ "assetId": "asset-0015",
454
+ "name": "PayPal USD (PYUSD)",
455
+ "representationKind": "issued",
456
+ "stableCurrency": "USD",
457
+ "underlyingAssetId": null,
458
+ "economicReferenceAssetId": null
459
+ },
460
+ {
461
+ "assetId": "asset-0016",
462
+ "name": "Global Dollar (USDG)",
463
+ "representationKind": "issued",
464
+ "stableCurrency": "USD",
465
+ "underlyingAssetId": null,
466
+ "economicReferenceAssetId": null
467
+ },
468
+ {
469
+ "assetId": "asset-0017",
470
+ "name": "Pax Dollar (USDP)",
471
+ "representationKind": "issued",
472
+ "stableCurrency": "USD",
473
+ "underlyingAssetId": null,
474
+ "economicReferenceAssetId": null
475
+ },
476
+ {
477
+ "assetId": "asset-0018",
478
+ "name": "USDe",
479
+ "representationKind": "issued",
480
+ "stableCurrency": "USD",
481
+ "underlyingAssetId": null,
482
+ "economicReferenceAssetId": null
483
+ },
484
+ {
485
+ "assetId": "asset-0019",
486
+ "name": "GHO",
487
+ "representationKind": "issued",
488
+ "stableCurrency": "USD",
489
+ "underlyingAssetId": null,
490
+ "economicReferenceAssetId": null
491
+ },
492
+ {
493
+ "assetId": "asset-0020",
494
+ "name": "Bridged GHO",
495
+ "representationKind": "bridged",
496
+ "stableCurrency": "USD",
497
+ "underlyingAssetId": null,
498
+ "economicReferenceAssetId": "asset-0019"
499
+ },
500
+ {
501
+ "assetId": "asset-0021",
502
+ "name": "First Digital USD",
503
+ "representationKind": "issued",
504
+ "stableCurrency": "USD",
505
+ "underlyingAssetId": null,
506
+ "economicReferenceAssetId": null
507
+ },
508
+ {
509
+ "assetId": "asset-0022",
510
+ "name": "Ripple USD",
511
+ "representationKind": "issued",
512
+ "stableCurrency": "USD",
513
+ "underlyingAssetId": null,
514
+ "economicReferenceAssetId": null
515
+ },
516
+ {
517
+ "assetId": "asset-0023",
518
+ "name": "Agora USD",
519
+ "representationKind": "issued",
520
+ "stableCurrency": "USD",
521
+ "underlyingAssetId": null,
522
+ "economicReferenceAssetId": null
523
+ },
524
+ {
525
+ "assetId": "asset-0024",
526
+ "name": "Jupiter USD",
527
+ "representationKind": "issued",
528
+ "stableCurrency": "USD",
529
+ "underlyingAssetId": null,
530
+ "economicReferenceAssetId": null
531
+ },
532
+ {
533
+ "assetId": "asset-0025",
534
+ "name": "JPY Coin",
535
+ "representationKind": "issued",
536
+ "stableCurrency": "JPY",
537
+ "underlyingAssetId": null,
538
+ "economicReferenceAssetId": null
539
+ },
540
+ {
541
+ "assetId": "asset-0026",
542
+ "name": "Euro CoinVertible",
543
+ "representationKind": "issued",
544
+ "stableCurrency": "EUR",
545
+ "underlyingAssetId": null,
546
+ "economicReferenceAssetId": null
547
+ },
548
+ {
549
+ "assetId": "asset-0027",
550
+ "name": "EURAU",
551
+ "representationKind": "issued",
552
+ "stableCurrency": "EUR",
553
+ "underlyingAssetId": null,
554
+ "economicReferenceAssetId": null
555
+ },
556
+ {
557
+ "assetId": "asset-0028",
558
+ "name": "EUROP",
559
+ "representationKind": "issued",
560
+ "stableCurrency": "EUR",
561
+ "underlyingAssetId": null,
562
+ "economicReferenceAssetId": null
563
+ },
564
+ {
565
+ "assetId": "asset-0029",
566
+ "name": "GYEN",
567
+ "representationKind": "issued",
568
+ "stableCurrency": "JPY",
569
+ "underlyingAssetId": null,
570
+ "economicReferenceAssetId": null
571
+ },
572
+ {
573
+ "assetId": "asset-0030",
574
+ "name": "ZUSD",
575
+ "representationKind": "issued",
576
+ "stableCurrency": "USD",
577
+ "underlyingAssetId": null,
578
+ "economicReferenceAssetId": null
579
+ },
580
+ {
581
+ "assetId": "asset-0031",
582
+ "name": "Angle EURA",
583
+ "representationKind": "issued",
584
+ "stableCurrency": "EUR",
585
+ "underlyingAssetId": null,
586
+ "economicReferenceAssetId": null
587
+ },
588
+ {
589
+ "assetId": "asset-0032",
590
+ "name": "STASIS EURS",
591
+ "representationKind": "issued",
592
+ "stableCurrency": "EUR",
593
+ "underlyingAssetId": null,
594
+ "economicReferenceAssetId": null
595
+ },
596
+ {
597
+ "assetId": "asset-0033",
598
+ "name": "Monerium EURe",
599
+ "representationKind": "issued",
600
+ "stableCurrency": "EUR",
601
+ "underlyingAssetId": null,
602
+ "economicReferenceAssetId": null
603
+ },
604
+ {
605
+ "assetId": "asset-0034",
606
+ "name": "Uniswap",
607
+ "representationKind": "issued",
608
+ "stableCurrency": null,
609
+ "underlyingAssetId": null,
610
+ "economicReferenceAssetId": null
611
+ },
612
+ {
613
+ "assetId": "asset-0035",
614
+ "name": "Aave",
615
+ "representationKind": "issued",
616
+ "stableCurrency": null,
617
+ "underlyingAssetId": null,
618
+ "economicReferenceAssetId": null
619
+ },
620
+ {
621
+ "assetId": "asset-0036",
622
+ "name": "Chainlink",
623
+ "representationKind": "issued",
624
+ "stableCurrency": null,
625
+ "underlyingAssetId": null,
626
+ "economicReferenceAssetId": null
627
+ },
628
+ {
629
+ "assetId": "asset-0037",
630
+ "name": "Bridged Chainlink",
631
+ "representationKind": "bridged",
632
+ "stableCurrency": null,
633
+ "underlyingAssetId": null,
634
+ "economicReferenceAssetId": "asset-0036"
635
+ },
636
+ {
637
+ "assetId": "asset-0038",
638
+ "name": "Trader Joe",
639
+ "representationKind": "issued",
640
+ "stableCurrency": null,
641
+ "underlyingAssetId": null,
642
+ "economicReferenceAssetId": null
643
+ },
644
+ {
645
+ "assetId": "asset-0039",
646
+ "name": "Jupiter",
647
+ "representationKind": "issued",
648
+ "stableCurrency": null,
649
+ "underlyingAssetId": null,
650
+ "economicReferenceAssetId": null
651
+ },
652
+ {
653
+ "assetId": "discovered-token-054d80a64e1f36a756129763ca2f1e7a140b50b04c83876ff01dd5fd497a74c5",
654
+ "name": "Unclassified token at 0x0f5d2fb29fb7d3cfee444a200298f468908cc942",
655
+ "representationKind": "unclassified",
656
+ "stableCurrency": null,
657
+ "underlyingAssetId": null,
658
+ "economicReferenceAssetId": null
659
+ },
660
+ {
661
+ "assetId": "discovered-token-0a7f98c8752f15ee02ce0d801f25df8ff78864a1d70aff7e204f7bdb3f8a0692",
662
+ "name": "Unclassified token at 0x49d5c2bdffac6ce2bfdb6640f4f80f226bc10bab",
663
+ "representationKind": "unclassified",
664
+ "stableCurrency": null,
665
+ "underlyingAssetId": null,
666
+ "economicReferenceAssetId": null
667
+ },
668
+ {
669
+ "assetId": "discovered-token-1847342426b765add3c8b4feb724c6b15121f25097cb7917c967c285ca77e804",
670
+ "name": "Unclassified token at 0x02e955e93055e5a9d7fe6e9ee65126b321acef76",
671
+ "representationKind": "unclassified",
672
+ "stableCurrency": null,
673
+ "underlyingAssetId": null,
674
+ "economicReferenceAssetId": null
675
+ },
676
+ {
677
+ "assetId": "discovered-token-288036a90ee0fa72a2751a78a6934cc6ced9e16de91c97ae8e109e2ee6189bc5",
678
+ "name": "Unclassified token at 0xc7198437980c041c805a1edcba50c1ce5db95118",
679
+ "representationKind": "unclassified",
680
+ "stableCurrency": null,
681
+ "underlyingAssetId": null,
682
+ "economicReferenceAssetId": null
683
+ },
684
+ {
685
+ "assetId": "discovered-token-323d07c442f0d089197ae7eea9b3ebb829910177c5b780161a7623aaed5e4371",
686
+ "name": "Unclassified token at 0x3ceeb67533e494c0dc6be579585e3c62916062e0",
687
+ "representationKind": "unclassified",
688
+ "stableCurrency": null,
689
+ "underlyingAssetId": null,
690
+ "economicReferenceAssetId": null
691
+ },
692
+ {
693
+ "assetId": "discovered-token-611597bd13daa43d01a23caa9cca6a98797c64be7fb5b2677370ddbcdeaf01ec",
694
+ "name": "Unclassified token at 0x2b591e99afe9f32eaa6214f7b7629768c40eeb39",
695
+ "representationKind": "unclassified",
696
+ "stableCurrency": null,
697
+ "underlyingAssetId": null,
698
+ "economicReferenceAssetId": null
699
+ },
700
+ {
701
+ "assetId": "discovered-token-69519fd08e31445cad84b0c17a5346b7ee9c5692e270602af9308ca6d8943bb6",
702
+ "name": "Unclassified token at 0x0d8775f648430679a709e98d2b0cb6250d2887ef",
703
+ "representationKind": "unclassified",
704
+ "stableCurrency": null,
705
+ "underlyingAssetId": null,
706
+ "economicReferenceAssetId": null
707
+ },
708
+ {
709
+ "assetId": "discovered-token-9f9965cc065c9becf8d2cb58071524baafea37d27fda9bf683a93ea85f2e653d",
710
+ "name": "Unclassified token at 0x50b7545627a5162f82a992c33b87adc75187b218",
711
+ "representationKind": "unclassified",
712
+ "stableCurrency": null,
713
+ "underlyingAssetId": null,
714
+ "economicReferenceAssetId": null
715
+ },
716
+ {
717
+ "assetId": "discovered-token-b475569f6a15e97ac04e531dd813e9dcc902521c098d60d6ae4d21d53baf1395",
718
+ "name": "Unclassified token at 0x9f8f72aa9304c8b593d555f12ef6589cc3a579a2",
719
+ "representationKind": "unclassified",
720
+ "stableCurrency": null,
721
+ "underlyingAssetId": null,
722
+ "economicReferenceAssetId": null
723
+ },
724
+ {
725
+ "assetId": "discovered-token-e375086901067fe3de023bcdc70f1bafca798e1719ed7e676a98f57de3350a07",
726
+ "name": "Unclassified token at 0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
727
+ "representationKind": "unclassified",
728
+ "stableCurrency": null,
729
+ "underlyingAssetId": null,
730
+ "economicReferenceAssetId": null
731
+ }
732
+ ]);
733
+ var TOKEN_DEPLOYMENTS = deepFreeze([
734
+ {
735
+ "deploymentId": "deployment-0001",
736
+ "assetId": "asset-0001",
737
+ "name": "Ether",
738
+ "representationKind": "native",
739
+ "stableCurrency": null,
740
+ "underlyingAssetId": null,
741
+ "economicReferenceAssetId": null,
742
+ "chainId": "eip155:1",
743
+ "symbol": "ETH",
744
+ "decimals": 18,
745
+ "standard": "native",
746
+ "address": null,
747
+ "status": "active",
748
+ "replacedByDeploymentId": null
749
+ },
750
+ {
751
+ "deploymentId": "deployment-0002",
752
+ "assetId": "asset-0002",
753
+ "name": "Wrapped Ether",
754
+ "representationKind": "wrapped",
755
+ "stableCurrency": null,
756
+ "underlyingAssetId": "asset-0001",
757
+ "economicReferenceAssetId": null,
758
+ "chainId": "eip155:1",
759
+ "symbol": "WETH",
760
+ "decimals": 18,
761
+ "standard": "erc20",
762
+ "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
763
+ "status": "active",
764
+ "replacedByDeploymentId": null
765
+ },
766
+ {
767
+ "deploymentId": "deployment-0003",
768
+ "assetId": "asset-0003",
769
+ "name": "Avalanche",
770
+ "representationKind": "native",
771
+ "stableCurrency": null,
772
+ "underlyingAssetId": null,
773
+ "economicReferenceAssetId": null,
774
+ "chainId": "eip155:43114",
775
+ "symbol": "AVAX",
776
+ "decimals": 18,
777
+ "standard": "native",
778
+ "address": null,
779
+ "status": "active",
780
+ "replacedByDeploymentId": null
781
+ },
782
+ {
783
+ "deploymentId": "deployment-0004",
784
+ "assetId": "asset-0004",
785
+ "name": "Wrapped AVAX",
786
+ "representationKind": "wrapped",
787
+ "stableCurrency": null,
788
+ "underlyingAssetId": "asset-0003",
789
+ "economicReferenceAssetId": null,
790
+ "chainId": "eip155:43114",
791
+ "symbol": "WAVAX",
792
+ "decimals": 18,
793
+ "standard": "erc20",
794
+ "address": "0xb31f66aa3c1e785363f0875a1b74e27b85fd66c7",
795
+ "status": "active",
796
+ "replacedByDeploymentId": null
797
+ },
798
+ {
799
+ "deploymentId": "deployment-0005",
800
+ "assetId": "asset-0005",
801
+ "name": "Solana",
802
+ "representationKind": "native",
803
+ "stableCurrency": null,
804
+ "underlyingAssetId": null,
805
+ "economicReferenceAssetId": null,
806
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
807
+ "symbol": "SOL",
808
+ "decimals": 9,
809
+ "standard": "native",
810
+ "address": null,
811
+ "status": "active",
812
+ "replacedByDeploymentId": null
813
+ },
814
+ {
815
+ "deploymentId": "deployment-0006",
816
+ "assetId": "asset-0006",
817
+ "name": "Wrapped SOL",
818
+ "representationKind": "wrapped",
819
+ "stableCurrency": null,
820
+ "underlyingAssetId": "asset-0005",
821
+ "economicReferenceAssetId": null,
822
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
823
+ "symbol": "WSOL",
824
+ "decimals": 9,
825
+ "standard": "spl-token",
826
+ "address": "So11111111111111111111111111111111111111112",
827
+ "status": "active",
828
+ "replacedByDeploymentId": null
829
+ },
830
+ {
831
+ "deploymentId": "deployment-0007",
832
+ "assetId": "asset-0006",
833
+ "name": "Wrapped SOL",
834
+ "representationKind": "wrapped",
835
+ "stableCurrency": null,
836
+ "underlyingAssetId": "asset-0005",
837
+ "economicReferenceAssetId": null,
838
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
839
+ "symbol": "WSOL",
840
+ "decimals": 9,
841
+ "standard": "spl-token-2022",
842
+ "address": "9pan9bMn5HatX4EJdBwg9VgCa7Uz5HL8N1m5D3NdXejP",
843
+ "status": "active",
844
+ "replacedByDeploymentId": null
845
+ },
846
+ {
847
+ "deploymentId": "deployment-0008",
848
+ "assetId": "asset-0007",
849
+ "name": "USD Coin",
850
+ "representationKind": "issued",
851
+ "stableCurrency": "USD",
852
+ "underlyingAssetId": null,
853
+ "economicReferenceAssetId": null,
854
+ "chainId": "eip155:1",
855
+ "symbol": "USDC",
856
+ "decimals": 6,
857
+ "standard": "erc20",
858
+ "address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
859
+ "status": "active",
860
+ "replacedByDeploymentId": null
861
+ },
862
+ {
863
+ "deploymentId": "deployment-0009",
864
+ "assetId": "asset-0007",
865
+ "name": "USD Coin",
866
+ "representationKind": "issued",
867
+ "stableCurrency": "USD",
868
+ "underlyingAssetId": null,
869
+ "economicReferenceAssetId": null,
870
+ "chainId": "eip155:43114",
871
+ "symbol": "USDC",
872
+ "decimals": 6,
873
+ "standard": "erc20",
874
+ "address": "0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e",
875
+ "status": "active",
876
+ "replacedByDeploymentId": null
877
+ },
878
+ {
879
+ "deploymentId": "deployment-0010",
880
+ "assetId": "asset-0007",
881
+ "name": "USD Coin",
882
+ "representationKind": "issued",
883
+ "stableCurrency": "USD",
884
+ "underlyingAssetId": null,
885
+ "economicReferenceAssetId": null,
886
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
887
+ "symbol": "USDC",
888
+ "decimals": 6,
889
+ "standard": "spl-token",
890
+ "address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
891
+ "status": "active",
892
+ "replacedByDeploymentId": null
893
+ },
894
+ {
895
+ "deploymentId": "deployment-0011",
896
+ "assetId": "asset-0008",
897
+ "name": "Euro Coin",
898
+ "representationKind": "issued",
899
+ "stableCurrency": "EUR",
900
+ "underlyingAssetId": null,
901
+ "economicReferenceAssetId": null,
902
+ "chainId": "eip155:1",
903
+ "symbol": "EURC",
904
+ "decimals": 6,
905
+ "standard": "erc20",
906
+ "address": "0x1abaea1f7c830bd89acc67ec4af516284b1bc33c",
907
+ "status": "active",
908
+ "replacedByDeploymentId": null
909
+ },
910
+ {
911
+ "deploymentId": "deployment-0012",
912
+ "assetId": "asset-0008",
913
+ "name": "Euro Coin",
914
+ "representationKind": "issued",
915
+ "stableCurrency": "EUR",
916
+ "underlyingAssetId": null,
917
+ "economicReferenceAssetId": null,
918
+ "chainId": "eip155:43114",
919
+ "symbol": "EURC",
920
+ "decimals": 6,
921
+ "standard": "erc20",
922
+ "address": "0xc891eb4cbdeff6e073e859e987815ed1505c2acd",
923
+ "status": "active",
924
+ "replacedByDeploymentId": null
925
+ },
926
+ {
927
+ "deploymentId": "deployment-0013",
928
+ "assetId": "asset-0008",
929
+ "name": "Euro Coin",
930
+ "representationKind": "issued",
931
+ "stableCurrency": "EUR",
932
+ "underlyingAssetId": null,
933
+ "economicReferenceAssetId": null,
934
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
935
+ "symbol": "EURC",
936
+ "decimals": 6,
937
+ "standard": "spl-token",
938
+ "address": "HzwqbKZw8HxMN6bF2yFZNrht3c2iXXzpKcFu7uBEDKtr",
939
+ "status": "active",
940
+ "replacedByDeploymentId": null
941
+ },
942
+ {
943
+ "deploymentId": "deployment-0014",
944
+ "assetId": "asset-0009",
945
+ "name": "Tether USDt",
946
+ "representationKind": "issued",
947
+ "stableCurrency": "USD",
948
+ "underlyingAssetId": null,
949
+ "economicReferenceAssetId": null,
950
+ "chainId": "eip155:1",
951
+ "symbol": "USDT",
952
+ "decimals": 6,
953
+ "standard": "erc20",
954
+ "address": "0xdac17f958d2ee523a2206206994597c13d831ec7",
955
+ "status": "active",
956
+ "replacedByDeploymentId": null
957
+ },
958
+ {
959
+ "deploymentId": "deployment-0015",
960
+ "assetId": "asset-0009",
961
+ "name": "Tether USDt",
962
+ "representationKind": "issued",
963
+ "stableCurrency": "USD",
964
+ "underlyingAssetId": null,
965
+ "economicReferenceAssetId": null,
966
+ "chainId": "eip155:43114",
967
+ "symbol": "USDT",
968
+ "decimals": 6,
969
+ "standard": "erc20",
970
+ "address": "0x9702230a8ea53601f5cd2dc00fdbc13d4df4a8c7",
971
+ "status": "active",
972
+ "replacedByDeploymentId": null
973
+ },
974
+ {
975
+ "deploymentId": "deployment-0016",
976
+ "assetId": "asset-0009",
977
+ "name": "Tether USDt",
978
+ "representationKind": "issued",
979
+ "stableCurrency": "USD",
980
+ "underlyingAssetId": null,
981
+ "economicReferenceAssetId": null,
982
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
983
+ "symbol": "USDT",
984
+ "decimals": 6,
985
+ "standard": "spl-token",
986
+ "address": "Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB",
987
+ "status": "active",
988
+ "replacedByDeploymentId": null
989
+ },
990
+ {
991
+ "deploymentId": "deployment-0017",
992
+ "assetId": "asset-0010",
993
+ "name": "Tether EURt",
994
+ "representationKind": "issued",
995
+ "stableCurrency": "EUR",
996
+ "underlyingAssetId": null,
997
+ "economicReferenceAssetId": null,
998
+ "chainId": "eip155:1",
999
+ "symbol": "EURT",
1000
+ "decimals": 6,
1001
+ "standard": "erc20",
1002
+ "address": "0xc581b735a1688071a1746c968e0798d642ede491",
1003
+ "status": "retired",
1004
+ "replacedByDeploymentId": null
1005
+ },
1006
+ {
1007
+ "deploymentId": "deployment-0018",
1008
+ "assetId": "asset-0011",
1009
+ "name": "Bridged USD Coin (USDC.e)",
1010
+ "representationKind": "bridged",
1011
+ "stableCurrency": "USD",
1012
+ "underlyingAssetId": null,
1013
+ "economicReferenceAssetId": "asset-0007",
1014
+ "chainId": "eip155:43114",
1015
+ "symbol": "USDC.e",
1016
+ "decimals": 6,
1017
+ "standard": "erc20",
1018
+ "address": "0xa7d7079b0fead91f3e65f86e8915cb59c1a4c664",
1019
+ "status": "legacy",
1020
+ "replacedByDeploymentId": null
1021
+ },
1022
+ {
1023
+ "deploymentId": "deployment-0019",
1024
+ "assetId": "asset-0012",
1025
+ "name": "Dai",
1026
+ "representationKind": "issued",
1027
+ "stableCurrency": "USD",
1028
+ "underlyingAssetId": null,
1029
+ "economicReferenceAssetId": null,
1030
+ "chainId": "eip155:1",
1031
+ "symbol": "DAI",
1032
+ "decimals": 18,
1033
+ "standard": "erc20",
1034
+ "address": "0x6b175474e89094c44da98b954eedeac495271d0f",
1035
+ "status": "active",
1036
+ "replacedByDeploymentId": null
1037
+ },
1038
+ {
1039
+ "deploymentId": "deployment-0020",
1040
+ "assetId": "asset-0013",
1041
+ "name": "Sky Dollar",
1042
+ "representationKind": "issued",
1043
+ "stableCurrency": "USD",
1044
+ "underlyingAssetId": null,
1045
+ "economicReferenceAssetId": null,
1046
+ "chainId": "eip155:1",
1047
+ "symbol": "USDS",
1048
+ "decimals": 18,
1049
+ "standard": "erc20",
1050
+ "address": "0xdc035d45d973e3ec169d2276ddab16f1e407384f",
1051
+ "status": "active",
1052
+ "replacedByDeploymentId": null
1053
+ },
1054
+ {
1055
+ "deploymentId": "deployment-0021",
1056
+ "assetId": "asset-0014",
1057
+ "name": "Bridged Sky Dollar",
1058
+ "representationKind": "bridged",
1059
+ "stableCurrency": "USD",
1060
+ "underlyingAssetId": null,
1061
+ "economicReferenceAssetId": "asset-0013",
1062
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
1063
+ "symbol": "USDS",
1064
+ "decimals": 6,
1065
+ "standard": "spl-token",
1066
+ "address": "USDSwr9ApdHk5bvJKMjzff41FfuX8bSxdKcR81vTwcA",
1067
+ "status": "active",
1068
+ "replacedByDeploymentId": null
1069
+ },
1070
+ {
1071
+ "deploymentId": "deployment-0022",
1072
+ "assetId": "asset-0015",
1073
+ "name": "PayPal USD (PYUSD)",
1074
+ "representationKind": "issued",
1075
+ "stableCurrency": "USD",
1076
+ "underlyingAssetId": null,
1077
+ "economicReferenceAssetId": null,
1078
+ "chainId": "eip155:1",
1079
+ "symbol": "PYUSD",
1080
+ "decimals": 6,
1081
+ "standard": "erc20",
1082
+ "address": "0x6c3ea9036406852006290770bedfcaba0e23a0e8",
1083
+ "status": "active",
1084
+ "replacedByDeploymentId": null
1085
+ },
1086
+ {
1087
+ "deploymentId": "deployment-0023",
1088
+ "assetId": "asset-0015",
1089
+ "name": "PayPal USD (PYUSD)",
1090
+ "representationKind": "issued",
1091
+ "stableCurrency": "USD",
1092
+ "underlyingAssetId": null,
1093
+ "economicReferenceAssetId": null,
1094
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
1095
+ "symbol": "PYUSD",
1096
+ "decimals": 6,
1097
+ "standard": "spl-token-2022",
1098
+ "address": "2b1kV6DkPAnxd5ixfnxCpjxmKwqjjaYmCZfHsFu24GXo",
1099
+ "status": "active",
1100
+ "replacedByDeploymentId": null
1101
+ },
1102
+ {
1103
+ "deploymentId": "deployment-0024",
1104
+ "assetId": "asset-0016",
1105
+ "name": "Global Dollar (USDG)",
1106
+ "representationKind": "issued",
1107
+ "stableCurrency": "USD",
1108
+ "underlyingAssetId": null,
1109
+ "economicReferenceAssetId": null,
1110
+ "chainId": "eip155:1",
1111
+ "symbol": "USDG",
1112
+ "decimals": 6,
1113
+ "standard": "erc20",
1114
+ "address": "0xe343167631d89b6ffc58b88d6b7fb0228795491d",
1115
+ "status": "active",
1116
+ "replacedByDeploymentId": null
1117
+ },
1118
+ {
1119
+ "deploymentId": "deployment-0025",
1120
+ "assetId": "asset-0016",
1121
+ "name": "Global Dollar (USDG)",
1122
+ "representationKind": "issued",
1123
+ "stableCurrency": "USD",
1124
+ "underlyingAssetId": null,
1125
+ "economicReferenceAssetId": null,
1126
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
1127
+ "symbol": "USDG",
1128
+ "decimals": 6,
1129
+ "standard": "spl-token-2022",
1130
+ "address": "2u1tszSeqZ3qBWF3uNGPFc8TzMk2tdiwknnRMWGWjGWH",
1131
+ "status": "active",
1132
+ "replacedByDeploymentId": null
1133
+ },
1134
+ {
1135
+ "deploymentId": "deployment-0026",
1136
+ "assetId": "asset-0017",
1137
+ "name": "Pax Dollar (USDP)",
1138
+ "representationKind": "issued",
1139
+ "stableCurrency": "USD",
1140
+ "underlyingAssetId": null,
1141
+ "economicReferenceAssetId": null,
1142
+ "chainId": "eip155:1",
1143
+ "symbol": "USDP",
1144
+ "decimals": 18,
1145
+ "standard": "erc20",
1146
+ "address": "0x8e870d67f660d95d5be530380d0ec0bd388289e1",
1147
+ "status": "active",
1148
+ "replacedByDeploymentId": null
1149
+ },
1150
+ {
1151
+ "deploymentId": "deployment-0027",
1152
+ "assetId": "asset-0017",
1153
+ "name": "Pax Dollar (USDP)",
1154
+ "representationKind": "issued",
1155
+ "stableCurrency": "USD",
1156
+ "underlyingAssetId": null,
1157
+ "economicReferenceAssetId": null,
1158
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
1159
+ "symbol": "USDP",
1160
+ "decimals": 6,
1161
+ "standard": "spl-token-2022",
1162
+ "address": "HVbpJAQGNpkgBaYBZQBR1t7yFdvaYVp2vCQQfKKEN4tM",
1163
+ "status": "active",
1164
+ "replacedByDeploymentId": null
1165
+ },
1166
+ {
1167
+ "deploymentId": "deployment-0028",
1168
+ "assetId": "asset-0018",
1169
+ "name": "USDe",
1170
+ "representationKind": "issued",
1171
+ "stableCurrency": "USD",
1172
+ "underlyingAssetId": null,
1173
+ "economicReferenceAssetId": null,
1174
+ "chainId": "eip155:1",
1175
+ "symbol": "USDe",
1176
+ "decimals": 18,
1177
+ "standard": "erc20",
1178
+ "address": "0x4c9edd5852cd905f086c759e8383e09bff1e68b3",
1179
+ "status": "active",
1180
+ "replacedByDeploymentId": null
1181
+ },
1182
+ {
1183
+ "deploymentId": "deployment-0029",
1184
+ "assetId": "asset-0019",
1185
+ "name": "GHO",
1186
+ "representationKind": "issued",
1187
+ "stableCurrency": "USD",
1188
+ "underlyingAssetId": null,
1189
+ "economicReferenceAssetId": null,
1190
+ "chainId": "eip155:1",
1191
+ "symbol": "GHO",
1192
+ "decimals": 18,
1193
+ "standard": "erc20",
1194
+ "address": "0x40d16fc0246ad3160ccc09b8d0d3a2cd28ae6c2f",
1195
+ "status": "active",
1196
+ "replacedByDeploymentId": null
1197
+ },
1198
+ {
1199
+ "deploymentId": "deployment-0030",
1200
+ "assetId": "asset-0020",
1201
+ "name": "Bridged GHO",
1202
+ "representationKind": "bridged",
1203
+ "stableCurrency": "USD",
1204
+ "underlyingAssetId": null,
1205
+ "economicReferenceAssetId": "asset-0019",
1206
+ "chainId": "eip155:43114",
1207
+ "symbol": "GHO",
1208
+ "decimals": 18,
1209
+ "standard": "erc20",
1210
+ "address": "0xfc421ad3c883bf9e7c4f42de845c4e4405799e73",
1211
+ "status": "active",
1212
+ "replacedByDeploymentId": null
1213
+ },
1214
+ {
1215
+ "deploymentId": "deployment-0031",
1216
+ "assetId": "asset-0021",
1217
+ "name": "First Digital USD",
1218
+ "representationKind": "issued",
1219
+ "stableCurrency": "USD",
1220
+ "underlyingAssetId": null,
1221
+ "economicReferenceAssetId": null,
1222
+ "chainId": "eip155:1",
1223
+ "symbol": "FDUSD",
1224
+ "decimals": 18,
1225
+ "standard": "erc20",
1226
+ "address": "0xc5f0f7b66764f6ec8c8dff7ba683102295e16409",
1227
+ "status": "active",
1228
+ "replacedByDeploymentId": null
1229
+ },
1230
+ {
1231
+ "deploymentId": "deployment-0032",
1232
+ "assetId": "asset-0021",
1233
+ "name": "First Digital USD",
1234
+ "representationKind": "issued",
1235
+ "stableCurrency": "USD",
1236
+ "underlyingAssetId": null,
1237
+ "economicReferenceAssetId": null,
1238
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
1239
+ "symbol": "FDUSD",
1240
+ "decimals": 6,
1241
+ "standard": "spl-token",
1242
+ "address": "9zNQRsGLjNKwCUU5Gq5LR8beUCPzQMVMqKAi3SSZh54u",
1243
+ "status": "active",
1244
+ "replacedByDeploymentId": null
1245
+ },
1246
+ {
1247
+ "deploymentId": "deployment-0033",
1248
+ "assetId": "asset-0022",
1249
+ "name": "Ripple USD",
1250
+ "representationKind": "issued",
1251
+ "stableCurrency": "USD",
1252
+ "underlyingAssetId": null,
1253
+ "economicReferenceAssetId": null,
1254
+ "chainId": "eip155:1",
1255
+ "symbol": "RLUSD",
1256
+ "decimals": 18,
1257
+ "standard": "erc20",
1258
+ "address": "0x8292bb45bf1ee4d140127049757c2e0ff06317ed",
1259
+ "status": "active",
1260
+ "replacedByDeploymentId": null
1261
+ },
1262
+ {
1263
+ "deploymentId": "deployment-0034",
1264
+ "assetId": "asset-0023",
1265
+ "name": "Agora USD",
1266
+ "representationKind": "issued",
1267
+ "stableCurrency": "USD",
1268
+ "underlyingAssetId": null,
1269
+ "economicReferenceAssetId": null,
1270
+ "chainId": "eip155:1",
1271
+ "symbol": "AUSD",
1272
+ "decimals": 6,
1273
+ "standard": "erc20",
1274
+ "address": "0x00000000efe302beaa2b3e6e1b18d08d69a9012a",
1275
+ "status": "active",
1276
+ "replacedByDeploymentId": null
1277
+ },
1278
+ {
1279
+ "deploymentId": "deployment-0035",
1280
+ "assetId": "asset-0023",
1281
+ "name": "Agora USD",
1282
+ "representationKind": "issued",
1283
+ "stableCurrency": "USD",
1284
+ "underlyingAssetId": null,
1285
+ "economicReferenceAssetId": null,
1286
+ "chainId": "eip155:43114",
1287
+ "symbol": "AUSD",
1288
+ "decimals": 6,
1289
+ "standard": "erc20",
1290
+ "address": "0x00000000efe302beaa2b3e6e1b18d08d69a9012a",
1291
+ "status": "active",
1292
+ "replacedByDeploymentId": null
1293
+ },
1294
+ {
1295
+ "deploymentId": "deployment-0036",
1296
+ "assetId": "asset-0023",
1297
+ "name": "Agora USD",
1298
+ "representationKind": "issued",
1299
+ "stableCurrency": "USD",
1300
+ "underlyingAssetId": null,
1301
+ "economicReferenceAssetId": null,
1302
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
1303
+ "symbol": "AUSD",
1304
+ "decimals": 6,
1305
+ "standard": "spl-token-2022",
1306
+ "address": "AUSD1jCcCyPLybk1YnvPWsHQSrZ46dxwoMniN4N2UEB9",
1307
+ "status": "active",
1308
+ "replacedByDeploymentId": null
1309
+ },
1310
+ {
1311
+ "deploymentId": "deployment-0037",
1312
+ "assetId": "asset-0024",
1313
+ "name": "Jupiter USD",
1314
+ "representationKind": "issued",
1315
+ "stableCurrency": "USD",
1316
+ "underlyingAssetId": null,
1317
+ "economicReferenceAssetId": null,
1318
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
1319
+ "symbol": "JupUSD",
1320
+ "decimals": 6,
1321
+ "standard": "spl-token",
1322
+ "address": "JuprjznTrTSp2UFa3ZBUFgwdAmtZCq4MQCwysN55USD",
1323
+ "status": "active",
1324
+ "replacedByDeploymentId": null
1325
+ },
1326
+ {
1327
+ "deploymentId": "deployment-0038",
1328
+ "assetId": "asset-0025",
1329
+ "name": "JPY Coin",
1330
+ "representationKind": "issued",
1331
+ "stableCurrency": "JPY",
1332
+ "underlyingAssetId": null,
1333
+ "economicReferenceAssetId": null,
1334
+ "chainId": "eip155:1",
1335
+ "symbol": "JPYC",
1336
+ "decimals": 18,
1337
+ "standard": "erc20",
1338
+ "address": "0xe7c3d8c9a439fede00d2600032d5db0be71c3c29",
1339
+ "status": "active",
1340
+ "replacedByDeploymentId": null
1341
+ },
1342
+ {
1343
+ "deploymentId": "deployment-0039",
1344
+ "assetId": "asset-0025",
1345
+ "name": "JPY Coin",
1346
+ "representationKind": "issued",
1347
+ "stableCurrency": "JPY",
1348
+ "underlyingAssetId": null,
1349
+ "economicReferenceAssetId": null,
1350
+ "chainId": "eip155:43114",
1351
+ "symbol": "JPYC",
1352
+ "decimals": 18,
1353
+ "standard": "erc20",
1354
+ "address": "0xe7c3d8c9a439fede00d2600032d5db0be71c3c29",
1355
+ "status": "active",
1356
+ "replacedByDeploymentId": null
1357
+ },
1358
+ {
1359
+ "deploymentId": "deployment-0040",
1360
+ "assetId": "asset-0026",
1361
+ "name": "Euro CoinVertible",
1362
+ "representationKind": "issued",
1363
+ "stableCurrency": "EUR",
1364
+ "underlyingAssetId": null,
1365
+ "economicReferenceAssetId": null,
1366
+ "chainId": "eip155:1",
1367
+ "symbol": "EURCV",
1368
+ "decimals": 18,
1369
+ "standard": "erc20",
1370
+ "address": "0x5f7827fdeb7c20b443265fc2f40845b715385ff2",
1371
+ "status": "active",
1372
+ "replacedByDeploymentId": null
1373
+ },
1374
+ {
1375
+ "deploymentId": "deployment-0041",
1376
+ "assetId": "asset-0026",
1377
+ "name": "Euro CoinVertible",
1378
+ "representationKind": "issued",
1379
+ "stableCurrency": "EUR",
1380
+ "underlyingAssetId": null,
1381
+ "economicReferenceAssetId": null,
1382
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
1383
+ "symbol": "EURCV",
1384
+ "decimals": 2,
1385
+ "standard": "spl-token-2022",
1386
+ "address": "DghpMkatCiUsofbTmid3M3kAbDTPqDwKiYHnudXeGG52",
1387
+ "status": "active",
1388
+ "replacedByDeploymentId": null
1389
+ },
1390
+ {
1391
+ "deploymentId": "deployment-0042",
1392
+ "assetId": "asset-0027",
1393
+ "name": "EURAU",
1394
+ "representationKind": "issued",
1395
+ "stableCurrency": "EUR",
1396
+ "underlyingAssetId": null,
1397
+ "economicReferenceAssetId": null,
1398
+ "chainId": "eip155:1",
1399
+ "symbol": "EURAU",
1400
+ "decimals": 6,
1401
+ "standard": "erc20",
1402
+ "address": "0x4933a85b5b5466fbaf179f72d3de273c287ec2c2",
1403
+ "status": "active",
1404
+ "replacedByDeploymentId": null
1405
+ },
1406
+ {
1407
+ "deploymentId": "deployment-0043",
1408
+ "assetId": "asset-0027",
1409
+ "name": "EURAU",
1410
+ "representationKind": "issued",
1411
+ "stableCurrency": "EUR",
1412
+ "underlyingAssetId": null,
1413
+ "economicReferenceAssetId": null,
1414
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
1415
+ "symbol": "EURAU",
1416
+ "decimals": 6,
1417
+ "standard": "spl-token-2022",
1418
+ "address": "9pCWprxbZMW2rYSMhPTeoyLMV2sN2WJqshdT7DQVt6hS",
1419
+ "status": "active",
1420
+ "replacedByDeploymentId": null
1421
+ },
1422
+ {
1423
+ "deploymentId": "deployment-0044",
1424
+ "assetId": "asset-0028",
1425
+ "name": "EUROP",
1426
+ "representationKind": "issued",
1427
+ "stableCurrency": "EUR",
1428
+ "underlyingAssetId": null,
1429
+ "economicReferenceAssetId": null,
1430
+ "chainId": "eip155:1",
1431
+ "symbol": "EUROP",
1432
+ "decimals": 6,
1433
+ "standard": "erc20",
1434
+ "address": "0x888883b5f5d21fb10dfeb70e8f9722b9fb0e5e51",
1435
+ "status": "active",
1436
+ "replacedByDeploymentId": null
1437
+ },
1438
+ {
1439
+ "deploymentId": "deployment-0045",
1440
+ "assetId": "asset-0028",
1441
+ "name": "EUROP",
1442
+ "representationKind": "issued",
1443
+ "stableCurrency": "EUR",
1444
+ "underlyingAssetId": null,
1445
+ "economicReferenceAssetId": null,
1446
+ "chainId": "eip155:43114",
1447
+ "symbol": "EUROP",
1448
+ "decimals": 6,
1449
+ "standard": "erc20",
1450
+ "address": "0x8835a2f66a7aaccb297cb985831a616b75e2e16c",
1451
+ "status": "active",
1452
+ "replacedByDeploymentId": null
1453
+ },
1454
+ {
1455
+ "deploymentId": "deployment-0046",
1456
+ "assetId": "asset-0028",
1457
+ "name": "EUROP",
1458
+ "representationKind": "issued",
1459
+ "stableCurrency": "EUR",
1460
+ "underlyingAssetId": null,
1461
+ "economicReferenceAssetId": null,
1462
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
1463
+ "symbol": "EUROP",
1464
+ "decimals": 6,
1465
+ "standard": "spl-token-2022",
1466
+ "address": "euro5sNHrZC2wu2RoLvy6xxoVMc3Qnd1vjxoWf4MftA",
1467
+ "status": "active",
1468
+ "replacedByDeploymentId": null
1469
+ },
1470
+ {
1471
+ "deploymentId": "deployment-0047",
1472
+ "assetId": "asset-0029",
1473
+ "name": "GYEN",
1474
+ "representationKind": "issued",
1475
+ "stableCurrency": "JPY",
1476
+ "underlyingAssetId": null,
1477
+ "economicReferenceAssetId": null,
1478
+ "chainId": "eip155:1",
1479
+ "symbol": "GYEN",
1480
+ "decimals": 6,
1481
+ "standard": "erc20",
1482
+ "address": "0xc08512927d12348f6620a698105e1baac6ecd911",
1483
+ "status": "winding-down",
1484
+ "replacedByDeploymentId": null
1485
+ },
1486
+ {
1487
+ "deploymentId": "deployment-0048",
1488
+ "assetId": "asset-0029",
1489
+ "name": "GYEN",
1490
+ "representationKind": "issued",
1491
+ "stableCurrency": "JPY",
1492
+ "underlyingAssetId": null,
1493
+ "economicReferenceAssetId": null,
1494
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
1495
+ "symbol": "GYEN",
1496
+ "decimals": 6,
1497
+ "standard": "spl-token-2022",
1498
+ "address": "Crn4x1Y2HUKko7ox2EZMT6N2t2ZyH7eKtwkBGVnhEq1g",
1499
+ "status": "winding-down",
1500
+ "replacedByDeploymentId": null
1501
+ },
1502
+ {
1503
+ "deploymentId": "deployment-0049",
1504
+ "assetId": "asset-0030",
1505
+ "name": "ZUSD",
1506
+ "representationKind": "issued",
1507
+ "stableCurrency": "USD",
1508
+ "underlyingAssetId": null,
1509
+ "economicReferenceAssetId": null,
1510
+ "chainId": "eip155:1",
1511
+ "symbol": "ZUSD",
1512
+ "decimals": 6,
1513
+ "standard": "erc20",
1514
+ "address": "0xc56c2b7e71b54d38aab6d52e94a04cbfa8f604fa",
1515
+ "status": "winding-down",
1516
+ "replacedByDeploymentId": null
1517
+ },
1518
+ {
1519
+ "deploymentId": "deployment-0050",
1520
+ "assetId": "asset-0030",
1521
+ "name": "ZUSD",
1522
+ "representationKind": "issued",
1523
+ "stableCurrency": "USD",
1524
+ "underlyingAssetId": null,
1525
+ "economicReferenceAssetId": null,
1526
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
1527
+ "symbol": "ZUSD",
1528
+ "decimals": 6,
1529
+ "standard": "spl-token-2022",
1530
+ "address": "FrBfWJ4qE5sCzKm3k3JaAtqZcXUh4LvJygDeketsrsH4",
1531
+ "status": "winding-down",
1532
+ "replacedByDeploymentId": null
1533
+ },
1534
+ {
1535
+ "deploymentId": "deployment-0051",
1536
+ "assetId": "asset-0031",
1537
+ "name": "Angle EURA",
1538
+ "representationKind": "issued",
1539
+ "stableCurrency": "EUR",
1540
+ "underlyingAssetId": null,
1541
+ "economicReferenceAssetId": null,
1542
+ "chainId": "eip155:1",
1543
+ "symbol": "EURA",
1544
+ "decimals": 18,
1545
+ "standard": "erc20",
1546
+ "address": "0x1a7e4e63778b4f12a199c062f3efdd288afcbce8",
1547
+ "status": "winding-down",
1548
+ "replacedByDeploymentId": null
1549
+ },
1550
+ {
1551
+ "deploymentId": "deployment-0052",
1552
+ "assetId": "asset-0032",
1553
+ "name": "STASIS EURS",
1554
+ "representationKind": "issued",
1555
+ "stableCurrency": "EUR",
1556
+ "underlyingAssetId": null,
1557
+ "economicReferenceAssetId": null,
1558
+ "chainId": "eip155:1",
1559
+ "symbol": "EURS",
1560
+ "decimals": 2,
1561
+ "standard": "erc20",
1562
+ "address": "0xdb25f211ab05b1c97d595516f45794528a807ad8",
1563
+ "status": "active",
1564
+ "replacedByDeploymentId": null
1565
+ },
1566
+ {
1567
+ "deploymentId": "deployment-0053",
1568
+ "assetId": "asset-0033",
1569
+ "name": "Monerium EURe",
1570
+ "representationKind": "issued",
1571
+ "stableCurrency": "EUR",
1572
+ "underlyingAssetId": null,
1573
+ "economicReferenceAssetId": null,
1574
+ "chainId": "eip155:1",
1575
+ "symbol": "EURe",
1576
+ "decimals": 18,
1577
+ "standard": "erc20",
1578
+ "address": "0x3231cb76718cdef2155fc47b5286d82e6eda273f",
1579
+ "status": "legacy",
1580
+ "replacedByDeploymentId": "deployment-0054"
1581
+ },
1582
+ {
1583
+ "deploymentId": "deployment-0054",
1584
+ "assetId": "asset-0033",
1585
+ "name": "Monerium EURe",
1586
+ "representationKind": "issued",
1587
+ "stableCurrency": "EUR",
1588
+ "underlyingAssetId": null,
1589
+ "economicReferenceAssetId": null,
1590
+ "chainId": "eip155:1",
1591
+ "symbol": "EURe",
1592
+ "decimals": 18,
1593
+ "standard": "erc20",
1594
+ "address": "0x39b8b6385416f4ca36a20319f70d28621895279d",
1595
+ "status": "active",
1596
+ "replacedByDeploymentId": null
1597
+ },
1598
+ {
1599
+ "deploymentId": "deployment-0055",
1600
+ "assetId": "asset-0034",
1601
+ "name": "Uniswap",
1602
+ "representationKind": "issued",
1603
+ "stableCurrency": null,
1604
+ "underlyingAssetId": null,
1605
+ "economicReferenceAssetId": null,
1606
+ "chainId": "eip155:1",
1607
+ "symbol": "UNI",
1608
+ "decimals": 18,
1609
+ "standard": "erc20",
1610
+ "address": "0x1f9840a85d5af5bf1d1762f925bdaddc4201f984",
1611
+ "status": "active",
1612
+ "replacedByDeploymentId": null
1613
+ },
1614
+ {
1615
+ "deploymentId": "deployment-0056",
1616
+ "assetId": "asset-0035",
1617
+ "name": "Aave",
1618
+ "representationKind": "issued",
1619
+ "stableCurrency": null,
1620
+ "underlyingAssetId": null,
1621
+ "economicReferenceAssetId": null,
1622
+ "chainId": "eip155:1",
1623
+ "symbol": "AAVE",
1624
+ "decimals": 18,
1625
+ "standard": "erc20",
1626
+ "address": "0x7fc66500c84a76ad7e9c93437bfc5ac33e2ddae9",
1627
+ "status": "active",
1628
+ "replacedByDeploymentId": null
1629
+ },
1630
+ {
1631
+ "deploymentId": "deployment-0057",
1632
+ "assetId": "asset-0036",
1633
+ "name": "Chainlink",
1634
+ "representationKind": "issued",
1635
+ "stableCurrency": null,
1636
+ "underlyingAssetId": null,
1637
+ "economicReferenceAssetId": null,
1638
+ "chainId": "eip155:1",
1639
+ "symbol": "LINK",
1640
+ "decimals": 18,
1641
+ "standard": "erc20",
1642
+ "address": "0x514910771af9ca656af840dff83e8264ecf986ca",
1643
+ "status": "active",
1644
+ "replacedByDeploymentId": null
1645
+ },
1646
+ {
1647
+ "deploymentId": "deployment-0058",
1648
+ "assetId": "asset-0037",
1649
+ "name": "Bridged Chainlink",
1650
+ "representationKind": "bridged",
1651
+ "stableCurrency": null,
1652
+ "underlyingAssetId": null,
1653
+ "economicReferenceAssetId": "asset-0036",
1654
+ "chainId": "eip155:43114",
1655
+ "symbol": "LINK",
1656
+ "decimals": 18,
1657
+ "standard": "erc20",
1658
+ "address": "0x5947bb275c521040051d82396192181b413227a3",
1659
+ "status": "active",
1660
+ "replacedByDeploymentId": null
1661
+ },
1662
+ {
1663
+ "deploymentId": "deployment-0059",
1664
+ "assetId": "asset-0038",
1665
+ "name": "Trader Joe",
1666
+ "representationKind": "issued",
1667
+ "stableCurrency": null,
1668
+ "underlyingAssetId": null,
1669
+ "economicReferenceAssetId": null,
1670
+ "chainId": "eip155:43114",
1671
+ "symbol": "JOE",
1672
+ "decimals": 18,
1673
+ "standard": "erc20",
1674
+ "address": "0x6e84a6216ea6dacc71ee8e6b0a5b7322eebc0fdd",
1675
+ "status": "active",
1676
+ "replacedByDeploymentId": null
1677
+ },
1678
+ {
1679
+ "deploymentId": "deployment-0060",
1680
+ "assetId": "asset-0039",
1681
+ "name": "Jupiter",
1682
+ "representationKind": "issued",
1683
+ "stableCurrency": null,
1684
+ "underlyingAssetId": null,
1685
+ "economicReferenceAssetId": null,
1686
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
1687
+ "symbol": "JUP",
1688
+ "decimals": 6,
1689
+ "standard": "spl-token",
1690
+ "address": "JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN",
1691
+ "status": "active",
1692
+ "replacedByDeploymentId": null
1693
+ },
1694
+ {
1695
+ "deploymentId": "discovered-token-054d80a64e1f36a756129763ca2f1e7a140b50b04c83876ff01dd5fd497a74c5",
1696
+ "assetId": "discovered-token-054d80a64e1f36a756129763ca2f1e7a140b50b04c83876ff01dd5fd497a74c5",
1697
+ "name": "Unclassified token at 0x0f5d2fb29fb7d3cfee444a200298f468908cc942",
1698
+ "representationKind": "unclassified",
1699
+ "stableCurrency": null,
1700
+ "underlyingAssetId": null,
1701
+ "economicReferenceAssetId": null,
1702
+ "chainId": "eip155:1",
1703
+ "symbol": "0x0f5d2fb29fb7d3cfee444a200298f468908cc942",
1704
+ "decimals": 18,
1705
+ "standard": "erc20",
1706
+ "address": "0x0f5d2fb29fb7d3cfee444a200298f468908cc942",
1707
+ "status": "active",
1708
+ "replacedByDeploymentId": null
1709
+ },
1710
+ {
1711
+ "deploymentId": "discovered-token-0a7f98c8752f15ee02ce0d801f25df8ff78864a1d70aff7e204f7bdb3f8a0692",
1712
+ "assetId": "discovered-token-0a7f98c8752f15ee02ce0d801f25df8ff78864a1d70aff7e204f7bdb3f8a0692",
1713
+ "name": "Unclassified token at 0x49d5c2bdffac6ce2bfdb6640f4f80f226bc10bab",
1714
+ "representationKind": "unclassified",
1715
+ "stableCurrency": null,
1716
+ "underlyingAssetId": null,
1717
+ "economicReferenceAssetId": null,
1718
+ "chainId": "eip155:43114",
1719
+ "symbol": "0x49d5c2bdffac6ce2bfdb6640f4f80f226bc10bab",
1720
+ "decimals": 18,
1721
+ "standard": "erc20",
1722
+ "address": "0x49d5c2bdffac6ce2bfdb6640f4f80f226bc10bab",
1723
+ "status": "active",
1724
+ "replacedByDeploymentId": null
1725
+ },
1726
+ {
1727
+ "deploymentId": "discovered-token-1847342426b765add3c8b4feb724c6b15121f25097cb7917c967c285ca77e804",
1728
+ "assetId": "discovered-token-1847342426b765add3c8b4feb724c6b15121f25097cb7917c967c285ca77e804",
1729
+ "name": "Unclassified token at 0x02e955e93055e5a9d7fe6e9ee65126b321acef76",
1730
+ "representationKind": "unclassified",
1731
+ "stableCurrency": null,
1732
+ "underlyingAssetId": null,
1733
+ "economicReferenceAssetId": null,
1734
+ "chainId": "eip155:43114",
1735
+ "symbol": "0x02e955e93055e5a9d7fe6e9ee65126b321acef76",
1736
+ "decimals": 9,
1737
+ "standard": "erc20",
1738
+ "address": "0x02e955e93055e5a9d7fe6e9ee65126b321acef76",
1739
+ "status": "active",
1740
+ "replacedByDeploymentId": null
1741
+ },
1742
+ {
1743
+ "deploymentId": "discovered-token-288036a90ee0fa72a2751a78a6934cc6ced9e16de91c97ae8e109e2ee6189bc5",
1744
+ "assetId": "discovered-token-288036a90ee0fa72a2751a78a6934cc6ced9e16de91c97ae8e109e2ee6189bc5",
1745
+ "name": "Unclassified token at 0xc7198437980c041c805a1edcba50c1ce5db95118",
1746
+ "representationKind": "unclassified",
1747
+ "stableCurrency": null,
1748
+ "underlyingAssetId": null,
1749
+ "economicReferenceAssetId": null,
1750
+ "chainId": "eip155:43114",
1751
+ "symbol": "0xc7198437980c041c805a1edcba50c1ce5db95118",
1752
+ "decimals": 6,
1753
+ "standard": "erc20",
1754
+ "address": "0xc7198437980c041c805a1edcba50c1ce5db95118",
1755
+ "status": "active",
1756
+ "replacedByDeploymentId": null
1757
+ },
1758
+ {
1759
+ "deploymentId": "discovered-token-323d07c442f0d089197ae7eea9b3ebb829910177c5b780161a7623aaed5e4371",
1760
+ "assetId": "discovered-token-323d07c442f0d089197ae7eea9b3ebb829910177c5b780161a7623aaed5e4371",
1761
+ "name": "Unclassified token at 0x3ceeb67533e494c0dc6be579585e3c62916062e0",
1762
+ "representationKind": "unclassified",
1763
+ "stableCurrency": null,
1764
+ "underlyingAssetId": null,
1765
+ "economicReferenceAssetId": null,
1766
+ "chainId": "eip155:43114",
1767
+ "symbol": "0x3ceeb67533e494c0dc6be579585e3c62916062e0",
1768
+ "decimals": 18,
1769
+ "standard": "erc20",
1770
+ "address": "0x3ceeb67533e494c0dc6be579585e3c62916062e0",
1771
+ "status": "active",
1772
+ "replacedByDeploymentId": null
1773
+ },
1774
+ {
1775
+ "deploymentId": "discovered-token-611597bd13daa43d01a23caa9cca6a98797c64be7fb5b2677370ddbcdeaf01ec",
1776
+ "assetId": "discovered-token-611597bd13daa43d01a23caa9cca6a98797c64be7fb5b2677370ddbcdeaf01ec",
1777
+ "name": "Unclassified token at 0x2b591e99afe9f32eaa6214f7b7629768c40eeb39",
1778
+ "representationKind": "unclassified",
1779
+ "stableCurrency": null,
1780
+ "underlyingAssetId": null,
1781
+ "economicReferenceAssetId": null,
1782
+ "chainId": "eip155:1",
1783
+ "symbol": "0x2b591e99afe9f32eaa6214f7b7629768c40eeb39",
1784
+ "decimals": 8,
1785
+ "standard": "erc20",
1786
+ "address": "0x2b591e99afe9f32eaa6214f7b7629768c40eeb39",
1787
+ "status": "active",
1788
+ "replacedByDeploymentId": null
1789
+ },
1790
+ {
1791
+ "deploymentId": "discovered-token-69519fd08e31445cad84b0c17a5346b7ee9c5692e270602af9308ca6d8943bb6",
1792
+ "assetId": "discovered-token-69519fd08e31445cad84b0c17a5346b7ee9c5692e270602af9308ca6d8943bb6",
1793
+ "name": "Unclassified token at 0x0d8775f648430679a709e98d2b0cb6250d2887ef",
1794
+ "representationKind": "unclassified",
1795
+ "stableCurrency": null,
1796
+ "underlyingAssetId": null,
1797
+ "economicReferenceAssetId": null,
1798
+ "chainId": "eip155:1",
1799
+ "symbol": "0x0d8775f648430679a709e98d2b0cb6250d2887ef",
1800
+ "decimals": 18,
1801
+ "standard": "erc20",
1802
+ "address": "0x0d8775f648430679a709e98d2b0cb6250d2887ef",
1803
+ "status": "active",
1804
+ "replacedByDeploymentId": null
1805
+ },
1806
+ {
1807
+ "deploymentId": "discovered-token-9f9965cc065c9becf8d2cb58071524baafea37d27fda9bf683a93ea85f2e653d",
1808
+ "assetId": "discovered-token-9f9965cc065c9becf8d2cb58071524baafea37d27fda9bf683a93ea85f2e653d",
1809
+ "name": "Unclassified token at 0x50b7545627a5162f82a992c33b87adc75187b218",
1810
+ "representationKind": "unclassified",
1811
+ "stableCurrency": null,
1812
+ "underlyingAssetId": null,
1813
+ "economicReferenceAssetId": null,
1814
+ "chainId": "eip155:43114",
1815
+ "symbol": "0x50b7545627a5162f82a992c33b87adc75187b218",
1816
+ "decimals": 8,
1817
+ "standard": "erc20",
1818
+ "address": "0x50b7545627a5162f82a992c33b87adc75187b218",
1819
+ "status": "active",
1820
+ "replacedByDeploymentId": null
1821
+ },
1822
+ {
1823
+ "deploymentId": "discovered-token-b475569f6a15e97ac04e531dd813e9dcc902521c098d60d6ae4d21d53baf1395",
1824
+ "assetId": "discovered-token-b475569f6a15e97ac04e531dd813e9dcc902521c098d60d6ae4d21d53baf1395",
1825
+ "name": "Unclassified token at 0x9f8f72aa9304c8b593d555f12ef6589cc3a579a2",
1826
+ "representationKind": "unclassified",
1827
+ "stableCurrency": null,
1828
+ "underlyingAssetId": null,
1829
+ "economicReferenceAssetId": null,
1830
+ "chainId": "eip155:1",
1831
+ "symbol": "0x9f8f72aa9304c8b593d555f12ef6589cc3a579a2",
1832
+ "decimals": 18,
1833
+ "standard": "erc20",
1834
+ "address": "0x9f8f72aa9304c8b593d555f12ef6589cc3a579a2",
1835
+ "status": "active",
1836
+ "replacedByDeploymentId": null
1837
+ },
1838
+ {
1839
+ "deploymentId": "discovered-token-e375086901067fe3de023bcdc70f1bafca798e1719ed7e676a98f57de3350a07",
1840
+ "assetId": "discovered-token-e375086901067fe3de023bcdc70f1bafca798e1719ed7e676a98f57de3350a07",
1841
+ "name": "Unclassified token at 0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
1842
+ "representationKind": "unclassified",
1843
+ "stableCurrency": null,
1844
+ "underlyingAssetId": null,
1845
+ "economicReferenceAssetId": null,
1846
+ "chainId": "eip155:1",
1847
+ "symbol": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
1848
+ "decimals": 8,
1849
+ "standard": "erc20",
1850
+ "address": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
1851
+ "status": "active",
1852
+ "replacedByDeploymentId": null
1853
+ }
1854
+ ]);
1855
+ var TOKEN_ALIASES = deepFreeze([
1856
+ { namespace: "avalancheC", name: "AUSD", deploymentId: tokens.avalancheC.AUSD },
1857
+ { namespace: "avalancheC", name: "AVAX", deploymentId: tokens.avalancheC.AVAX },
1858
+ { namespace: "avalancheC", name: "DISCOVERED_0A7F98C8752F15EE", deploymentId: tokens.avalancheC.DISCOVERED_0A7F98C8752F15EE },
1859
+ { namespace: "avalancheC", name: "DISCOVERED_1847342426B765AD", deploymentId: tokens.avalancheC.DISCOVERED_1847342426B765AD },
1860
+ { namespace: "avalancheC", name: "DISCOVERED_288036A90EE0FA72", deploymentId: tokens.avalancheC.DISCOVERED_288036A90EE0FA72 },
1861
+ { namespace: "avalancheC", name: "DISCOVERED_323D07C442F0D089", deploymentId: tokens.avalancheC.DISCOVERED_323D07C442F0D089 },
1862
+ { namespace: "avalancheC", name: "DISCOVERED_9F9965CC065C9BEC", deploymentId: tokens.avalancheC.DISCOVERED_9F9965CC065C9BEC },
1863
+ { namespace: "avalancheC", name: "EURC", deploymentId: tokens.avalancheC.EURC },
1864
+ { namespace: "avalancheC", name: "EUROP", deploymentId: tokens.avalancheC.EUROP },
1865
+ { namespace: "avalancheC", name: "GHO", deploymentId: tokens.avalancheC.GHO },
1866
+ { namespace: "avalancheC", name: "JOE", deploymentId: tokens.avalancheC.JOE },
1867
+ { namespace: "avalancheC", name: "JPYC", deploymentId: tokens.avalancheC.JPYC },
1868
+ { namespace: "avalancheC", name: "LINK", deploymentId: tokens.avalancheC.LINK },
1869
+ { namespace: "avalancheC", name: "USDC", deploymentId: tokens.avalancheC.USDC },
1870
+ { namespace: "avalancheC", name: "USDC_E", deploymentId: tokens.avalancheC.USDC_E },
1871
+ { namespace: "avalancheC", name: "USDT", deploymentId: tokens.avalancheC.USDT },
1872
+ { namespace: "avalancheC", name: "WAVAX", deploymentId: tokens.avalancheC.WAVAX },
1873
+ { namespace: "ethereum", name: "AAVE", deploymentId: tokens.ethereum.AAVE },
1874
+ { namespace: "ethereum", name: "AUSD", deploymentId: tokens.ethereum.AUSD },
1875
+ { namespace: "ethereum", name: "DAI", deploymentId: tokens.ethereum.DAI },
1876
+ { namespace: "ethereum", name: "DISCOVERED_054D80A64E1F36A7", deploymentId: tokens.ethereum.DISCOVERED_054D80A64E1F36A7 },
1877
+ { namespace: "ethereum", name: "DISCOVERED_611597BD13DAA43D", deploymentId: tokens.ethereum.DISCOVERED_611597BD13DAA43D },
1878
+ { namespace: "ethereum", name: "DISCOVERED_69519FD08E31445C", deploymentId: tokens.ethereum.DISCOVERED_69519FD08E31445C },
1879
+ { namespace: "ethereum", name: "DISCOVERED_B475569F6A15E97A", deploymentId: tokens.ethereum.DISCOVERED_B475569F6A15E97A },
1880
+ { namespace: "ethereum", name: "DISCOVERED_E375086901067FE3", deploymentId: tokens.ethereum.DISCOVERED_E375086901067FE3 },
1881
+ { namespace: "ethereum", name: "ETH", deploymentId: tokens.ethereum.ETH },
1882
+ { namespace: "ethereum", name: "EURA", deploymentId: tokens.ethereum.EURA },
1883
+ { namespace: "ethereum", name: "EURAU", deploymentId: tokens.ethereum.EURAU },
1884
+ { namespace: "ethereum", name: "EURC", deploymentId: tokens.ethereum.EURC },
1885
+ { namespace: "ethereum", name: "EURCV", deploymentId: tokens.ethereum.EURCV },
1886
+ { namespace: "ethereum", name: "EURE", deploymentId: tokens.ethereum.EURE },
1887
+ { namespace: "ethereum", name: "EURE_V1", deploymentId: tokens.ethereum.EURE_V1 },
1888
+ { namespace: "ethereum", name: "EUROP", deploymentId: tokens.ethereum.EUROP },
1889
+ { namespace: "ethereum", name: "EURS", deploymentId: tokens.ethereum.EURS },
1890
+ { namespace: "ethereum", name: "EURT", deploymentId: tokens.ethereum.EURT },
1891
+ { namespace: "ethereum", name: "FDUSD", deploymentId: tokens.ethereum.FDUSD },
1892
+ { namespace: "ethereum", name: "GHO", deploymentId: tokens.ethereum.GHO },
1893
+ { namespace: "ethereum", name: "GYEN", deploymentId: tokens.ethereum.GYEN },
1894
+ { namespace: "ethereum", name: "JPYC", deploymentId: tokens.ethereum.JPYC },
1895
+ { namespace: "ethereum", name: "LINK", deploymentId: tokens.ethereum.LINK },
1896
+ { namespace: "ethereum", name: "PYUSD", deploymentId: tokens.ethereum.PYUSD },
1897
+ { namespace: "ethereum", name: "RLUSD", deploymentId: tokens.ethereum.RLUSD },
1898
+ { namespace: "ethereum", name: "UNI", deploymentId: tokens.ethereum.UNI },
1899
+ { namespace: "ethereum", name: "USDC", deploymentId: tokens.ethereum.USDC },
1900
+ { namespace: "ethereum", name: "USDE", deploymentId: tokens.ethereum.USDE },
1901
+ { namespace: "ethereum", name: "USDG", deploymentId: tokens.ethereum.USDG },
1902
+ { namespace: "ethereum", name: "USDP", deploymentId: tokens.ethereum.USDP },
1903
+ { namespace: "ethereum", name: "USDS", deploymentId: tokens.ethereum.USDS },
1904
+ { namespace: "ethereum", name: "USDT", deploymentId: tokens.ethereum.USDT },
1905
+ { namespace: "ethereum", name: "WETH", deploymentId: tokens.ethereum.WETH },
1906
+ { namespace: "ethereum", name: "ZUSD", deploymentId: tokens.ethereum.ZUSD },
1907
+ { namespace: "solana", name: "AUSD", deploymentId: tokens.solana.AUSD },
1908
+ { namespace: "solana", name: "EURAU", deploymentId: tokens.solana.EURAU },
1909
+ { namespace: "solana", name: "EURC", deploymentId: tokens.solana.EURC },
1910
+ { namespace: "solana", name: "EURCV", deploymentId: tokens.solana.EURCV },
1911
+ { namespace: "solana", name: "EUROP", deploymentId: tokens.solana.EUROP },
1912
+ { namespace: "solana", name: "FDUSD", deploymentId: tokens.solana.FDUSD },
1913
+ { namespace: "solana", name: "GYEN", deploymentId: tokens.solana.GYEN },
1914
+ { namespace: "solana", name: "JUP", deploymentId: tokens.solana.JUP },
1915
+ { namespace: "solana", name: "JUPUSD", deploymentId: tokens.solana.JUPUSD },
1916
+ { namespace: "solana", name: "PYUSD", deploymentId: tokens.solana.PYUSD },
1917
+ { namespace: "solana", name: "SOL", deploymentId: tokens.solana.SOL },
1918
+ { namespace: "solana", name: "USDC", deploymentId: tokens.solana.USDC },
1919
+ { namespace: "solana", name: "USDG", deploymentId: tokens.solana.USDG },
1920
+ { namespace: "solana", name: "USDP", deploymentId: tokens.solana.USDP },
1921
+ { namespace: "solana", name: "USDS", deploymentId: tokens.solana.USDS },
1922
+ { namespace: "solana", name: "USDT", deploymentId: tokens.solana.USDT },
1923
+ { namespace: "solana", name: "WSOL", deploymentId: tokens.solana.WSOL },
1924
+ { namespace: "solana", name: "WSOL_TOKEN_2022", deploymentId: tokens.solana.WSOL_TOKEN_2022 },
1925
+ { namespace: "solana", name: "ZUSD", deploymentId: tokens.solana.ZUSD }
1926
+ ]);
1927
+
1928
+ // src/token_catalog.ts
1929
+ var EMPTY_DEPLOYMENTS = Object.freeze([]);
1930
+ var assetsById = new Map(
1931
+ TOKEN_ASSETS.map((asset) => [asset.assetId, asset])
1932
+ );
1933
+ var deploymentsById = new Map(
1934
+ TOKEN_DEPLOYMENTS.map((deployment) => [deployment.deploymentId, deployment])
1935
+ );
1936
+ var deploymentsBySymbol = /* @__PURE__ */ new Map();
1937
+ for (const deployment of TOKEN_DEPLOYMENTS) {
1938
+ const key = `${deployment.chainId}\0${deployment.symbol}`;
1939
+ const existing = deploymentsBySymbol.get(key);
1940
+ if (existing) {
1941
+ deploymentsBySymbol.set(key, [...existing, deployment]);
1942
+ } else {
1943
+ deploymentsBySymbol.set(key, [deployment]);
1944
+ }
1945
+ }
1946
+ for (const [key, deployments] of deploymentsBySymbol) {
1947
+ deploymentsBySymbol.set(
1948
+ key,
1949
+ Object.freeze(
1950
+ [...deployments].sort(
1951
+ (left, right) => left.deploymentId < right.deploymentId ? -1 : left.deploymentId > right.deploymentId ? 1 : 0
1952
+ )
1953
+ )
1954
+ );
1955
+ }
1956
+ var deploymentsByAddress = /* @__PURE__ */ new Map();
1957
+ for (const deployment of TOKEN_DEPLOYMENTS) {
1958
+ if (deployment.address === null || deployment.address === "") continue;
1959
+ const normalizedAddress = isEvmChain(deployment.chainId) ? normalizeEvmAddress(deployment.address) : deployment.address;
1960
+ if (normalizedAddress === void 0 || isZeroEvmAddress(normalizedAddress)) {
1961
+ continue;
1962
+ }
1963
+ const key = `${deployment.chainId}\0${normalizedAddress}`;
1964
+ if (!deploymentsByAddress.has(key)) {
1965
+ deploymentsByAddress.set(key, deployment);
1966
+ }
1967
+ }
1968
+ function getTokenAsset(assetId) {
1969
+ return typeof assetId === "string" ? assetsById.get(assetId) : void 0;
1970
+ }
1971
+ function getTokenDeployment(deploymentId) {
1972
+ return typeof deploymentId === "string" ? deploymentsById.get(deploymentId) : void 0;
1973
+ }
1974
+ function listTokenDeployments(options = {}) {
1975
+ if (!isRecord(options)) return EMPTY_DEPLOYMENTS;
1976
+ const { chainId, stableCurrency } = options;
1977
+ if (chainId !== void 0 && !isKnownChainId(chainId)) {
1978
+ return EMPTY_DEPLOYMENTS;
1979
+ }
1980
+ if (stableCurrency !== void 0 && !isStableCurrency(stableCurrency)) {
1981
+ return EMPTY_DEPLOYMENTS;
1982
+ }
1983
+ const filtered = TOKEN_DEPLOYMENTS.filter((deployment) => {
1984
+ if (chainId !== void 0 && deployment.chainId !== chainId) return false;
1985
+ if (stableCurrency !== void 0 && deployment.stableCurrency !== stableCurrency) {
1986
+ return false;
1987
+ }
1988
+ return true;
1989
+ });
1990
+ return filtered.length === 0 ? EMPTY_DEPLOYMENTS : Object.freeze(filtered);
1991
+ }
1992
+ function findTokenDeploymentsBySymbol(chainId, symbol) {
1993
+ if (!isKnownChainId(chainId) || typeof symbol !== "string" || symbol.length === 0) {
1994
+ return EMPTY_DEPLOYMENTS;
1995
+ }
1996
+ return deploymentsBySymbol.get(`${chainId}\0${symbol}`) ?? EMPTY_DEPLOYMENTS;
1997
+ }
1998
+ function findTokenDeploymentByAddress(chainId, address) {
1999
+ if (!isKnownChainId(chainId) || typeof address !== "string") return void 0;
2000
+ if (address.length === 0) return void 0;
2001
+ const normalizedAddress = isEvmChain(chainId) ? normalizeEvmAddress(address) : address;
2002
+ if (normalizedAddress === void 0 || isEvmChain(chainId) && isZeroEvmAddress(normalizedAddress)) {
2003
+ return void 0;
2004
+ }
2005
+ return deploymentsByAddress.get(`${chainId}\0${normalizedAddress}`);
2006
+ }
2007
+ function getNativeTokenDeployment(chainId) {
2008
+ if (!isKnownChainId(chainId)) return void 0;
2009
+ return TOKEN_DEPLOYMENTS.find(
2010
+ (deployment) => deployment.chainId === chainId && deployment.standard === "native" && deployment.address === null
2011
+ );
2012
+ }
2013
+ function isRecord(value) {
2014
+ return typeof value === "object" && value !== null && !Array.isArray(value);
2015
+ }
2016
+ function isKnownChainId(value) {
2017
+ return value === TOKEN_CHAIN_IDS.ethereumMainnet || value === TOKEN_CHAIN_IDS.solanaMainnet || value === TOKEN_CHAIN_IDS.avalancheCMainnet;
2018
+ }
2019
+ function isStableCurrency(value) {
2020
+ return value === "USD" || value === "EUR" || value === "JPY";
2021
+ }
2022
+ function isEvmChain(chainId) {
2023
+ return chainId === TOKEN_CHAIN_IDS.ethereumMainnet || chainId === TOKEN_CHAIN_IDS.avalancheCMainnet;
2024
+ }
2025
+ function normalizeEvmAddress(address) {
2026
+ if (!/^0x[0-9a-fA-F]{40}$/.test(address)) return void 0;
2027
+ return address.toLowerCase();
2028
+ }
2029
+ function isZeroEvmAddress(address) {
2030
+ return address === `0x${"0".repeat(40)}`;
2031
+ }
2032
+
2033
+ // src/generated/token_rankings.ts
2034
+ var deepFreeze2 = (value) => {
2035
+ if (value && typeof value === "object" && !Object.isFrozen(value)) {
2036
+ Object.freeze(value);
2037
+ for (const child of Object.values(value)) deepFreeze2(child);
2038
+ }
2039
+ return value;
2040
+ };
2041
+ var TOKEN_RANKINGS_METADATA = deepFreeze2({
2042
+ "schemaVersion": 1,
2043
+ "metric": "onchain-total-supply-value-native",
2044
+ "asOf": "2026-09-16T16:41:59Z",
2045
+ "contentDigest": "26d1dc0a1091c8bfcb475c22877d1ce4ee7384462a184c9d4fc509c57110c0ea",
2046
+ "status": "partial",
2047
+ "coverage": [
2048
+ {
2049
+ "chainId": "eip155:1",
2050
+ "totalDeployments": 34,
2051
+ "rankedDeployments": 8,
2052
+ "unrankedDeployments": 26,
2053
+ "observedAt": "2026-09-16T16:41:59Z"
2054
+ },
2055
+ {
2056
+ "chainId": "eip155:43114",
2057
+ "totalDeployments": 17,
2058
+ "rankedDeployments": 0,
2059
+ "unrankedDeployments": 17,
2060
+ "observedAt": "2026-09-16T16:57:22Z"
2061
+ },
2062
+ {
2063
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
2064
+ "totalDeployments": 19,
2065
+ "rankedDeployments": 1,
2066
+ "unrankedDeployments": 18,
2067
+ "observedAt": "2026-09-16T16:57:16Z"
2068
+ }
2069
+ ],
2070
+ "sourceIds": [
2071
+ "rpc-avalanche-c-mainnet",
2072
+ "rpc-ethereum-mainnet",
2073
+ "rpc-solana-mainnet"
2074
+ ]
2075
+ });
2076
+ var TOKEN_RANKINGS = deepFreeze2([
2077
+ {
2078
+ "rank": 1,
2079
+ "chainId": "eip155:1",
2080
+ "deploymentIds": [
2081
+ "deployment-0008"
2082
+ ],
2083
+ "metric": "onchain-total-supply-value-native",
2084
+ "valueNumerator": "207204000029972648356119414046913566875",
2085
+ "valueDenominator": "9901974834827",
2086
+ "quoteCurrency": "native",
2087
+ "quoteDeploymentId": "deployment-0001",
2088
+ "observedAt": "2026-09-16T16:41:59Z",
2089
+ "sourceId": "rpc-ethereum-mainnet",
2090
+ "sourceAssetId": null
2091
+ },
2092
+ {
2093
+ "rank": 2,
2094
+ "chainId": "eip155:1",
2095
+ "deploymentIds": [
2096
+ "deployment-0057"
2097
+ ],
2098
+ "metric": "onchain-total-supply-value-native",
2099
+ "valueNumerator": "33884048421157235660750000000000000000000000000",
2100
+ "valueDenominator": "7575670698454356114489",
2101
+ "quoteCurrency": "native",
2102
+ "quoteDeploymentId": "deployment-0001",
2103
+ "observedAt": "2026-09-16T16:41:59Z",
2104
+ "sourceId": "rpc-ethereum-mainnet",
2105
+ "sourceAssetId": null
2106
+ },
2107
+ {
2108
+ "rank": 3,
2109
+ "chainId": "eip155:1",
2110
+ "deploymentIds": [
2111
+ "discovered-token-e375086901067fe3de023bcdc70f1bafca798e1719ed7e676a98f57de3350a07"
2112
+ ],
2113
+ "metric": "onchain-total-supply-value-native",
2114
+ "valueNumerator": "2530529372917746092314437530549111",
2115
+ "valueDenominator": "689351076",
2116
+ "quoteCurrency": "native",
2117
+ "quoteDeploymentId": "deployment-0001",
2118
+ "observedAt": "2026-09-16T16:41:59Z",
2119
+ "sourceId": "rpc-ethereum-mainnet",
2120
+ "sourceAssetId": null
2121
+ },
2122
+ {
2123
+ "rank": 4,
2124
+ "chainId": "eip155:1",
2125
+ "deploymentIds": [
2126
+ "deployment-0019"
2127
+ ],
2128
+ "metric": "onchain-total-supply-value-native",
2129
+ "valueNumerator": "8563994066253688594928908892314570251695637864181",
2130
+ "valueDenominator": "4480501906764632895725190",
2131
+ "quoteCurrency": "native",
2132
+ "quoteDeploymentId": "deployment-0001",
2133
+ "observedAt": "2026-09-16T16:41:59Z",
2134
+ "sourceId": "rpc-ethereum-mainnet",
2135
+ "sourceAssetId": null
2136
+ },
2137
+ {
2138
+ "rank": 5,
2139
+ "chainId": "eip155:1",
2140
+ "deploymentIds": [
2141
+ "discovered-token-054d80a64e1f36a756129763ca2f1e7a140b50b04c83876ff01dd5fd497a74c5"
2142
+ ],
2143
+ "metric": "onchain-total-supply-value-native",
2144
+ "valueNumerator": "33087553822039834447063841834161374382321688576",
2145
+ "valueDenominator": "507606550755599406088755",
2146
+ "quoteCurrency": "native",
2147
+ "quoteDeploymentId": "deployment-0001",
2148
+ "observedAt": "2026-09-16T16:41:59Z",
2149
+ "sourceId": "rpc-ethereum-mainnet",
2150
+ "sourceAssetId": null
2151
+ },
2152
+ {
2153
+ "rank": 6,
2154
+ "chainId": "eip155:1",
2155
+ "deploymentIds": [
2156
+ "discovered-token-b475569f6a15e97ac04e531dd813e9dcc902521c098d60d6ae4d21d53baf1395"
2157
+ ],
2158
+ "metric": "onchain-total-supply-value-native",
2159
+ "valueNumerator": "22129458437198611962075707523082974663376278",
2160
+ "valueDenominator": "466235585330384227837",
2161
+ "quoteCurrency": "native",
2162
+ "quoteDeploymentId": "deployment-0001",
2163
+ "observedAt": "2026-09-16T16:41:59Z",
2164
+ "sourceId": "rpc-ethereum-mainnet",
2165
+ "sourceAssetId": null
2166
+ },
2167
+ {
2168
+ "rank": 7,
2169
+ "chainId": "eip155:1",
2170
+ "deploymentIds": [
2171
+ "discovered-token-69519fd08e31445cad84b0c17a5346b7ee9c5692e270602af9308ca6d8943bb6"
2172
+ ],
2173
+ "metric": "onchain-total-supply-value-native",
2174
+ "valueNumerator": "461823962164048108560000000000000000000000000",
2175
+ "valueDenominator": "10479085950557704780219",
2176
+ "quoteCurrency": "native",
2177
+ "quoteDeploymentId": "deployment-0001",
2178
+ "observedAt": "2026-09-16T16:41:59Z",
2179
+ "sourceId": "rpc-ethereum-mainnet",
2180
+ "sourceAssetId": null
2181
+ },
2182
+ {
2183
+ "rank": 8,
2184
+ "chainId": "eip155:1",
2185
+ "deploymentIds": [
2186
+ "discovered-token-611597bd13daa43d01a23caa9cca6a98797c64be7fb5b2677370ddbcdeaf01ec"
2187
+ ],
2188
+ "metric": "onchain-total-supply-value-native",
2189
+ "valueNumerator": "591208964484530983367688374937406614318",
2190
+ "valueDenominator": "21093793193177765",
2191
+ "quoteCurrency": "native",
2192
+ "quoteDeploymentId": "deployment-0001",
2193
+ "observedAt": "2026-09-16T16:41:59Z",
2194
+ "sourceId": "rpc-ethereum-mainnet",
2195
+ "sourceAssetId": null
2196
+ },
2197
+ {
2198
+ "rank": 1,
2199
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
2200
+ "deploymentIds": [
2201
+ "deployment-0013"
2202
+ ],
2203
+ "metric": "onchain-total-supply-value-native",
2204
+ "valueNumerator": "8934052641907075195235710143877572821100144726376448",
2205
+ "valueDenominator": "7196706365568923421366403517072759025",
2206
+ "quoteCurrency": "native",
2207
+ "quoteDeploymentId": "deployment-0005",
2208
+ "observedAt": "2026-09-16T16:57:16Z",
2209
+ "sourceId": "rpc-solana-mainnet",
2210
+ "sourceAssetId": null
2211
+ }
2212
+ ]);
2213
+ var TOKEN_RANKINGS_CONTENT_DIGEST = TOKEN_RANKINGS_METADATA.contentDigest;
2214
+ var TOKEN_RANKINGS_BY_CHAIN = deepFreeze2({
2215
+ "eip155:1": [
2216
+ {
2217
+ "rank": 1,
2218
+ "chainId": "eip155:1",
2219
+ "deploymentIds": [
2220
+ "deployment-0008"
2221
+ ],
2222
+ "metric": "onchain-total-supply-value-native",
2223
+ "valueNumerator": "207204000029972648356119414046913566875",
2224
+ "valueDenominator": "9901974834827",
2225
+ "quoteCurrency": "native",
2226
+ "quoteDeploymentId": "deployment-0001",
2227
+ "observedAt": "2026-09-16T16:41:59Z",
2228
+ "sourceId": "rpc-ethereum-mainnet",
2229
+ "sourceAssetId": null
2230
+ },
2231
+ {
2232
+ "rank": 2,
2233
+ "chainId": "eip155:1",
2234
+ "deploymentIds": [
2235
+ "deployment-0057"
2236
+ ],
2237
+ "metric": "onchain-total-supply-value-native",
2238
+ "valueNumerator": "33884048421157235660750000000000000000000000000",
2239
+ "valueDenominator": "7575670698454356114489",
2240
+ "quoteCurrency": "native",
2241
+ "quoteDeploymentId": "deployment-0001",
2242
+ "observedAt": "2026-09-16T16:41:59Z",
2243
+ "sourceId": "rpc-ethereum-mainnet",
2244
+ "sourceAssetId": null
2245
+ },
2246
+ {
2247
+ "rank": 3,
2248
+ "chainId": "eip155:1",
2249
+ "deploymentIds": [
2250
+ "discovered-token-e375086901067fe3de023bcdc70f1bafca798e1719ed7e676a98f57de3350a07"
2251
+ ],
2252
+ "metric": "onchain-total-supply-value-native",
2253
+ "valueNumerator": "2530529372917746092314437530549111",
2254
+ "valueDenominator": "689351076",
2255
+ "quoteCurrency": "native",
2256
+ "quoteDeploymentId": "deployment-0001",
2257
+ "observedAt": "2026-09-16T16:41:59Z",
2258
+ "sourceId": "rpc-ethereum-mainnet",
2259
+ "sourceAssetId": null
2260
+ },
2261
+ {
2262
+ "rank": 4,
2263
+ "chainId": "eip155:1",
2264
+ "deploymentIds": [
2265
+ "deployment-0019"
2266
+ ],
2267
+ "metric": "onchain-total-supply-value-native",
2268
+ "valueNumerator": "8563994066253688594928908892314570251695637864181",
2269
+ "valueDenominator": "4480501906764632895725190",
2270
+ "quoteCurrency": "native",
2271
+ "quoteDeploymentId": "deployment-0001",
2272
+ "observedAt": "2026-09-16T16:41:59Z",
2273
+ "sourceId": "rpc-ethereum-mainnet",
2274
+ "sourceAssetId": null
2275
+ },
2276
+ {
2277
+ "rank": 5,
2278
+ "chainId": "eip155:1",
2279
+ "deploymentIds": [
2280
+ "discovered-token-054d80a64e1f36a756129763ca2f1e7a140b50b04c83876ff01dd5fd497a74c5"
2281
+ ],
2282
+ "metric": "onchain-total-supply-value-native",
2283
+ "valueNumerator": "33087553822039834447063841834161374382321688576",
2284
+ "valueDenominator": "507606550755599406088755",
2285
+ "quoteCurrency": "native",
2286
+ "quoteDeploymentId": "deployment-0001",
2287
+ "observedAt": "2026-09-16T16:41:59Z",
2288
+ "sourceId": "rpc-ethereum-mainnet",
2289
+ "sourceAssetId": null
2290
+ },
2291
+ {
2292
+ "rank": 6,
2293
+ "chainId": "eip155:1",
2294
+ "deploymentIds": [
2295
+ "discovered-token-b475569f6a15e97ac04e531dd813e9dcc902521c098d60d6ae4d21d53baf1395"
2296
+ ],
2297
+ "metric": "onchain-total-supply-value-native",
2298
+ "valueNumerator": "22129458437198611962075707523082974663376278",
2299
+ "valueDenominator": "466235585330384227837",
2300
+ "quoteCurrency": "native",
2301
+ "quoteDeploymentId": "deployment-0001",
2302
+ "observedAt": "2026-09-16T16:41:59Z",
2303
+ "sourceId": "rpc-ethereum-mainnet",
2304
+ "sourceAssetId": null
2305
+ },
2306
+ {
2307
+ "rank": 7,
2308
+ "chainId": "eip155:1",
2309
+ "deploymentIds": [
2310
+ "discovered-token-69519fd08e31445cad84b0c17a5346b7ee9c5692e270602af9308ca6d8943bb6"
2311
+ ],
2312
+ "metric": "onchain-total-supply-value-native",
2313
+ "valueNumerator": "461823962164048108560000000000000000000000000",
2314
+ "valueDenominator": "10479085950557704780219",
2315
+ "quoteCurrency": "native",
2316
+ "quoteDeploymentId": "deployment-0001",
2317
+ "observedAt": "2026-09-16T16:41:59Z",
2318
+ "sourceId": "rpc-ethereum-mainnet",
2319
+ "sourceAssetId": null
2320
+ },
2321
+ {
2322
+ "rank": 8,
2323
+ "chainId": "eip155:1",
2324
+ "deploymentIds": [
2325
+ "discovered-token-611597bd13daa43d01a23caa9cca6a98797c64be7fb5b2677370ddbcdeaf01ec"
2326
+ ],
2327
+ "metric": "onchain-total-supply-value-native",
2328
+ "valueNumerator": "591208964484530983367688374937406614318",
2329
+ "valueDenominator": "21093793193177765",
2330
+ "quoteCurrency": "native",
2331
+ "quoteDeploymentId": "deployment-0001",
2332
+ "observedAt": "2026-09-16T16:41:59Z",
2333
+ "sourceId": "rpc-ethereum-mainnet",
2334
+ "sourceAssetId": null
2335
+ }
2336
+ ],
2337
+ "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp": [
2338
+ {
2339
+ "rank": 1,
2340
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
2341
+ "deploymentIds": [
2342
+ "deployment-0013"
2343
+ ],
2344
+ "metric": "onchain-total-supply-value-native",
2345
+ "valueNumerator": "8934052641907075195235710143877572821100144726376448",
2346
+ "valueDenominator": "7196706365568923421366403517072759025",
2347
+ "quoteCurrency": "native",
2348
+ "quoteDeploymentId": "deployment-0005",
2349
+ "observedAt": "2026-09-16T16:57:16Z",
2350
+ "sourceId": "rpc-solana-mainnet",
2351
+ "sourceAssetId": null
2352
+ }
2353
+ ]
2354
+ });
2355
+
2356
+ // src/token_rankings.ts
2357
+ var EMPTY_RANKINGS = Object.freeze([]);
2358
+ function listTokenRankings(chainId) {
2359
+ if (typeof chainId !== "string" || chainId.length === 0) {
2360
+ return EMPTY_RANKINGS;
2361
+ }
2362
+ return Object.hasOwn(TOKEN_RANKINGS_BY_CHAIN, chainId) ? TOKEN_RANKINGS_BY_CHAIN[chainId] ?? EMPTY_RANKINGS : EMPTY_RANKINGS;
2363
+ }
2364
+
245
2365
  // src/catalog.ts
246
2366
  var resourceKinds = [
247
2367
  "bare-metal",
@@ -541,10 +2661,14 @@ var methodParams = (mode, args) => {
541
2661
  return args[0];
542
2662
  };
543
2663
  var createRpcNamespace = (config) => {
2664
+ const wireMethod = (method) => config.methodPrefix === void 0 ? method : `${config.methodPrefix}.${method}`;
544
2665
  const base = {
545
2666
  endpoint: config.transport.endpoint,
546
2667
  batch: (calls) => {
547
- const wireCalls = calls;
2668
+ const wireCalls = calls.map((call) => ({
2669
+ ...call,
2670
+ method: wireMethod(call.method)
2671
+ }));
548
2672
  config.validateBatch?.(wireCalls);
549
2673
  return new PendingRpcBatchRequest(
550
2674
  (options) => config.transport.batch(
@@ -558,7 +2682,7 @@ var createRpcNamespace = (config) => {
558
2682
  ),
559
2683
  request: (method, ...params) => new PendingRpcRequest(
560
2684
  (options) => config.transport.request(
561
- method,
2685
+ wireMethod(method),
562
2686
  params[0],
563
2687
  options
564
2688
  )
@@ -572,7 +2696,7 @@ var createRpcNamespace = (config) => {
572
2696
  if (property === "then") return void 0;
573
2697
  return (...args) => new PendingRpcRequest(
574
2698
  (options) => config.transport.request(
575
- property,
2699
+ wireMethod(property),
576
2700
  methodParams(config.parameterMode, args),
577
2701
  options
578
2702
  )
@@ -648,6 +2772,110 @@ var createEthereumClient = (transport) => ({
648
2772
  })
649
2773
  });
650
2774
 
2775
+ // src/rpc/avalanche.ts
2776
+ var AVALANCHE_AVAX_METHODS = [
2777
+ "avax.getAtomicTx",
2778
+ "avax.getAtomicTxStatus",
2779
+ "avax.getUTXOs",
2780
+ "avax.issueTx"
2781
+ ];
2782
+ var AVALANCHE_X_CHAIN_METHODS = [
2783
+ "avm.buildGenesis",
2784
+ "avm.getAllBalances",
2785
+ "avm.getAssetDescription",
2786
+ "avm.getBalance",
2787
+ "avm.getBlockByHeight",
2788
+ "avm.getHeight",
2789
+ "avm.getTx",
2790
+ "avm.getTxFee",
2791
+ "avm.getTxStatus",
2792
+ "avm.getUTXOs",
2793
+ "avm.issueTx"
2794
+ ];
2795
+ var AVALANCHE_P_CHAIN_METHODS = [
2796
+ "platform.getAllValidatorsAt",
2797
+ "platform.getBalance",
2798
+ "platform.getBlockchainStatus",
2799
+ "platform.getBlockchains",
2800
+ "platform.getCurrentSupply",
2801
+ "platform.getCurrentValidators",
2802
+ "platform.getFeeConfig",
2803
+ "platform.getFeeState",
2804
+ "platform.getHeight",
2805
+ "platform.getMinStake",
2806
+ "platform.getRewardUTXOs",
2807
+ "platform.getStake",
2808
+ "platform.getStakingAssetID",
2809
+ "platform.getSubnets",
2810
+ "platform.getTimestamp",
2811
+ "platform.getTotalStake",
2812
+ "platform.getTx",
2813
+ "platform.getTxStatus",
2814
+ "platform.getUTXOs",
2815
+ "platform.getValidatorFeeConfig",
2816
+ "platform.getValidatorFeeState",
2817
+ "platform.getValidatorsAt",
2818
+ "platform.issueTx",
2819
+ "platform.sampleValidators",
2820
+ "platform.validatedBy",
2821
+ "platform.validates"
2822
+ ];
2823
+ var AVALANCHE_PROPOSER_VM_METHODS = [
2824
+ "proposervm.getCurrentEpoch",
2825
+ "proposervm.getProposedHeight"
2826
+ ];
2827
+ var AVALANCHE_INFO_METHODS = ["info.upgrades"];
2828
+ var AVALANCHE_INDEX_METHODS = [
2829
+ "index.getContainerByID",
2830
+ "index.getContainerByIndex",
2831
+ "index.getContainerRange",
2832
+ "index.getIndex",
2833
+ "index.getLastAccepted",
2834
+ "index.isAccepted"
2835
+ ];
2836
+ var rejectNativeBatch = (calls) => {
2837
+ if (calls.length > 0) {
2838
+ throw new ErpcBatchPolicyError(
2839
+ "Avalanche native RPC methods do not support batching"
2840
+ );
2841
+ }
2842
+ };
2843
+ var nativeNamespace = (transport, methodPrefix) => createRpcNamespace({
2844
+ methodPrefix,
2845
+ parameterMode: "named",
2846
+ transport,
2847
+ validateBatch: rejectNativeBatch
2848
+ });
2849
+ var createAvalancheClient = (transport, indexTransports) => ({
2850
+ ...createEthereumClient(transport),
2851
+ avax: nativeNamespace(transport, "avax"),
2852
+ xChain: nativeNamespace(transport, "avm"),
2853
+ pChain: nativeNamespace(transport, "platform"),
2854
+ proposerVm: nativeNamespace(
2855
+ transport,
2856
+ "proposervm"
2857
+ ),
2858
+ info: nativeNamespace(transport, "info"),
2859
+ index: {
2860
+ cChainBlocks: nativeNamespace(
2861
+ indexTransports.cChainBlocks,
2862
+ "index"
2863
+ ),
2864
+ pChainBlocks: nativeNamespace(
2865
+ indexTransports.pChainBlocks,
2866
+ "index"
2867
+ ),
2868
+ xChainBlocks: nativeNamespace(
2869
+ indexTransports.xChainBlocks,
2870
+ "index"
2871
+ ),
2872
+ xChainTransactions: nativeNamespace(
2873
+ indexTransports.xChainTransactions,
2874
+ "index"
2875
+ )
2876
+ }
2877
+ });
2878
+
651
2879
  // src/rpc/solana.ts
652
2880
  var SOLANA_RPC_METHODS = [
653
2881
  "getAccountInfo",
@@ -1145,6 +3373,1080 @@ var SolanaSubscriptions = class {
1145
3373
  }
1146
3374
  };
1147
3375
 
3376
+ // src/generated/dex_catalog.ts
3377
+ function deepFreeze3(value) {
3378
+ if (value && typeof value === "object") {
3379
+ Object.freeze(value);
3380
+ for (const child of Object.values(value)) deepFreeze3(child);
3381
+ }
3382
+ return value;
3383
+ }
3384
+ var DEX_CATALOG_VERSION = "1.0.0";
3385
+ var DEX_CATALOG_AS_OF_DATE = "2026-09-15";
3386
+ var DEX_CATALOG_CONTENT_DIGEST = "caccde1f997648dfa045af41d4f8b7f93a051c59d098cc770bd3a2757185aac1";
3387
+ var DEX_CHAIN_IDS = deepFreeze3({
3388
+ "ethereum": "eip155:1",
3389
+ "solana": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
3390
+ "avalancheC": "eip155:43114"
3391
+ });
3392
+ var dexes = deepFreeze3({
3393
+ "ethereum": {
3394
+ "UNISWAP_V2": "dex-deployment-0001"
3395
+ },
3396
+ "solana": {
3397
+ "ORCA_WHIRLPOOLS": "dex-deployment-0003",
3398
+ "RAYDIUM_CLMM": "dex-deployment-0004"
3399
+ },
3400
+ "avalancheC": {
3401
+ "LFJ_LEGACY": "dex-deployment-0002"
3402
+ }
3403
+ });
3404
+ var pools = deepFreeze3({
3405
+ "ethereum": {
3406
+ "DISCOVERED_POOL_1B98A5F24A364E05": "discovered-pool-1b98a5f24a364e05b3d56a9702c3560fc3a71f84b2195c486cfc5f8a956cc0b7",
3407
+ "DISCOVERED_POOL_6428A1E5DA293B2E": "discovered-pool-6428a1e5da293b2ef62027ec823ba27532219a40784def3930feee56a623b809",
3408
+ "DISCOVERED_POOL_866F890448D13C07": "discovered-pool-866f890448d13c078e217a894ebd47430da5941fe5bff7e382fc095916b4614d",
3409
+ "DISCOVERED_POOL_90805F8995C1D0B8": "discovered-pool-90805f8995c1d0b85a45fcd4587928a00066b1f14407baee4e8ed1b634c07804",
3410
+ "DISCOVERED_POOL_A7F9E600A86951F4": "discovered-pool-a7f9e600a86951f40472ff779fae467db8a6bbbc6076356058f427e97d4ae429",
3411
+ "DISCOVERED_POOL_B8F972F8BAE36C82": "discovered-pool-b8f972f8bae36c82b51ed2aeed070d3ef3e7642e2a708c7d3c0c134e6e1946ed",
3412
+ "DISCOVERED_POOL_E702B0CB56528418": "discovered-pool-e702b0cb56528418b4ce089dfc001c6241c94e92aabde72f1a340c4601541780",
3413
+ "UNISWAP_V2_USDC_WETH": "pool-0001"
3414
+ },
3415
+ "solana": {
3416
+ "ORCA_WHIRLPOOLS_WSOL_EURC": "pool-0003",
3417
+ "RAYDIUM_CLMM_WSOL_EURC": "pool-0004"
3418
+ },
3419
+ "avalancheC": {
3420
+ "DISCOVERED_POOL_1568E761C62F7DC5": "discovered-pool-1568e761c62f7dc58207a77f2dc32153805efe03a8d9cce9366ce68efdf276c4",
3421
+ "DISCOVERED_POOL_3C1E38D02092D16E": "discovered-pool-3c1e38d02092d16e396d2f3a22b2bfae55246a1c566831d31f211670e45bd562",
3422
+ "DISCOVERED_POOL_3F840A40991E755E": "discovered-pool-3f840a40991e755e42d242188bd8deb85cd5b9655308269b00c220f5237710cf",
3423
+ "DISCOVERED_POOL_5D7AA6A767A0C6EA": "discovered-pool-5d7aa6a767a0c6ea9ddeb06d1289bd12d85018935d5b25724b165dc8b9832252",
3424
+ "DISCOVERED_POOL_9E4ED76F76904A4A": "discovered-pool-9e4ed76f76904a4ae271946bb1a4b2dc7428e343040b05a42707071bbfac9462",
3425
+ "DISCOVERED_POOL_A2480F3D4EA5CE12": "discovered-pool-a2480f3d4ea5ce12252126acf64b174b9fe678b0f0fda8936a12fef180ae08cd",
3426
+ "DISCOVERED_POOL_ECE9088CF3894443": "discovered-pool-ece9088cf38944438897ff9fb2a1abc6855a687b5a3f0d6ab98dfe06c1a6dfef",
3427
+ "DISCOVERED_POOL_FB02E85806CD9079": "discovered-pool-fb02e85806cd907920126af935137b0775a858ddf04a28d7ca144f761fd7579e",
3428
+ "LFJ_LEGACY_WAVAX_USDC": "pool-0002"
3429
+ }
3430
+ });
3431
+ var DEX_DEPLOYMENTS = deepFreeze3([
3432
+ {
3433
+ "dexDeploymentId": "dex-deployment-0001",
3434
+ "protocolId": "uniswap-v2",
3435
+ "name": "Uniswap V2",
3436
+ "chainId": "eip155:1",
3437
+ "programAddress": "0x5c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f",
3438
+ "adapterKind": "evm-constant-product-v2",
3439
+ "status": "active",
3440
+ "replacedByDexDeploymentId": null
3441
+ },
3442
+ {
3443
+ "dexDeploymentId": "dex-deployment-0002",
3444
+ "protocolId": "lfj-legacy-constant-product",
3445
+ "name": "LFJ legacy constant-product (Joe V1)",
3446
+ "chainId": "eip155:43114",
3447
+ "programAddress": "0x9ad6c38be94206ca50bb0d90783181662f0cfa10",
3448
+ "adapterKind": "evm-constant-product-v2",
3449
+ "status": "active",
3450
+ "replacedByDexDeploymentId": null
3451
+ },
3452
+ {
3453
+ "dexDeploymentId": "dex-deployment-0003",
3454
+ "protocolId": "orca-whirlpools",
3455
+ "name": "Orca Whirlpools",
3456
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
3457
+ "programAddress": "whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc",
3458
+ "adapterKind": "solana-orca-whirlpool",
3459
+ "status": "active",
3460
+ "replacedByDexDeploymentId": null
3461
+ },
3462
+ {
3463
+ "dexDeploymentId": "dex-deployment-0004",
3464
+ "protocolId": "raydium-clmm",
3465
+ "name": "Raydium CLMM",
3466
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
3467
+ "programAddress": "CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK",
3468
+ "adapterKind": "solana-raydium-clmm",
3469
+ "status": "active",
3470
+ "replacedByDexDeploymentId": null
3471
+ }
3472
+ ]);
3473
+ var POOL_DEFINITIONS = deepFreeze3([
3474
+ {
3475
+ "poolDefinitionId": "discovered-pool-1568e761c62f7dc58207a77f2dc32153805efe03a8d9cce9366ce68efdf276c4",
3476
+ "dexDeploymentId": "dex-deployment-0002",
3477
+ "chainId": "eip155:43114",
3478
+ "address": "0xd5a37dc5c9a396a03dd1136fc76a1a02b1c88ffa",
3479
+ "token0DeploymentId": "discovered-token-9f9965cc065c9becf8d2cb58071524baafea37d27fda9bf683a93ea85f2e653d",
3480
+ "token1DeploymentId": "deployment-0004",
3481
+ "adapter": {
3482
+ "kind": "evm-constant-product-v2",
3483
+ "feeNumerator": "3",
3484
+ "feeDenominator": "1000"
3485
+ },
3486
+ "status": "active",
3487
+ "replacedByPoolDefinitionId": null
3488
+ },
3489
+ {
3490
+ "poolDefinitionId": "discovered-pool-1b98a5f24a364e05b3d56a9702c3560fc3a71f84b2195c486cfc5f8a956cc0b7",
3491
+ "dexDeploymentId": "dex-deployment-0001",
3492
+ "chainId": "eip155:1",
3493
+ "address": "0xc2adda861f89bbb333c90c492cb837741916a225",
3494
+ "token0DeploymentId": "discovered-token-b475569f6a15e97ac04e531dd813e9dcc902521c098d60d6ae4d21d53baf1395",
3495
+ "token1DeploymentId": "deployment-0002",
3496
+ "adapter": {
3497
+ "kind": "evm-constant-product-v2",
3498
+ "feeNumerator": "3",
3499
+ "feeDenominator": "1000"
3500
+ },
3501
+ "status": "active",
3502
+ "replacedByPoolDefinitionId": null
3503
+ },
3504
+ {
3505
+ "poolDefinitionId": "discovered-pool-3c1e38d02092d16e396d2f3a22b2bfae55246a1c566831d31f211670e45bd562",
3506
+ "dexDeploymentId": "dex-deployment-0002",
3507
+ "chainId": "eip155:43114",
3508
+ "address": "0xed8cbd9f0ce3c6986b22002f03c6475ceb7a6256",
3509
+ "token0DeploymentId": "deployment-0004",
3510
+ "token1DeploymentId": "discovered-token-288036a90ee0fa72a2751a78a6934cc6ced9e16de91c97ae8e109e2ee6189bc5",
3511
+ "adapter": {
3512
+ "kind": "evm-constant-product-v2",
3513
+ "feeNumerator": "3",
3514
+ "feeDenominator": "1000"
3515
+ },
3516
+ "status": "active",
3517
+ "replacedByPoolDefinitionId": null
3518
+ },
3519
+ {
3520
+ "poolDefinitionId": "discovered-pool-3f840a40991e755e42d242188bd8deb85cd5b9655308269b00c220f5237710cf",
3521
+ "dexDeploymentId": "dex-deployment-0002",
3522
+ "chainId": "eip155:43114",
3523
+ "address": "0xfe15c2695f1f920da45c30aae47d11de51007af9",
3524
+ "token0DeploymentId": "discovered-token-0a7f98c8752f15ee02ce0d801f25df8ff78864a1d70aff7e204f7bdb3f8a0692",
3525
+ "token1DeploymentId": "deployment-0004",
3526
+ "adapter": {
3527
+ "kind": "evm-constant-product-v2",
3528
+ "feeNumerator": "3",
3529
+ "feeDenominator": "1000"
3530
+ },
3531
+ "status": "active",
3532
+ "replacedByPoolDefinitionId": null
3533
+ },
3534
+ {
3535
+ "poolDefinitionId": "discovered-pool-5d7aa6a767a0c6ea9ddeb06d1289bd12d85018935d5b25724b165dc8b9832252",
3536
+ "dexDeploymentId": "dex-deployment-0002",
3537
+ "chainId": "eip155:43114",
3538
+ "address": "0x48f7c83c29e5ecea926d8169864d8cd022deaf3c",
3539
+ "token0DeploymentId": "discovered-token-323d07c442f0d089197ae7eea9b3ebb829910177c5b780161a7623aaed5e4371",
3540
+ "token1DeploymentId": "deployment-0004",
3541
+ "adapter": {
3542
+ "kind": "evm-constant-product-v2",
3543
+ "feeNumerator": "3",
3544
+ "feeDenominator": "1000"
3545
+ },
3546
+ "status": "active",
3547
+ "replacedByPoolDefinitionId": null
3548
+ },
3549
+ {
3550
+ "poolDefinitionId": "discovered-pool-6428a1e5da293b2ef62027ec823ba27532219a40784def3930feee56a623b809",
3551
+ "dexDeploymentId": "dex-deployment-0001",
3552
+ "chainId": "eip155:1",
3553
+ "address": "0xa2107fa5b38d9bbd2c461d6edf11b11a50f6b974",
3554
+ "token0DeploymentId": "deployment-0057",
3555
+ "token1DeploymentId": "deployment-0002",
3556
+ "adapter": {
3557
+ "kind": "evm-constant-product-v2",
3558
+ "feeNumerator": "3",
3559
+ "feeDenominator": "1000"
3560
+ },
3561
+ "status": "active",
3562
+ "replacedByPoolDefinitionId": null
3563
+ },
3564
+ {
3565
+ "poolDefinitionId": "discovered-pool-866f890448d13c078e217a894ebd47430da5941fe5bff7e382fc095916b4614d",
3566
+ "dexDeploymentId": "dex-deployment-0001",
3567
+ "chainId": "eip155:1",
3568
+ "address": "0xb6909b960dbbe7392d405429eb2b3649752b4838",
3569
+ "token0DeploymentId": "discovered-token-69519fd08e31445cad84b0c17a5346b7ee9c5692e270602af9308ca6d8943bb6",
3570
+ "token1DeploymentId": "deployment-0002",
3571
+ "adapter": {
3572
+ "kind": "evm-constant-product-v2",
3573
+ "feeNumerator": "3",
3574
+ "feeDenominator": "1000"
3575
+ },
3576
+ "status": "active",
3577
+ "replacedByPoolDefinitionId": null
3578
+ },
3579
+ {
3580
+ "poolDefinitionId": "discovered-pool-90805f8995c1d0b85a45fcd4587928a00066b1f14407baee4e8ed1b634c07804",
3581
+ "dexDeploymentId": "dex-deployment-0001",
3582
+ "chainId": "eip155:1",
3583
+ "address": "0x55d5c232d921b9eaa6b37b5845e439acd04b4dba",
3584
+ "token0DeploymentId": "discovered-token-611597bd13daa43d01a23caa9cca6a98797c64be7fb5b2677370ddbcdeaf01ec",
3585
+ "token1DeploymentId": "deployment-0002",
3586
+ "adapter": {
3587
+ "kind": "evm-constant-product-v2",
3588
+ "feeNumerator": "3",
3589
+ "feeDenominator": "1000"
3590
+ },
3591
+ "status": "active",
3592
+ "replacedByPoolDefinitionId": null
3593
+ },
3594
+ {
3595
+ "poolDefinitionId": "discovered-pool-9e4ed76f76904a4ae271946bb1a4b2dc7428e343040b05a42707071bbfac9462",
3596
+ "dexDeploymentId": "dex-deployment-0002",
3597
+ "chainId": "eip155:43114",
3598
+ "address": "0x6f3a0c89f611ef5dc9d96650324ac633d02265d3",
3599
+ "token0DeploymentId": "deployment-0058",
3600
+ "token1DeploymentId": "deployment-0004",
3601
+ "adapter": {
3602
+ "kind": "evm-constant-product-v2",
3603
+ "feeNumerator": "3",
3604
+ "feeDenominator": "1000"
3605
+ },
3606
+ "status": "active",
3607
+ "replacedByPoolDefinitionId": null
3608
+ },
3609
+ {
3610
+ "poolDefinitionId": "discovered-pool-a2480f3d4ea5ce12252126acf64b174b9fe678b0f0fda8936a12fef180ae08cd",
3611
+ "dexDeploymentId": "dex-deployment-0002",
3612
+ "chainId": "eip155:43114",
3613
+ "address": "0xa389f9430876455c36478deea9769b7ca4e3ddb1",
3614
+ "token0DeploymentId": "deployment-0018",
3615
+ "token1DeploymentId": "deployment-0004",
3616
+ "adapter": {
3617
+ "kind": "evm-constant-product-v2",
3618
+ "feeNumerator": "3",
3619
+ "feeDenominator": "1000"
3620
+ },
3621
+ "status": "active",
3622
+ "replacedByPoolDefinitionId": null
3623
+ },
3624
+ {
3625
+ "poolDefinitionId": "discovered-pool-a7f9e600a86951f40472ff779fae467db8a6bbbc6076356058f427e97d4ae429",
3626
+ "dexDeploymentId": "dex-deployment-0001",
3627
+ "chainId": "eip155:1",
3628
+ "address": "0xa478c2975ab1ea89e8196811f51a7b7ade33eb11",
3629
+ "token0DeploymentId": "deployment-0019",
3630
+ "token1DeploymentId": "deployment-0002",
3631
+ "adapter": {
3632
+ "kind": "evm-constant-product-v2",
3633
+ "feeNumerator": "3",
3634
+ "feeDenominator": "1000"
3635
+ },
3636
+ "status": "active",
3637
+ "replacedByPoolDefinitionId": null
3638
+ },
3639
+ {
3640
+ "poolDefinitionId": "discovered-pool-b8f972f8bae36c82b51ed2aeed070d3ef3e7642e2a708c7d3c0c134e6e1946ed",
3641
+ "dexDeploymentId": "dex-deployment-0001",
3642
+ "chainId": "eip155:1",
3643
+ "address": "0x11b1f53204d03e5529f09eb3091939e4fd8c9cf3",
3644
+ "token0DeploymentId": "discovered-token-054d80a64e1f36a756129763ca2f1e7a140b50b04c83876ff01dd5fd497a74c5",
3645
+ "token1DeploymentId": "deployment-0002",
3646
+ "adapter": {
3647
+ "kind": "evm-constant-product-v2",
3648
+ "feeNumerator": "3",
3649
+ "feeDenominator": "1000"
3650
+ },
3651
+ "status": "active",
3652
+ "replacedByPoolDefinitionId": null
3653
+ },
3654
+ {
3655
+ "poolDefinitionId": "discovered-pool-e702b0cb56528418b4ce089dfc001c6241c94e92aabde72f1a340c4601541780",
3656
+ "dexDeploymentId": "dex-deployment-0001",
3657
+ "chainId": "eip155:1",
3658
+ "address": "0xbb2b8038a1640196fbe3e38816f3e67cba72d940",
3659
+ "token0DeploymentId": "discovered-token-e375086901067fe3de023bcdc70f1bafca798e1719ed7e676a98f57de3350a07",
3660
+ "token1DeploymentId": "deployment-0002",
3661
+ "adapter": {
3662
+ "kind": "evm-constant-product-v2",
3663
+ "feeNumerator": "3",
3664
+ "feeDenominator": "1000"
3665
+ },
3666
+ "status": "active",
3667
+ "replacedByPoolDefinitionId": null
3668
+ },
3669
+ {
3670
+ "poolDefinitionId": "discovered-pool-ece9088cf38944438897ff9fb2a1abc6855a687b5a3f0d6ab98dfe06c1a6dfef",
3671
+ "dexDeploymentId": "dex-deployment-0002",
3672
+ "chainId": "eip155:43114",
3673
+ "address": "0x454e67025631c065d3cfad6d71e6892f74487a15",
3674
+ "token0DeploymentId": "deployment-0059",
3675
+ "token1DeploymentId": "deployment-0004",
3676
+ "adapter": {
3677
+ "kind": "evm-constant-product-v2",
3678
+ "feeNumerator": "3",
3679
+ "feeDenominator": "1000"
3680
+ },
3681
+ "status": "active",
3682
+ "replacedByPoolDefinitionId": null
3683
+ },
3684
+ {
3685
+ "poolDefinitionId": "discovered-pool-fb02e85806cd907920126af935137b0775a858ddf04a28d7ca144f761fd7579e",
3686
+ "dexDeploymentId": "dex-deployment-0002",
3687
+ "chainId": "eip155:43114",
3688
+ "address": "0xb6a00cead355d1ec492fd72e1d79199c347a74b5",
3689
+ "token0DeploymentId": "discovered-token-1847342426b765add3c8b4feb724c6b15121f25097cb7917c967c285ca77e804",
3690
+ "token1DeploymentId": "deployment-0004",
3691
+ "adapter": {
3692
+ "kind": "evm-constant-product-v2",
3693
+ "feeNumerator": "3",
3694
+ "feeDenominator": "1000"
3695
+ },
3696
+ "status": "active",
3697
+ "replacedByPoolDefinitionId": null
3698
+ },
3699
+ {
3700
+ "poolDefinitionId": "pool-0001",
3701
+ "dexDeploymentId": "dex-deployment-0001",
3702
+ "chainId": "eip155:1",
3703
+ "address": "0xb4e16d0168e52d35cacd2c6185b44281ec28c9dc",
3704
+ "token0DeploymentId": "deployment-0008",
3705
+ "token1DeploymentId": "deployment-0002",
3706
+ "adapter": {
3707
+ "kind": "evm-constant-product-v2",
3708
+ "feeNumerator": "3",
3709
+ "feeDenominator": "1000"
3710
+ },
3711
+ "status": "active",
3712
+ "replacedByPoolDefinitionId": null
3713
+ },
3714
+ {
3715
+ "poolDefinitionId": "pool-0002",
3716
+ "dexDeploymentId": "dex-deployment-0002",
3717
+ "chainId": "eip155:43114",
3718
+ "address": "0xf4003f4efbe8691b60249e6afbd307abe7758adb",
3719
+ "token0DeploymentId": "deployment-0004",
3720
+ "token1DeploymentId": "deployment-0009",
3721
+ "adapter": {
3722
+ "kind": "evm-constant-product-v2",
3723
+ "feeNumerator": "3",
3724
+ "feeDenominator": "1000"
3725
+ },
3726
+ "status": "active",
3727
+ "replacedByPoolDefinitionId": null
3728
+ },
3729
+ {
3730
+ "poolDefinitionId": "pool-0003",
3731
+ "dexDeploymentId": "dex-deployment-0003",
3732
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
3733
+ "address": "FgH1dEvyRQoAqJjbUzzKVoM1HYdxTqPwjEF82kDH1kVe",
3734
+ "token0DeploymentId": "deployment-0006",
3735
+ "token1DeploymentId": "deployment-0013",
3736
+ "adapter": {
3737
+ "kind": "solana-orca-whirlpool",
3738
+ "feeNumerator": null,
3739
+ "feeDenominator": null
3740
+ },
3741
+ "status": "active",
3742
+ "replacedByPoolDefinitionId": null
3743
+ },
3744
+ {
3745
+ "poolDefinitionId": "pool-0004",
3746
+ "dexDeploymentId": "dex-deployment-0004",
3747
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
3748
+ "address": "AwaVyGAF3N6K4YRUJk55Ui1GquKhKdD6vTCmVvCzXpKf",
3749
+ "token0DeploymentId": "deployment-0006",
3750
+ "token1DeploymentId": "deployment-0013",
3751
+ "adapter": {
3752
+ "kind": "solana-raydium-clmm",
3753
+ "feeNumerator": null,
3754
+ "feeDenominator": null
3755
+ },
3756
+ "status": "active",
3757
+ "replacedByPoolDefinitionId": null
3758
+ }
3759
+ ]);
3760
+ var NATIVE_WRAP_DEFINITIONS = deepFreeze3([
3761
+ {
3762
+ "nativeWrapDefinitionId": "native-wrap-0001",
3763
+ "chainId": "eip155:1",
3764
+ "nativeTokenDeploymentId": "deployment-0001",
3765
+ "wrappedTokenDeploymentId": "deployment-0002",
3766
+ "status": "active"
3767
+ },
3768
+ {
3769
+ "nativeWrapDefinitionId": "native-wrap-0002",
3770
+ "chainId": "eip155:43114",
3771
+ "nativeTokenDeploymentId": "deployment-0003",
3772
+ "wrappedTokenDeploymentId": "deployment-0004",
3773
+ "status": "active"
3774
+ },
3775
+ {
3776
+ "nativeWrapDefinitionId": "native-wrap-0003",
3777
+ "chainId": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
3778
+ "nativeTokenDeploymentId": "deployment-0005",
3779
+ "wrappedTokenDeploymentId": "deployment-0006",
3780
+ "status": "active"
3781
+ }
3782
+ ]);
3783
+ var DEX_ALIASES = deepFreeze3([
3784
+ { namespace: "avalancheC", name: "DISCOVERED_POOL_1568E761C62F7DC5", dexDeploymentId: null, poolDefinitionId: pools.avalancheC.DISCOVERED_POOL_1568E761C62F7DC5 },
3785
+ { namespace: "avalancheC", name: "DISCOVERED_POOL_3C1E38D02092D16E", dexDeploymentId: null, poolDefinitionId: pools.avalancheC.DISCOVERED_POOL_3C1E38D02092D16E },
3786
+ { namespace: "avalancheC", name: "DISCOVERED_POOL_3F840A40991E755E", dexDeploymentId: null, poolDefinitionId: pools.avalancheC.DISCOVERED_POOL_3F840A40991E755E },
3787
+ { namespace: "avalancheC", name: "DISCOVERED_POOL_5D7AA6A767A0C6EA", dexDeploymentId: null, poolDefinitionId: pools.avalancheC.DISCOVERED_POOL_5D7AA6A767A0C6EA },
3788
+ { namespace: "avalancheC", name: "DISCOVERED_POOL_9E4ED76F76904A4A", dexDeploymentId: null, poolDefinitionId: pools.avalancheC.DISCOVERED_POOL_9E4ED76F76904A4A },
3789
+ { namespace: "avalancheC", name: "DISCOVERED_POOL_A2480F3D4EA5CE12", dexDeploymentId: null, poolDefinitionId: pools.avalancheC.DISCOVERED_POOL_A2480F3D4EA5CE12 },
3790
+ { namespace: "avalancheC", name: "DISCOVERED_POOL_ECE9088CF3894443", dexDeploymentId: null, poolDefinitionId: pools.avalancheC.DISCOVERED_POOL_ECE9088CF3894443 },
3791
+ { namespace: "avalancheC", name: "DISCOVERED_POOL_FB02E85806CD9079", dexDeploymentId: null, poolDefinitionId: pools.avalancheC.DISCOVERED_POOL_FB02E85806CD9079 },
3792
+ { namespace: "avalancheC", name: "LFJ_LEGACY", dexDeploymentId: dexes.avalancheC.LFJ_LEGACY, poolDefinitionId: null },
3793
+ { namespace: "avalancheC", name: "LFJ_LEGACY_WAVAX_USDC", dexDeploymentId: null, poolDefinitionId: pools.avalancheC.LFJ_LEGACY_WAVAX_USDC },
3794
+ { namespace: "ethereum", name: "DISCOVERED_POOL_1B98A5F24A364E05", dexDeploymentId: null, poolDefinitionId: pools.ethereum.DISCOVERED_POOL_1B98A5F24A364E05 },
3795
+ { namespace: "ethereum", name: "DISCOVERED_POOL_6428A1E5DA293B2E", dexDeploymentId: null, poolDefinitionId: pools.ethereum.DISCOVERED_POOL_6428A1E5DA293B2E },
3796
+ { namespace: "ethereum", name: "DISCOVERED_POOL_866F890448D13C07", dexDeploymentId: null, poolDefinitionId: pools.ethereum.DISCOVERED_POOL_866F890448D13C07 },
3797
+ { namespace: "ethereum", name: "DISCOVERED_POOL_90805F8995C1D0B8", dexDeploymentId: null, poolDefinitionId: pools.ethereum.DISCOVERED_POOL_90805F8995C1D0B8 },
3798
+ { namespace: "ethereum", name: "DISCOVERED_POOL_A7F9E600A86951F4", dexDeploymentId: null, poolDefinitionId: pools.ethereum.DISCOVERED_POOL_A7F9E600A86951F4 },
3799
+ { namespace: "ethereum", name: "DISCOVERED_POOL_B8F972F8BAE36C82", dexDeploymentId: null, poolDefinitionId: pools.ethereum.DISCOVERED_POOL_B8F972F8BAE36C82 },
3800
+ { namespace: "ethereum", name: "DISCOVERED_POOL_E702B0CB56528418", dexDeploymentId: null, poolDefinitionId: pools.ethereum.DISCOVERED_POOL_E702B0CB56528418 },
3801
+ { namespace: "ethereum", name: "UNISWAP_V2", dexDeploymentId: dexes.ethereum.UNISWAP_V2, poolDefinitionId: null },
3802
+ { namespace: "ethereum", name: "UNISWAP_V2_USDC_WETH", dexDeploymentId: null, poolDefinitionId: pools.ethereum.UNISWAP_V2_USDC_WETH },
3803
+ { namespace: "solana", name: "ORCA_WHIRLPOOLS", dexDeploymentId: dexes.solana.ORCA_WHIRLPOOLS, poolDefinitionId: null },
3804
+ { namespace: "solana", name: "ORCA_WHIRLPOOLS_WSOL_EURC", dexDeploymentId: null, poolDefinitionId: pools.solana.ORCA_WHIRLPOOLS_WSOL_EURC },
3805
+ { namespace: "solana", name: "RAYDIUM_CLMM", dexDeploymentId: dexes.solana.RAYDIUM_CLMM, poolDefinitionId: null },
3806
+ { namespace: "solana", name: "RAYDIUM_CLMM_WSOL_EURC", dexDeploymentId: null, poolDefinitionId: pools.solana.RAYDIUM_CLMM_WSOL_EURC }
3807
+ ]);
3808
+
3809
+ // src/dex_catalog.ts
3810
+ var EMPTY_POOLS = Object.freeze([]);
3811
+ var deepFreeze4 = (value) => {
3812
+ if (value && typeof value === "object" && !Object.isFrozen(value)) {
3813
+ Object.freeze(value);
3814
+ for (const child of Object.values(value)) {
3815
+ deepFreeze4(child);
3816
+ }
3817
+ }
3818
+ return value;
3819
+ };
3820
+ deepFreeze4(DEX_CHAIN_IDS);
3821
+ deepFreeze4(DEX_DEPLOYMENTS);
3822
+ deepFreeze4(POOL_DEFINITIONS);
3823
+ deepFreeze4(NATIVE_WRAP_DEFINITIONS);
3824
+ deepFreeze4(DEX_ALIASES);
3825
+ deepFreeze4(dexes);
3826
+ deepFreeze4(pools);
3827
+ var knownChainIds = new Set(Object.values(DEX_CHAIN_IDS));
3828
+ var dexById = new Map(
3829
+ DEX_DEPLOYMENTS.map((deployment) => [deployment.dexDeploymentId, deployment])
3830
+ );
3831
+ var poolById = new Map(
3832
+ POOL_DEFINITIONS.map((pool) => [pool.poolDefinitionId, pool])
3833
+ );
3834
+ var wrapByNativeTokenId = new Map(
3835
+ NATIVE_WRAP_DEFINITIONS.map((definition) => [
3836
+ definition.nativeTokenDeploymentId,
3837
+ definition
3838
+ ])
3839
+ );
3840
+ function getDexDeployment(dexDeploymentId) {
3841
+ return typeof dexDeploymentId === "string" ? dexById.get(dexDeploymentId) : void 0;
3842
+ }
3843
+ function getPoolDefinition(poolDefinitionId) {
3844
+ return typeof poolDefinitionId === "string" ? poolById.get(poolDefinitionId) : void 0;
3845
+ }
3846
+ function findPoolDefinitionByAddress(chainId, address) {
3847
+ if (!isKnownChain(chainId) || typeof address !== "string" || address.length === 0) {
3848
+ return void 0;
3849
+ }
3850
+ const normalizedAddress = isEvmChain2(chainId) ? normalizeEvmAddress2(address) : address;
3851
+ if (normalizedAddress === void 0) return void 0;
3852
+ return POOL_DEFINITIONS.find(
3853
+ (pool) => pool.chainId === chainId && pool.address === normalizedAddress
3854
+ );
3855
+ }
3856
+ function findPoolDefinitionsByPair(chainId, tokenADeploymentId, tokenBDeploymentId) {
3857
+ if (!isKnownChain(chainId) || typeof tokenADeploymentId !== "string" || typeof tokenBDeploymentId !== "string" || tokenADeploymentId.length === 0 || tokenBDeploymentId.length === 0 || tokenADeploymentId === tokenBDeploymentId) {
3858
+ return EMPTY_POOLS;
3859
+ }
3860
+ const wanted = [tokenADeploymentId, tokenBDeploymentId].sort().join("\0");
3861
+ const matches = POOL_DEFINITIONS.filter((pool) => {
3862
+ const actual = [pool.token0DeploymentId, pool.token1DeploymentId].sort().join("\0");
3863
+ return pool.chainId === chainId && actual === wanted;
3864
+ }).sort(
3865
+ (left, right) => left.poolDefinitionId < right.poolDefinitionId ? -1 : left.poolDefinitionId > right.poolDefinitionId ? 1 : 0
3866
+ );
3867
+ return matches.length === 0 ? EMPTY_POOLS : Object.freeze(matches);
3868
+ }
3869
+ function listPoolDefinitions(options = {}) {
3870
+ if (!isRecord2(options)) return EMPTY_POOLS;
3871
+ const { chainId, tokenDeploymentId, adapterKind } = options;
3872
+ if (chainId !== void 0 && !isKnownChain(chainId)) return EMPTY_POOLS;
3873
+ if (tokenDeploymentId !== void 0 && (typeof tokenDeploymentId !== "string" || tokenDeploymentId.length === 0)) {
3874
+ return EMPTY_POOLS;
3875
+ }
3876
+ if (adapterKind !== void 0 && (typeof adapterKind !== "string" || adapterKind.length === 0)) {
3877
+ return EMPTY_POOLS;
3878
+ }
3879
+ const matches = POOL_DEFINITIONS.filter((pool) => {
3880
+ if (chainId !== void 0 && pool.chainId !== chainId) return false;
3881
+ if (tokenDeploymentId !== void 0 && pool.token0DeploymentId !== tokenDeploymentId && pool.token1DeploymentId !== tokenDeploymentId) {
3882
+ return false;
3883
+ }
3884
+ if (adapterKind !== void 0 && pool.adapter.kind !== adapterKind) {
3885
+ return false;
3886
+ }
3887
+ return true;
3888
+ }).sort(
3889
+ (left, right) => left.poolDefinitionId < right.poolDefinitionId ? -1 : left.poolDefinitionId > right.poolDefinitionId ? 1 : 0
3890
+ );
3891
+ return matches.length === 0 ? EMPTY_POOLS : Object.freeze(matches);
3892
+ }
3893
+ function getNativeWrapDefinition(nativeTokenDeploymentId) {
3894
+ return typeof nativeTokenDeploymentId === "string" ? wrapByNativeTokenId.get(nativeTokenDeploymentId) : void 0;
3895
+ }
3896
+ function isRecord2(value) {
3897
+ return typeof value === "object" && value !== null && !Array.isArray(value);
3898
+ }
3899
+ function isKnownChain(value) {
3900
+ return typeof value === "string" && knownChainIds.has(value);
3901
+ }
3902
+ function isEvmChain2(chainId) {
3903
+ return chainId === DEX_CHAIN_IDS.ethereum || chainId === DEX_CHAIN_IDS.avalancheC;
3904
+ }
3905
+ function normalizeEvmAddress2(address) {
3906
+ if (!/^0x[0-9a-fA-F]{40}$/u.test(address)) return void 0;
3907
+ return address.toLowerCase();
3908
+ }
3909
+
3910
+ // src/swap.ts
3911
+ var SWAP_QUOTE_ERROR_MESSAGES = Object.freeze({
3912
+ SWAP_INVALID_ARGUMENT: "Swap request is invalid",
3913
+ SWAP_UNSUPPORTED_CHAIN: "Swap chain is unsupported",
3914
+ SWAP_UNKNOWN_POOL: "Swap pool is unknown",
3915
+ SWAP_UNKNOWN_TOKEN: "Swap token is unknown",
3916
+ SWAP_TOKEN_NOT_ACTIVE: "Swap token is not active",
3917
+ SWAP_UNSUPPORTED_TOKEN_STANDARD: "Swap token standard is unsupported",
3918
+ SWAP_UNSUPPORTED_ADAPTER: "Swap adapter is unsupported",
3919
+ SWAP_UNSUPPORTED_TOKEN: "Swap token is unsupported for the selected pool",
3920
+ SWAP_CHAIN_MISMATCH: "Swap chain does not match the selected records",
3921
+ SWAP_POOL_TOKEN_MISMATCH: "Swap pool tokens do not match the request",
3922
+ SWAP_PROGRAM_MISMATCH: "Swap program does not match the selected records",
3923
+ SWAP_INVALID_POOL_STATE: "Swap pool state is invalid",
3924
+ SWAP_STATE_STALE: "Swap pool state is stale",
3925
+ SWAP_INSUFFICIENT_LIQUIDITY: "Swap pool liquidity is insufficient",
3926
+ SWAP_ARITHMETIC: "Swap arithmetic overflowed or produced an invalid result"
3927
+ });
3928
+ var SwapQuoteError = class extends Error {
3929
+ code;
3930
+ constructor(code) {
3931
+ super(SWAP_QUOTE_ERROR_MESSAGES[code]);
3932
+ this.name = "SwapQuoteError";
3933
+ this.code = code;
3934
+ }
3935
+ };
3936
+ var SUPPORTED_QUOTE_ADAPTER = "evm-constant-product-v2";
3937
+ var SUPPORTED_QUOTE_CAPABILITIES = Object.freeze([
3938
+ Object.freeze({
3939
+ chainId: "eip155:1",
3940
+ dexDeploymentId: "dex-deployment-0001",
3941
+ factoryAddress: "0x5c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f",
3942
+ poolDefinitionId: "pool-0001",
3943
+ poolAddress: "0xb4e16d0168e52d35cacd2c6185b44281ec28c9dc",
3944
+ token0DeploymentId: "deployment-0008",
3945
+ token0Address: "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
3946
+ token0Decimals: 6,
3947
+ token0Standard: "erc20",
3948
+ token1DeploymentId: "deployment-0002",
3949
+ token1Address: "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
3950
+ token1Decimals: 18,
3951
+ token1Standard: "erc20",
3952
+ adapterKind: SUPPORTED_QUOTE_ADAPTER,
3953
+ feeNumerator: "3",
3954
+ feeDenominator: "1000"
3955
+ }),
3956
+ Object.freeze({
3957
+ chainId: "eip155:43114",
3958
+ dexDeploymentId: "dex-deployment-0002",
3959
+ factoryAddress: "0x9ad6c38be94206ca50bb0d90783181662f0cfa10",
3960
+ poolDefinitionId: "pool-0002",
3961
+ poolAddress: "0xf4003f4efbe8691b60249e6afbd307abe7758adb",
3962
+ token0DeploymentId: "deployment-0004",
3963
+ token0Address: "0xb31f66aa3c1e785363f0875a1b74e27b85fd66c7",
3964
+ token0Decimals: 18,
3965
+ token0Standard: "erc20",
3966
+ token1DeploymentId: "deployment-0009",
3967
+ token1Address: "0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e",
3968
+ token1Decimals: 6,
3969
+ token1Standard: "erc20",
3970
+ adapterKind: SUPPORTED_QUOTE_ADAPTER,
3971
+ feeNumerator: "3",
3972
+ feeDenominator: "1000"
3973
+ })
3974
+ ]);
3975
+ var matchesSupportedQuoteCapability = (pool, dex, input, output) => {
3976
+ const capability = SUPPORTED_QUOTE_CAPABILITIES.find(
3977
+ (entry) => entry.poolDefinitionId === pool.poolDefinitionId
3978
+ );
3979
+ if (!capability) return false;
3980
+ if (input.representationKind === "unclassified" || output.representationKind === "unclassified") {
3981
+ return false;
3982
+ }
3983
+ const matchesToken = (token, deploymentId, address, decimals, standard) => token.chainId === capability.chainId && token.deploymentId === deploymentId && token.address === address && token.decimals === decimals && token.standard === standard;
3984
+ return pool.chainId === capability.chainId && pool.dexDeploymentId === capability.dexDeploymentId && pool.address === capability.poolAddress && pool.token0DeploymentId === capability.token0DeploymentId && pool.token1DeploymentId === capability.token1DeploymentId && dex.chainId === capability.chainId && dex.dexDeploymentId === capability.dexDeploymentId && dex.programAddress === capability.factoryAddress && dex.adapterKind === capability.adapterKind && pool.adapter.kind === capability.adapterKind && pool.adapter.feeNumerator === capability.feeNumerator && pool.adapter.feeDenominator === capability.feeDenominator && (matchesToken(
3985
+ input,
3986
+ capability.token0DeploymentId,
3987
+ capability.token0Address,
3988
+ capability.token0Decimals,
3989
+ capability.token0Standard
3990
+ ) || matchesToken(
3991
+ input,
3992
+ capability.token1DeploymentId,
3993
+ capability.token1Address,
3994
+ capability.token1Decimals,
3995
+ capability.token1Standard
3996
+ )) && (matchesToken(
3997
+ output,
3998
+ capability.token0DeploymentId,
3999
+ capability.token0Address,
4000
+ capability.token0Decimals,
4001
+ capability.token0Standard
4002
+ ) || matchesToken(
4003
+ output,
4004
+ capability.token1DeploymentId,
4005
+ capability.token1Address,
4006
+ capability.token1Decimals,
4007
+ capability.token1Standard
4008
+ ));
4009
+ };
4010
+ var DEFAULT_FRESHNESS = Object.freeze({
4011
+ maxBlockAgeSeconds: 120,
4012
+ maxBlockLag: 3,
4013
+ maxClockSkewSeconds: 5
4014
+ });
4015
+ var UINT256_MAX = (1n << 256n) - 1n;
4016
+ var UINT112_MAX = (1n << 112n) - 1n;
4017
+ var UINT32_MAX = (1n << 32n) - 1n;
4018
+ var UINT256_DECIMAL = /^[1-9][0-9]*$/u;
4019
+ var NONNEGATIVE_DECIMAL = /^(0|[1-9][0-9]*)$/u;
4020
+ var HEX_BYTES = /^0x[0-9a-fA-F]*$/u;
4021
+ var HEX_QUANTITY = /^0x(?:0|[1-9a-fA-F][0-9a-fA-F]*)$/u;
4022
+ var EVM_ADDRESS = /^0x[0-9a-f]{40}$/u;
4023
+ var FACTORY_GET_PAIR_SELECTOR = "0xe6a43905";
4024
+ var PAIR_FACTORY_SELECTOR = "0xc45a0155";
4025
+ var PAIR_TOKEN0_SELECTOR = "0x0dfe1681";
4026
+ var PAIR_TOKEN1_SELECTOR = "0xd21220a7";
4027
+ var PAIR_GET_RESERVES_SELECTOR = "0x0902f1ac";
4028
+ function swapFail(code) {
4029
+ throw new SwapQuoteError(code);
4030
+ }
4031
+ var isRecord3 = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
4032
+ var isKnownChain2 = (value) => value === DEX_CHAIN_IDS.ethereum || value === DEX_CHAIN_IDS.solana || value === DEX_CHAIN_IDS.avalancheC;
4033
+ var isOpaqueId = (value) => /^[A-Za-z0-9][A-Za-z0-9._:-]*$/u.test(value);
4034
+ function assertRequestShape(request) {
4035
+ if (!isRecord3(request)) swapFail("SWAP_INVALID_ARGUMENT");
4036
+ const allowed = /* @__PURE__ */ new Set([
4037
+ "chainId",
4038
+ "poolDefinitionId",
4039
+ "inputTokenDeploymentId",
4040
+ "outputTokenDeploymentId",
4041
+ "amountIn",
4042
+ "freshness"
4043
+ ]);
4044
+ if (Object.keys(request).some((key) => !allowed.has(key))) {
4045
+ swapFail("SWAP_INVALID_ARGUMENT");
4046
+ }
4047
+ for (const key of [
4048
+ "chainId",
4049
+ "poolDefinitionId",
4050
+ "inputTokenDeploymentId",
4051
+ "outputTokenDeploymentId",
4052
+ "amountIn"
4053
+ ]) {
4054
+ const value = request[key];
4055
+ if (typeof value !== "string" || value.length === 0 || value.trim() !== value) {
4056
+ swapFail("SWAP_INVALID_ARGUMENT");
4057
+ }
4058
+ }
4059
+ for (const key of [
4060
+ "poolDefinitionId",
4061
+ "inputTokenDeploymentId",
4062
+ "outputTokenDeploymentId"
4063
+ ]) {
4064
+ const value = request[key];
4065
+ if (typeof value !== "string" || !isOpaqueId(value)) {
4066
+ swapFail("SWAP_INVALID_ARGUMENT");
4067
+ }
4068
+ }
4069
+ }
4070
+ var normalizeFreshness = (value) => {
4071
+ if (value === void 0) return DEFAULT_FRESHNESS;
4072
+ if (!isRecord3(value)) swapFail("SWAP_INVALID_ARGUMENT");
4073
+ const keys = [
4074
+ "maxBlockAgeSeconds",
4075
+ "maxBlockLag",
4076
+ "maxClockSkewSeconds"
4077
+ ];
4078
+ if (Object.keys(value).some((key) => !keys.includes(key))) {
4079
+ swapFail("SWAP_INVALID_ARGUMENT");
4080
+ }
4081
+ const ranges = {
4082
+ maxBlockAgeSeconds: [0, 86400],
4083
+ maxBlockLag: [0, 1024],
4084
+ maxClockSkewSeconds: [0, 300]
4085
+ };
4086
+ const result = {
4087
+ maxBlockAgeSeconds: DEFAULT_FRESHNESS.maxBlockAgeSeconds,
4088
+ maxBlockLag: DEFAULT_FRESHNESS.maxBlockLag,
4089
+ maxClockSkewSeconds: DEFAULT_FRESHNESS.maxClockSkewSeconds
4090
+ };
4091
+ for (const key of keys) {
4092
+ const current = Object.hasOwn(value, key) ? value[key] : DEFAULT_FRESHNESS[key];
4093
+ const [minimum, maximum] = ranges[key];
4094
+ if (typeof current !== "number" || !Number.isSafeInteger(current) || current < minimum || current > maximum) {
4095
+ swapFail("SWAP_INVALID_ARGUMENT");
4096
+ }
4097
+ result[key] = current;
4098
+ }
4099
+ return Object.freeze(result);
4100
+ };
4101
+ var parseAmountIn = (value) => {
4102
+ if (!UINT256_DECIMAL.test(value) || value.length > 78) {
4103
+ swapFail("SWAP_INVALID_ARGUMENT");
4104
+ }
4105
+ let parsed;
4106
+ try {
4107
+ parsed = BigInt(value);
4108
+ } catch {
4109
+ swapFail("SWAP_INVALID_ARGUMENT");
4110
+ }
4111
+ if (parsed <= 0n || parsed > UINT256_MAX) {
4112
+ swapFail("SWAP_INVALID_ARGUMENT");
4113
+ }
4114
+ return parsed;
4115
+ };
4116
+ var normalizeQuoteRequest = (request) => {
4117
+ assertRequestShape(request);
4118
+ const freshness = normalizeFreshness(request.freshness);
4119
+ const amountIn = parseAmountIn(request.amountIn);
4120
+ if (!isKnownChain2(request.chainId)) swapFail("SWAP_UNSUPPORTED_CHAIN");
4121
+ const pool = getPoolDefinition(request.poolDefinitionId);
4122
+ if (!pool) swapFail("SWAP_UNKNOWN_POOL");
4123
+ if (pool.chainId !== request.chainId) swapFail("SWAP_CHAIN_MISMATCH");
4124
+ if (pool.status !== "active") swapFail("SWAP_INVALID_POOL_STATE");
4125
+ const dex = getDexDeployment(pool.dexDeploymentId);
4126
+ if (!dex || dex.status !== "active") swapFail("SWAP_INVALID_POOL_STATE");
4127
+ const input = getTokenDeployment(request.inputTokenDeploymentId);
4128
+ if (!input) swapFail("SWAP_UNKNOWN_TOKEN");
4129
+ const output = getTokenDeployment(request.outputTokenDeploymentId);
4130
+ if (!output) swapFail("SWAP_UNKNOWN_TOKEN");
4131
+ if (input.chainId !== request.chainId || output.chainId !== request.chainId) {
4132
+ swapFail("SWAP_CHAIN_MISMATCH");
4133
+ }
4134
+ for (const token of [input, output]) {
4135
+ if (token.status !== "active") swapFail("SWAP_TOKEN_NOT_ACTIVE");
4136
+ }
4137
+ for (const token of [input, output]) {
4138
+ if (token.standard !== "erc20" && token.standard !== "spl-token") {
4139
+ swapFail("SWAP_UNSUPPORTED_TOKEN_STANDARD");
4140
+ }
4141
+ }
4142
+ if (request.inputTokenDeploymentId === request.outputTokenDeploymentId) {
4143
+ swapFail("SWAP_POOL_TOKEN_MISMATCH");
4144
+ }
4145
+ const wanted = [request.inputTokenDeploymentId, request.outputTokenDeploymentId].sort().join("\0");
4146
+ const actual = [pool.token0DeploymentId, pool.token1DeploymentId].sort().join("\0");
4147
+ if (wanted !== actual) swapFail("SWAP_POOL_TOKEN_MISMATCH");
4148
+ if (pool.adapter.kind !== SUPPORTED_QUOTE_ADAPTER || dex.adapterKind !== SUPPORTED_QUOTE_ADAPTER) {
4149
+ swapFail("SWAP_UNSUPPORTED_ADAPTER");
4150
+ }
4151
+ if (input.standard !== "erc20" || output.standard !== "erc20") {
4152
+ swapFail("SWAP_UNSUPPORTED_TOKEN_STANDARD");
4153
+ }
4154
+ if (!matchesSupportedQuoteCapability(pool, dex, input, output)) {
4155
+ swapFail("SWAP_UNSUPPORTED_TOKEN");
4156
+ }
4157
+ const snapshot = Object.freeze({
4158
+ chainId: request.chainId,
4159
+ poolDefinitionId: request.poolDefinitionId,
4160
+ inputTokenDeploymentId: request.inputTokenDeploymentId,
4161
+ outputTokenDeploymentId: request.outputTokenDeploymentId,
4162
+ amountIn: request.amountIn,
4163
+ freshness
4164
+ });
4165
+ return {
4166
+ request: snapshot,
4167
+ amountIn,
4168
+ pool,
4169
+ dex,
4170
+ input,
4171
+ output,
4172
+ freshness
4173
+ };
4174
+ };
4175
+ var ensureUint256 = (value, code = "SWAP_ARITHMETIC") => {
4176
+ if (value < 0n || value > UINT256_MAX) swapFail(code);
4177
+ return value;
4178
+ };
4179
+ var parseHexQuantity = (value, code = "SWAP_INVALID_POOL_STATE") => {
4180
+ if (typeof value !== "string") swapFail(code);
4181
+ if (value.length > 66 || !HEX_QUANTITY.test(value)) swapFail(code);
4182
+ let parsed;
4183
+ try {
4184
+ parsed = BigInt(value);
4185
+ } catch {
4186
+ swapFail(code);
4187
+ }
4188
+ return ensureUint256(parsed, code);
4189
+ };
4190
+ var parseHexBytes = (value, expectedBytes, code = "SWAP_INVALID_POOL_STATE") => {
4191
+ if (typeof value !== "string") swapFail(code);
4192
+ if (!HEX_BYTES.test(value) || value.length % 2 !== 0 || expectedBytes !== void 0 && value.length !== expectedBytes * 2 + 2) swapFail(code);
4193
+ return value.toLowerCase();
4194
+ };
4195
+ var parseDecimalQuantity = (value, code = "SWAP_INVALID_POOL_STATE") => {
4196
+ if (typeof value !== "string") swapFail(code);
4197
+ if (value.length > 78 || !NONNEGATIVE_DECIMAL.test(value)) swapFail(code);
4198
+ let parsed;
4199
+ try {
4200
+ parsed = BigInt(value);
4201
+ } catch {
4202
+ swapFail(code);
4203
+ }
4204
+ return ensureUint256(parsed, code);
4205
+ };
4206
+ var addressWord = (value) => {
4207
+ const bytes = parseHexBytes(value, 32);
4208
+ const word = bytes.slice(2);
4209
+ if (!/^0{24}[0-9a-f]{40}$/u.test(word)) {
4210
+ swapFail("SWAP_INVALID_POOL_STATE");
4211
+ }
4212
+ return `0x${word.slice(24)}`;
4213
+ };
4214
+ var uintWord = (value, maximum = UINT256_MAX) => {
4215
+ const bytes = parseHexBytes(value, 32);
4216
+ const parsed = BigInt(`0x${bytes.slice(2)}`);
4217
+ if (parsed > maximum) swapFail("SWAP_INVALID_POOL_STATE");
4218
+ return parsed;
4219
+ };
4220
+ var reserveWords = (value) => {
4221
+ const bytes = parseHexBytes(value, 96);
4222
+ const payload = bytes.slice(2);
4223
+ const reserve0 = uintWord(`0x${payload.slice(0, 64)}`, UINT112_MAX);
4224
+ const reserve1 = uintWord(`0x${payload.slice(64, 128)}`, UINT112_MAX);
4225
+ uintWord(`0x${payload.slice(128, 192)}`, UINT32_MAX);
4226
+ return { reserve0, reserve1 };
4227
+ };
4228
+ var blockHeader = (value) => {
4229
+ if (!isRecord3(value)) swapFail("SWAP_STATE_STALE");
4230
+ return {
4231
+ number: parseHexQuantity(value.number, "SWAP_STATE_STALE"),
4232
+ hash: parseHexBytes(value.hash, 32, "SWAP_STATE_STALE"),
4233
+ timestamp: parseHexQuantity(value.timestamp, "SWAP_STATE_STALE")
4234
+ };
4235
+ };
4236
+ var assertChainIdResponse = (value, chainId) => {
4237
+ const network = parseHexQuantity(value, "SWAP_CHAIN_MISMATCH");
4238
+ const expected = chainId === DEX_CHAIN_IDS.ethereum ? 1n : chainId === DEX_CHAIN_IDS.avalancheC ? 43114n : null;
4239
+ if (expected === null || network !== expected) swapFail("SWAP_CHAIN_MISMATCH");
4240
+ };
4241
+ var rpcSelector = (hash) => ({
4242
+ blockHash: hash,
4243
+ requireCanonical: true
4244
+ });
4245
+ var abiCall = (to, data) => ({
4246
+ to,
4247
+ data
4248
+ });
4249
+ var encodeAddressArgument = (address) => {
4250
+ if (!EVM_ADDRESS.test(address)) swapFail("SWAP_INVALID_POOL_STATE");
4251
+ return address.slice(2).padStart(64, "0");
4252
+ };
4253
+ var rpcRequest = async (transport, method, params, options) => {
4254
+ if (options?.signal?.aborted) {
4255
+ if (options.signal.reason !== void 0) throw options.signal.reason;
4256
+ throw new DOMException("The operation was aborted", "AbortError");
4257
+ }
4258
+ return transport.request(method, params, options);
4259
+ };
4260
+ var currentClockSeconds = (clock) => {
4261
+ const value = clock === void 0 ? Math.floor(Date.now() / 1e3) : clock();
4262
+ if (!Number.isSafeInteger(value)) swapFail("SWAP_INVALID_ARGUMENT");
4263
+ return value;
4264
+ };
4265
+ var assertFreshness = (state, freshness, clock) => {
4266
+ const now = BigInt(currentClockSeconds(clock));
4267
+ const initialAge = now - state.initial.timestamp;
4268
+ if (initialAge < -BigInt(freshness.maxClockSkewSeconds) || initialAge > BigInt(freshness.maxBlockAgeSeconds)) {
4269
+ swapFail("SWAP_STATE_STALE");
4270
+ }
4271
+ const latestAge = now - state.latestAfterReads.timestamp;
4272
+ if (latestAge < -BigInt(freshness.maxClockSkewSeconds) || latestAge > BigInt(freshness.maxBlockAgeSeconds)) {
4273
+ swapFail("SWAP_STATE_STALE");
4274
+ }
4275
+ if (state.latestAfterReads.number < state.initial.number || state.latestAfterReads.number - state.initial.number > BigInt(freshness.maxBlockLag)) {
4276
+ swapFail("SWAP_STATE_STALE");
4277
+ }
4278
+ if (state.latestAfterReads.number === state.initial.number && state.latestAfterReads.hash !== state.initial.hash) {
4279
+ swapFail("SWAP_STATE_STALE");
4280
+ }
4281
+ if (state.latestAfterReads.number > state.initial.number && state.latestAfterReads.timestamp < state.initial.timestamp) {
4282
+ swapFail("SWAP_STATE_STALE");
4283
+ }
4284
+ if (state.latestAfterReads.hash === state.initial.hash && state.latestAfterReads.number === state.initial.number && state.latestAfterReads.timestamp !== state.initial.timestamp) {
4285
+ swapFail("SWAP_STATE_STALE");
4286
+ }
4287
+ };
4288
+ var readEvmState = async (transport, normalized, clock, options) => {
4289
+ const { pool, dex } = normalized;
4290
+ const chainId = await rpcRequest(transport, "eth_chainId", [], options);
4291
+ assertChainIdResponse(chainId, pool.chainId);
4292
+ const initial = blockHeader(
4293
+ await rpcRequest(transport, "eth_getBlockByNumber", ["latest", false], options)
4294
+ );
4295
+ const selector = rpcSelector(initial.hash);
4296
+ const factoryCodeRaw = await rpcRequest(transport, "eth_getCode", [
4297
+ dex.programAddress,
4298
+ selector
4299
+ ], options);
4300
+ const poolCodeRaw = await rpcRequest(transport, "eth_getCode", [
4301
+ pool.address,
4302
+ selector
4303
+ ], options);
4304
+ const token0 = getTokenDeployment(pool.token0DeploymentId);
4305
+ const token1 = getTokenDeployment(pool.token1DeploymentId);
4306
+ const token0Address = token0?.address;
4307
+ const token1Address = token1?.address;
4308
+ if (typeof token0Address !== "string" || typeof token1Address !== "string") {
4309
+ swapFail("SWAP_INVALID_POOL_STATE");
4310
+ }
4311
+ const pairCallData = `${FACTORY_GET_PAIR_SELECTOR}${encodeAddressArgument(
4312
+ token0Address
4313
+ )}${encodeAddressArgument(token1Address)}`;
4314
+ const factoryPairRaw = await rpcRequest(transport, "eth_call", [
4315
+ abiCall(dex.programAddress, pairCallData),
4316
+ selector
4317
+ ], options);
4318
+ const pairFactoryRaw = await rpcRequest(transport, "eth_call", [
4319
+ abiCall(pool.address, PAIR_FACTORY_SELECTOR),
4320
+ selector
4321
+ ], options);
4322
+ const pairToken0Raw = await rpcRequest(transport, "eth_call", [
4323
+ abiCall(pool.address, PAIR_TOKEN0_SELECTOR),
4324
+ selector
4325
+ ], options);
4326
+ const pairToken1Raw = await rpcRequest(transport, "eth_call", [
4327
+ abiCall(pool.address, PAIR_TOKEN1_SELECTOR),
4328
+ selector
4329
+ ], options);
4330
+ const reservesRaw = await rpcRequest(transport, "eth_call", [
4331
+ abiCall(pool.address, PAIR_GET_RESERVES_SELECTOR),
4332
+ selector
4333
+ ], options);
4334
+ const latestAfterReads = blockHeader(
4335
+ await rpcRequest(transport, "eth_getBlockByNumber", ["latest", false], options)
4336
+ );
4337
+ const reread = blockHeader(
4338
+ await rpcRequest(transport, "eth_getBlockByNumber", [
4339
+ `0x${initial.number.toString(16)}`,
4340
+ false
4341
+ ], options)
4342
+ );
4343
+ if (reread.number !== initial.number || reread.hash !== initial.hash || reread.timestamp !== initial.timestamp) {
4344
+ swapFail("SWAP_STATE_STALE");
4345
+ }
4346
+ assertFreshness({ initial, latestAfterReads }, normalized.freshness, clock);
4347
+ const factoryCode = parseHexBytes(factoryCodeRaw);
4348
+ if (factoryCode.length <= 2) swapFail("SWAP_PROGRAM_MISMATCH");
4349
+ const poolCode = parseHexBytes(poolCodeRaw);
4350
+ if (poolCode.length <= 2) swapFail("SWAP_INVALID_POOL_STATE");
4351
+ const factoryPair = addressWord(factoryPairRaw);
4352
+ if (factoryPair !== pool.address) swapFail("SWAP_PROGRAM_MISMATCH");
4353
+ const pairFactory = addressWord(pairFactoryRaw);
4354
+ if (pairFactory !== dex.programAddress) swapFail("SWAP_PROGRAM_MISMATCH");
4355
+ const pairToken0 = addressWord(pairToken0Raw);
4356
+ const pairToken1 = addressWord(pairToken1Raw);
4357
+ if (pairToken0 !== token0Address || pairToken1 !== token1Address) {
4358
+ swapFail("SWAP_POOL_TOKEN_MISMATCH");
4359
+ }
4360
+ const reserves = reserveWords(reservesRaw);
4361
+ return { initial, latestAfterReads, reserves };
4362
+ };
4363
+ var calculateQuote = (normalized, state) => {
4364
+ const feeNumerator = parseDecimalQuantity(
4365
+ normalized.pool.adapter.feeNumerator,
4366
+ "SWAP_ARITHMETIC"
4367
+ );
4368
+ const feeDenominator = parseDecimalQuantity(
4369
+ normalized.pool.adapter.feeDenominator,
4370
+ "SWAP_ARITHMETIC"
4371
+ );
4372
+ if (feeDenominator <= feeNumerator) swapFail("SWAP_ARITHMETIC");
4373
+ const token0 = getTokenDeployment(normalized.pool.token0DeploymentId);
4374
+ if (!token0?.address || !normalized.input.address || !normalized.output.address) {
4375
+ swapFail("SWAP_INVALID_POOL_STATE");
4376
+ }
4377
+ const inputIsToken0 = normalized.input.address.toLowerCase() === token0.address;
4378
+ const reserveIn = inputIsToken0 ? state.reserves.reserve0 : state.reserves.reserve1;
4379
+ const reserveOut = inputIsToken0 ? state.reserves.reserve1 : state.reserves.reserve0;
4380
+ if (reserveIn <= 0n || reserveOut <= 0n) swapFail("SWAP_INSUFFICIENT_LIQUIDITY");
4381
+ const adjusted = ensureUint256(
4382
+ normalized.amountIn * (feeDenominator - feeNumerator)
4383
+ );
4384
+ const denominator = ensureUint256(reserveIn * feeDenominator + adjusted);
4385
+ if (denominator <= 0n) swapFail("SWAP_ARITHMETIC");
4386
+ const numerator = ensureUint256(adjusted * reserveOut);
4387
+ const amountOut = numerator / denominator;
4388
+ ensureUint256(amountOut);
4389
+ if (amountOut <= 0n || amountOut > reserveOut) {
4390
+ swapFail("SWAP_INSUFFICIENT_LIQUIDITY");
4391
+ }
4392
+ return { amountOut, feeNumerator, feeDenominator };
4393
+ };
4394
+ var quoteResult = (normalized, state, result) => {
4395
+ const output = {
4396
+ quoteKind: "exact-input",
4397
+ chainId: normalized.request.chainId,
4398
+ poolDefinitionId: normalized.pool.poolDefinitionId,
4399
+ dexDeploymentId: normalized.pool.dexDeploymentId,
4400
+ adapterKind: normalized.pool.adapter.kind,
4401
+ inputTokenDeploymentId: normalized.request.inputTokenDeploymentId,
4402
+ outputTokenDeploymentId: normalized.request.outputTokenDeploymentId,
4403
+ amountIn: normalized.amountIn.toString(10),
4404
+ amountOut: result.amountOut.toString(10),
4405
+ fee: {
4406
+ numerator: result.feeNumerator.toString(10),
4407
+ denominator: result.feeDenominator.toString(10)
4408
+ },
4409
+ snapshot: {
4410
+ kind: "evm-block",
4411
+ blockNumber: state.initial.number.toString(10),
4412
+ blockHash: state.initial.hash,
4413
+ blockTimestamp: state.initial.timestamp.toString(10)
4414
+ },
4415
+ tokenCatalogDigest: TOKEN_CATALOG_CONTENT_DIGEST,
4416
+ dexCatalogDigest: DEX_CATALOG_CONTENT_DIGEST
4417
+ };
4418
+ return deepFreeze5(output);
4419
+ };
4420
+ var quoteExactInputWithTransports = async (request, options, requestOptions) => {
4421
+ const normalized = normalizeQuoteRequest(request);
4422
+ if (normalized.pool.adapter.kind !== SUPPORTED_QUOTE_ADAPTER) {
4423
+ swapFail("SWAP_UNSUPPORTED_ADAPTER");
4424
+ }
4425
+ const transport = normalized.pool.chainId === DEX_CHAIN_IDS.ethereum ? options.ethereum : normalized.pool.chainId === DEX_CHAIN_IDS.avalancheC ? options.avalanche : void 0;
4426
+ if (!transport) swapFail("SWAP_UNSUPPORTED_ADAPTER");
4427
+ const selectedTransport = transport;
4428
+ const state = await readEvmState(
4429
+ selectedTransport,
4430
+ normalized,
4431
+ options.clock,
4432
+ requestOptions
4433
+ );
4434
+ assertFreshness(state, normalized.freshness, options.clock);
4435
+ return quoteResult(normalized, state, calculateQuote(normalized, state));
4436
+ };
4437
+ var deepFreeze5 = (value) => {
4438
+ if (value && typeof value === "object" && !Object.isFrozen(value)) {
4439
+ Object.freeze(value);
4440
+ for (const child of Object.values(value)) {
4441
+ deepFreeze5(child);
4442
+ }
4443
+ }
4444
+ return value;
4445
+ };
4446
+ var createSwapClient = (options) => Object.freeze({
4447
+ quoteExactInput: (request, requestOptions) => quoteExactInputWithTransports(request, options, requestOptions)
4448
+ });
4449
+
1148
4450
  // src/transport/http.ts
1149
4451
  var controlledSignal2 = (timeoutMs, external) => {
1150
4452
  const controller = new AbortController();
@@ -1410,6 +4712,10 @@ var createErpcClient = (config) => {
1410
4712
  ...sharedTransport,
1411
4713
  endpoint: endpointWithPath(resolved.avalancheEndpoint, "/ava")
1412
4714
  });
4715
+ const avalancheIndexTransport = (path) => new HttpJsonRpcTransport({
4716
+ ...sharedTransport,
4717
+ endpoint: endpointWithPath(resolved.avalancheEndpoint, path)
4718
+ });
1413
4719
  const solanaWebSocket = new WebSocketJsonRpcTransport({
1414
4720
  endpoint: websocketUrl(resolved.endpoint, resolved.apiKey),
1415
4721
  timeoutMs: resolved.timeoutMs,
@@ -1450,15 +4756,25 @@ var createErpcClient = (config) => {
1450
4756
  subscriptions: new EthereumSubscriptions(ethereumWebSocket)
1451
4757
  };
1452
4758
  const avalanche = {
1453
- ...createEthereumClient(avalancheTransport),
4759
+ ...createAvalancheClient(avalancheTransport, {
4760
+ cChainBlocks: avalancheIndexTransport("/ava/ext/index/C/block"),
4761
+ pChainBlocks: avalancheIndexTransport("/ava/ext/index/P/block"),
4762
+ xChainBlocks: avalancheIndexTransport("/ava/ext/index/X/block"),
4763
+ xChainTransactions: avalancheIndexTransport("/ava/ext/index/X/tx")
4764
+ }),
1454
4765
  subscriptions: new EthereumSubscriptions(avalancheWebSocket)
1455
4766
  };
4767
+ const swap = createSwapClient({
4768
+ ethereum: ethereumTransport,
4769
+ avalanche: avalancheTransport
4770
+ });
1456
4771
  return {
1457
4772
  solana,
1458
4773
  ethereum,
1459
4774
  avalanche,
1460
4775
  price: new PriceClient(priceTransport),
1461
4776
  account: new AccountClient(accountTransport),
4777
+ swap,
1462
4778
  usage: new UsageClient(userTransport),
1463
4779
  close: () => {
1464
4780
  solana.subscriptions.close();
@@ -1684,6 +5000,12 @@ var createErpcCloudClient = (config) => {
1684
5000
  };
1685
5001
  };
1686
5002
 
5003
+ exports.AVALANCHE_AVAX_METHODS = AVALANCHE_AVAX_METHODS;
5004
+ exports.AVALANCHE_INDEX_METHODS = AVALANCHE_INDEX_METHODS;
5005
+ exports.AVALANCHE_INFO_METHODS = AVALANCHE_INFO_METHODS;
5006
+ exports.AVALANCHE_PROPOSER_VM_METHODS = AVALANCHE_PROPOSER_VM_METHODS;
5007
+ exports.AVALANCHE_P_CHAIN_METHODS = AVALANCHE_P_CHAIN_METHODS;
5008
+ exports.AVALANCHE_X_CHAIN_METHODS = AVALANCHE_X_CHAIN_METHODS;
1687
5009
  exports.AccountClient = AccountClient;
1688
5010
  exports.CloudCatalogClient = CloudCatalogClient;
1689
5011
  exports.CloudCreditClient = CloudCreditClient;
@@ -1693,6 +5015,12 @@ exports.DEFAULT_AVALANCHE_ENDPOINT = DEFAULT_AVALANCHE_ENDPOINT;
1693
5015
  exports.DEFAULT_ENDPOINT = DEFAULT_ENDPOINT;
1694
5016
  exports.DEFAULT_TIMEOUT_MS = DEFAULT_TIMEOUT_MS;
1695
5017
  exports.DEFAULT_USER_ENDPOINT = DEFAULT_USER_ENDPOINT;
5018
+ exports.DEX_ALIASES = DEX_ALIASES;
5019
+ exports.DEX_CATALOG_AS_OF_DATE = DEX_CATALOG_AS_OF_DATE;
5020
+ exports.DEX_CATALOG_CONTENT_DIGEST = DEX_CATALOG_CONTENT_DIGEST;
5021
+ exports.DEX_CATALOG_VERSION = DEX_CATALOG_VERSION;
5022
+ exports.DEX_CHAIN_IDS = DEX_CHAIN_IDS;
5023
+ exports.DEX_DEPLOYMENTS = DEX_DEPLOYMENTS;
1696
5024
  exports.ETHEREUM_RPC_METHODS = ETHEREUM_RPC_METHODS;
1697
5025
  exports.ETHEREUM_SUBSCRIPTION_METHODS = ETHEREUM_SUBSCRIPTION_METHODS;
1698
5026
  exports.ErpcAbortedError = ErpcAbortedError;
@@ -1705,6 +5033,8 @@ exports.ErpcJsonRpcError = ErpcJsonRpcError;
1705
5033
  exports.ErpcTimeoutError = ErpcTimeoutError;
1706
5034
  exports.ErpcTransportError = ErpcTransportError;
1707
5035
  exports.EthereumSubscriptions = EthereumSubscriptions;
5036
+ exports.NATIVE_WRAP_DEFINITIONS = NATIVE_WRAP_DEFINITIONS;
5037
+ exports.POOL_DEFINITIONS = POOL_DEFINITIONS;
1708
5038
  exports.PendingRpcBatchRequest = PendingRpcBatchRequest;
1709
5039
  exports.PendingRpcRequest = PendingRpcRequest;
1710
5040
  exports.PriceClient = PriceClient;
@@ -1715,9 +5045,38 @@ exports.SOLANA_ENHANCED_SUBSCRIPTION_METHODS = SOLANA_ENHANCED_SUBSCRIPTION_METH
1715
5045
  exports.SOLANA_HISTORY_METHODS = SOLANA_HISTORY_METHODS;
1716
5046
  exports.SOLANA_LEADER_METHODS = SOLANA_LEADER_METHODS;
1717
5047
  exports.SOLANA_RPC_METHODS = SOLANA_RPC_METHODS;
5048
+ exports.SWAP_QUOTE_ERROR_MESSAGES = SWAP_QUOTE_ERROR_MESSAGES;
1718
5049
  exports.SolanaSubscriptions = SolanaSubscriptions;
5050
+ exports.SwapQuoteError = SwapQuoteError;
5051
+ exports.TOKEN_ALIASES = TOKEN_ALIASES;
5052
+ exports.TOKEN_ASSETS = TOKEN_ASSETS;
5053
+ exports.TOKEN_CATALOG_AS_OF_DATE = TOKEN_CATALOG_AS_OF_DATE;
5054
+ exports.TOKEN_CATALOG_CONTENT_DIGEST = TOKEN_CATALOG_CONTENT_DIGEST;
5055
+ exports.TOKEN_CATALOG_VERSION = TOKEN_CATALOG_VERSION;
5056
+ exports.TOKEN_CHAIN_IDS = TOKEN_CHAIN_IDS;
5057
+ exports.TOKEN_DEPLOYMENTS = TOKEN_DEPLOYMENTS;
5058
+ exports.TOKEN_RANKINGS = TOKEN_RANKINGS;
5059
+ exports.TOKEN_RANKINGS_BY_CHAIN = TOKEN_RANKINGS_BY_CHAIN;
5060
+ exports.TOKEN_RANKINGS_CONTENT_DIGEST = TOKEN_RANKINGS_CONTENT_DIGEST;
5061
+ exports.TOKEN_RANKINGS_METADATA = TOKEN_RANKINGS_METADATA;
1719
5062
  exports.UsageClient = UsageClient;
1720
5063
  exports.createErpcClient = createErpcClient;
1721
5064
  exports.createErpcCloudClient = createErpcCloudClient;
5065
+ exports.dexes = dexes;
5066
+ exports.findPoolDefinitionByAddress = findPoolDefinitionByAddress;
5067
+ exports.findPoolDefinitionsByPair = findPoolDefinitionsByPair;
5068
+ exports.findTokenDeploymentByAddress = findTokenDeploymentByAddress;
5069
+ exports.findTokenDeploymentsBySymbol = findTokenDeploymentsBySymbol;
5070
+ exports.getDexDeployment = getDexDeployment;
5071
+ exports.getNativeTokenDeployment = getNativeTokenDeployment;
5072
+ exports.getNativeWrapDefinition = getNativeWrapDefinition;
5073
+ exports.getPoolDefinition = getPoolDefinition;
5074
+ exports.getTokenAsset = getTokenAsset;
5075
+ exports.getTokenDeployment = getTokenDeployment;
5076
+ exports.listPoolDefinitions = listPoolDefinitions;
5077
+ exports.listTokenDeployments = listTokenDeployments;
5078
+ exports.listTokenRankings = listTokenRankings;
5079
+ exports.pools = pools;
5080
+ exports.tokens = tokens;
1722
5081
  //# sourceMappingURL=index.cjs.map
1723
5082
  //# sourceMappingURL=index.cjs.map